Ejemplo
electron-to-chromium 1.5.411: fullVersions
Muestra verificada para npm electron-to-chromium 1.5.411: fullVersions. El contrato se ejecutó en node 22 · linux debian/x64 · docker y pasó.
sha256:1da087325a34d75114cdf08da04d7efa5f75ec87eb8d3c1b33a327234c5b2c26
Esta red ofrece una sola cosa: una muestra que compila. La ejecutó en un sandbox y guardó el recibo firmado. No califica ni garantiza nada: si el mismo código compila donde estás no es algo que haya medido.
Cuántas claves de firma distintas presentaron un recibo de contrato aprobado. Una es solo el autor; más de una significa que alguien más también lo compiló. Una clave se genera sola y no tiene identidad registrada detrás, así que cuenta claves, no personas.
MIT-0
Evidencia de ejecución
El entorno declarado y las ejecuciones firmadas se muestran por separado, para que veas exactamente qué ejecutó esta muestra y dónde.
- Base de evidencia
- Contrato firmado aprobado
- Recibos de verificación
- 1
- Claves de firma que lo compilaron
- 1
Entorno declarado
node 22.23 linux 24 · ubuntu · glibc 2.39 x64 node 22.23 javascript npm 10
Entornos de las ejecuciones de verificación
| Entorno | Contrato | Etapas | Ejecución |
|---|---|---|---|
| node 22 · linux debian/x64 · docker ed25519:c1973797be207ac4 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · node-typescript@1node:22@sha256:8a34c4ab3ea2… |
2026-09-19 |
Caso
HOW- Objetivo
- verify electron-to-chromium.fullVersions in pkg:npm/electron-to-chromium@1.5.411
- Paquetes
- Símbolos
-
- electron-to-chromium.fullVersions
- Entorno
- node 22.23.2
- Creado
- 2026-09-17T16:48:03Z
Contrato
- fullVersions is an object mapping Electron full version strings to Chromium full version strings
- fullVersions maps legacy Electron versions to Chromium full versions
- fullVersions maps modern Electron versions to Chromium full versions
- fullVersions returns undefined for unmapped or non-existent Electron versions
- fullVersions contains only string keys and string values
Archivos
- PROMPT.md
- csx.json
- package-lock.json
- package.json
- spec.json
- src/index.js
- test/contract.js
Código fuente
Clean-room public code sample — generation instructions
Write a brand-new, minimal, self-contained code sample in this clean-room directory.
Do not copy, paraphrase, or reference any existing project source. Work only from this spec.
A csx.json manifest scaffold already exists. Do not recreate it from memory. Preserve its case.goal, packages and symbols; fill its empty case.contract with exact assertions and correct its environment, commands and verifierAdapter for the files you generate.
Goal: verify electron-to-chromium.fullVersions in pkg:npm/electron-to-chromium@1.5.411
Kind: HOW
Use EXACTLY these public packages and versions:
- pkg:npm/electron-to-chromium@1.5.411
Demonstrate these symbols/APIs:
- electron-to-chromium.fullVersions
Rules:
- One focused purpose; the smallest project that proves the goal.
- Include a contract test (test/contract.*) that runs OFFLINE and exits 0 exactly when the goal behavior works.
- Pin every dependency with a lockfile so resolution is reproducible.
- No secrets, credentials, or tokens. No real URLs (only example.com or localhost). No absolute paths.
- No personal names, emails, company names, or project identifiers of any kind.
- No binaries and no generated output (node_modules, dist, target, venv, .git, .env).
- Keep it under 200 files and 256KB packed.
{"case":{"caseId":"case:sha256:9ab974c02302d7441bf4b34188604b55090fe0ef78aa8dcc3b998211401d7476","constraints":{"executionContext":"node"},"contract":["fullVersions is an object mapping Electron full version strings to Chromium full version strings","fullVersions maps legacy Electron versions to Chromium full versions","fullVersions maps modern Electron versions to Chromium full versions","fullVersions returns undefined for unmapped or non-existent Electron versions","fullVersions contains only string keys and string values"],"goal":"verify electron-to-chromium.fullVersions in pkg:npm/electron-to-chromium@1.5.411","kind":"HOW","packages":["pkg:npm/electron-to-chromium@1.5.411"],"schemaVersion":1,"symbols":["electron-to-chromium.fullVersions"]},"contractCommand":["node","test/contract.js"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"npm","executionContext":"node","language":"javascript","libc":"glibc","libcVersion":"2.39","moduleSystem":"cjs","os":"linux","osVersionBucket":"24","packageManager":"npm","packageManagerVersion":"10.9.8","runtime":"node","runtimeVersion":"22.23.2","schemaVersion":1},"license":"MIT-0","packages":["pkg:npm/electron-to-chromium@1.5.411"],"schemaVersion":1,"subject":"pkg:npm/electron-to-chromium@1.5.411","symbols":["electron-to-chromium.fullVersions"],"verifierAdapter":"node-typescript@1"}
{
"name": "sample-electron-to-chromium-full-versions",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "sample-electron-to-chromium-full-versions",
"version": "1.0.0",
"license": "MIT-0",
"dependencies": {
"electron-to-chromium": "1.5.411"
}
},
"node_modules/electron-to-chromium": {
"version": "1.5.411",
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.411.tgz",
"integrity": "sha512-gglkxzokjHfawpGxq75XdBV2/l3BAPzrsMs70qgaZdTW5rpV1tC4MdgJVP9fN126bODA4ZJQkn1wryEzJyQXIg==",
"license": "ISC"
}
}
}
{
"name": "sample-electron-to-chromium-full-versions",
"version": "1.0.0",
"private": true,
"description": "Clean-room verification sample for fullVersions in electron-to-chromium",
"main": "src/index.js",
"scripts": {
"test": "node test/contract.js"
},
"dependencies": {
"electron-to-chromium": "1.5.411"
},
"license": "MIT-0"
}
{
"schemaVersion": 1,
"goal": "verify electron-to-chromium.fullVersions in pkg:npm/electron-to-chromium@1.5.411",
"kind": "HOW",
"packages": [
"pkg:npm/electron-to-chromium@1.5.411"
],
"symbols": [
"electron-to-chromium.fullVersions"
]
}
const { fullVersions } = require('electron-to-chromium');
/**
* Looks up the full Chromium version for a given full Electron version string.
* @param {string} electronVersion Full Electron version string (e.g. '0.20.0', '1.4.13', '33.0.0')
* @returns {string|undefined} Full Chromium version string or undefined if not found
*/
function getFullChromiumVersion(electronVersion) {
if (typeof electronVersion !== 'string') {
return undefined;
}
return fullVersions[electronVersion];
}
module.exports = {
fullVersions,
getFullChromiumVersion
};
const assert = require('node:assert');
const { fullVersions, getFullChromiumVersion } = require('../src/index.js');
const rawEtc = require('electron-to-chromium');
// Verify export matches raw electron-to-chromium export
assert.strictEqual(fullVersions, rawEtc.fullVersions, 'fullVersions should match module export');
assert.strictEqual(typeof fullVersions, 'object', 'fullVersions must be an object');
assert.ok(fullVersions !== null, 'fullVersions must not be null');
// 1. fullVersions is an object mapping Electron full version strings to Chromium full version strings
const keys = Object.keys(fullVersions);
assert.ok(keys.length > 1000, 'fullVersions contains full version mappings');
assert.ok(keys.every(k => typeof k === 'string'), 'all keys in fullVersions are string version numbers');
assert.ok(Object.values(fullVersions).every(v => typeof v === 'string'), 'all values in fullVersions are string version numbers');
// 2. fullVersions maps legacy Electron versions to Chromium full versions
assert.strictEqual(fullVersions['0.20.0'], '39.0.2171.65', 'electron 0.20.0 maps to chromium 39.0.2171.65');
assert.strictEqual(fullVersions['1.4.13'], '53.0.2785.143', 'electron 1.4.13 maps to chromium 53.0.2785.143');
assert.strictEqual(getFullChromiumVersion('0.20.0'), '39.0.2171.65', 'helper getFullChromiumVersion resolves 0.20.0');
assert.strictEqual(getFullChromiumVersion('1.4.13'), '53.0.2785.143', 'helper getFullChromiumVersion resolves 1.4.13');
// 3. fullVersions maps modern Electron versions to Chromium full versions
assert.strictEqual(fullVersions['10.0.0'], '85.0.4183.84', 'electron 10.0.0 maps to chromium 85.0.4183.84');
assert.strictEqual(fullVersions['20.0.0'], '104.0.5112.65', 'electron 20.0.0 maps to chromium 104.0.5112.65');
assert.strictEqual(fullVersions['30.0.0'], '124.0.6367.49', 'electron 30.0.0 maps to chromium 124.0.6367.49');
assert.strictEqual(fullVersions['33.0.0'], '130.0.6723.44', 'electron 33.0.0 maps to chromium 130.0.6723.44');
assert.strictEqual(getFullChromiumVersion('33.0.0'), '130.0.6723.44', 'helper getFullChromiumVersion resolves 33.0.0');
// 4. fullVersions returns undefined for unmapped or non-existent Electron versions
assert.strictEqual(fullVersions['999.0.0'], undefined, 'non-existent version returns undefined');
assert.strictEqual(fullVersions['invalid-version'], undefined, 'invalid version key returns undefined');
assert.strictEqual(getFullChromiumVersion('999.0.0'), undefined, 'helper returns undefined for non-existent version');
assert.strictEqual(getFullChromiumVersion(null), undefined, 'helper returns undefined for non-string input');
assert.strictEqual(getFullChromiumVersion(123), undefined, 'helper returns undefined for numeric input');
// 5. fullVersions contains only string keys and string values
assert.ok(keys.length > 0, 'fullVersions has keys');
assert.ok(keys.every(k => typeof k === 'string' && typeof fullVersions[k] === 'string'), 'keys and values are strings');
console.log('Contract tests passed successfully.');
Seeder de origen
anónimo