Beispiel
@babel/helpers 7.29.7
Verifiziertes Beispiel für npm @babel/helpers 7.29.7. Der Vertrag lief auf node 22 · linux alpine/x64 · docker und bestand: listAllHelpers returns an array…
sha256:3c26d44c2e0a6ae62bfd2b0a2f1e936eb923d9c0a099ea64072aa53c20bc5e9a
Dieses Netzwerk bietet eine Sache: ein Sample, das baut. Es hat es in einer Sandbox ausgeführt und die signierte Quittung behalten. Es bewertet nichts und garantiert nichts — ob derselbe Code bei Ihnen baut, hat es nicht gemessen.
Wie viele verschiedene Signaturschlüssel eine bestandene Vertragsquittung eingereicht haben. Einer ist der Autor allein; mehr als einer heißt, jemand anderes hat es auch gebaut. Ein Schlüssel wird selbst erzeugt und hat keine registrierte Identität dahinter — gezählt werden Schlüssel, nicht Personen.
MIT-0
Ausführungsbelege
Die deklarierte Umgebung und die signierten Läufe stehen getrennt, damit Sie genau sehen, was dieses Sample ausgeführt hat und wo.
- Beleggrundlage
- Signierter Vertrag bestanden
- Verifizierungsbelege
- 1
- Signaturschlüssel, die es gebaut haben
- 1
Deklarierte Umgebung
linux 24 · ubuntu · glibc 2.39 x64 npm
Umgebungen der Verifizierungsläufe
| Umgebung | Contract | Stufen | Lauf |
|---|---|---|---|
| node 22 · linux alpine/x64 · docker ed25519:c1973797be207ac4 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · node-typescript@1node:22-alpine@sha256:c610fcdfb1d5… |
2026-08-23 |
Fall
HOW- Ziel
- verify pkg:npm/%40babel/helpers@7.29.7
- Pakete
- Erstellt
- 2026-08-23T06:36:39Z
Contract
- listAllHelpers returns an array of runtime helper names including typeof, classCallCheck, and wrapRegExp
- hasHelper checks if a helper is registered in @babel/helpers list
- getHelperAst retrieves the AST node statements and globals for a helper declaration
- getHelperMinVersion returns the minimum Babel runtime version for a helper
- getHelperDependencies returns dependent helper names required by a helper
- isHelperInternal indicates whether a helper is flagged for internal compiler use
- ensureHelper succeeds for known helpers and throws BABEL_HELPER_UNKNOWN ReferenceError for unknown helper names
- getHelperAst throws BABEL_HELPER_UNKNOWN ReferenceError when requesting an unknown helper name
Dateien
- PROMPT.md
- csx.json
- package-lock.json
- package.json
- spec.json
- src/index.mjs
- test/contract.mjs
Quelltext
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 pkg:npm/%40babel/helpers@7.29.7
Kind: HOW
Use EXACTLY these public packages and versions:
- pkg:npm/%40babel/helpers@7.29.7
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:751e94264accded0b0f7ed7d806278bf24cf144551dcfb31d88a55fdf10e4c1b","contract":["listAllHelpers returns an array of runtime helper names including typeof, classCallCheck, and wrapRegExp","hasHelper checks if a helper is registered in @babel/helpers list","getHelperAst retrieves the AST node statements and globals for a helper declaration","getHelperMinVersion returns the minimum Babel runtime version for a helper","getHelperDependencies returns dependent helper names required by a helper","isHelperInternal indicates whether a helper is flagged for internal compiler use","ensureHelper succeeds for known helpers and throws BABEL_HELPER_UNKNOWN ReferenceError for unknown helper names","getHelperAst throws BABEL_HELPER_UNKNOWN ReferenceError when requesting an unknown helper name"],"goal":"verify pkg:npm/%40babel/helpers@7.29.7","kind":"HOW","packages":["pkg:npm/%40babel/helpers@7.29.7"],"schemaVersion":1},"contractCommand":["node","test/contract.mjs"],"environment":{"arch":"x64","distro":"ubuntu","ecosystem":"npm","libc":"glibc","libcVersion":"2.39","os":"linux","osVersionBucket":"24","packageManager":"npm","schemaVersion":1},"license":"MIT-0","packages":["pkg:npm/%40babel/helpers@7.29.7"],"schemaVersion":1,"subject":"pkg:npm/%40babel/helpers@7.29.7","verifierAdapter":"node-typescript@1"}
{
"name": "sample-babel-helpers",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "sample-babel-helpers",
"version": "1.0.0",
"license": "MIT-0",
"dependencies": {
"@babel/helpers": "7.29.7"
}
},
"node_modules/@babel/code-frame": {
"version": "7.29.7",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.7.tgz",
"integrity": "sha512-Aup7aUOfpbAUg2ROOJN6Iw5f9DMBlzu0mIkm/malLQFN/YQgO48wCj0Kxa3sEHJvPVFg7siR+qRInwXd2qhQKw==",
"license": "MIT",
"dependencies": {
"@babel/helper-validator-identifier": "^7.29.7",
"js-tokens": "^4.0.0",
"picocolors": "^1.1.1"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-string-parser": {
"version": "7.29.7",
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.29.7.tgz",
"integrity": "sha512-Pb5ijPrZ89GDH8223L4UP8i6QApWxs04RbPQJTeWDV0/keR2E36MeKnyr6LYmUUvqRRI+Iv87SuF1W6ErINzYw==",
"license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helper-validator-identifier": {
"version": "7.29.7",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.29.7.tgz",
"integrity": "sha512-qehxGkRj55h/ff8EMaJ+cYhyaKlHIxqYDn682wQD7RNp9UujOQsHog2uS0r2vzr4pW+sXf90NeeayjcNaX3fFg==",
"license": "MIT",
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/helpers": {
"version": "7.29.7",
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.29.7.tgz",
"integrity": "sha512-1k2lAGRMfHTcwuNYcCNUmaUffmQv8KWMfh2iJUUeRlwlwH4FdNG7mfPI10NPfLHJFThE4Tyr4mv7kTNZOiPuBg==",
"license": "MIT",
"dependencies": {
"@babel/template": "^7.29.7",
"@babel/types": "^7.29.7"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/parser": {
"version": "7.29.8",
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.8.tgz",
"integrity": "sha512-E8lTAYNB1KW+FH+VGJuZM1ioAx2E6oVlvQFRrf5P8ZZmsiJXYAD9vTFV7yyEURNzgh1dFqMZuO6tUwcARbqFCA==",
"license": "MIT",
"dependencies": {
"@babel/types": "^7.29.8"
},
"bin": {
"parser": "bin/babel-parser.js"
},
"engines": {
"node": ">=6.0.0"
}
},
"node_modules/@babel/template": {
"version": "7.29.7",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.29.7.tgz",
"integrity": "sha512-puq+Gf35oI24FeN11LkoUQFqv9uwNeWpxXZi/Ji3rRIoKAzKnxRaZ+Gkj0vKS9ZCiTESfng1N9LyOyXvo+m+Gg==",
"license": "MIT",
"dependencies": {
"@babel/code-frame": "^7.29.7",
"@babel/parser": "^7.29.7",
"@babel/types": "^7.29.7"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/types": {
"version": "7.29.8",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.8.tgz",
"integrity": "sha512-Vj1jF3cPfxg7OAfoI7QnVKLoILlm2JF9pnVHrX8qx7AHMiYWT+NDAA7jChlNgRS4WTLc/fD1lXLmPixluj+3Gg==",
"license": "MIT",
"dependencies": {
"@babel/helper-string-parser": "^7.29.7",
"@babel/helper-validator-identifier": "^7.29.7"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/js-tokens": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
"integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
"license": "MIT"
},
"node_modules/picocolors": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
"license": "ISC"
}
}
}
{
"name": "sample-babel-helpers",
"version": "1.0.0",
"private": true,
"type": "module",
"license": "MIT-0",
"dependencies": {
"@babel/helpers": "7.29.7"
}
}
{
"schemaVersion": 1,
"goal": "verify pkg:npm/%40babel/helpers@7.29.7",
"kind": "HOW",
"packages": [
"pkg:npm/%40babel/helpers@7.29.7"
]
}
import {
list,
get,
minVersion,
getDependencies,
isInternal,
ensure
} from "@babel/helpers";
/**
* Returns the list of all registered Babel helper names.
* @returns {string[]}
*/
export function listAllHelpers() {
return list;
}
/**
* Checks if a helper name exists in Babel helpers.
* @param {string} name
* @returns {boolean}
*/
export function hasHelper(name) {
return list.includes(name);
}
/**
* Retrieves the AST nodes and globals for a specified helper.
* @param {string} name
* @param {Function} [getDependency]
* @param {string|object} [bindingName]
* @param {string[]} [localBindings]
* @param {Function} [adjustAst]
* @returns {{ nodes: object[], globals: string[] }}
*/
export function getHelperAst(name, getDependency, bindingName, localBindings, adjustAst) {
return get(name, getDependency, bindingName, localBindings, adjustAst);
}
/**
* Returns the minimum required Babel runtime version for a helper.
* @param {string} name
* @returns {string}
*/
export function getHelperMinVersion(name) {
return minVersion(name);
}
/**
* Returns the dependency helper names required by a helper.
* @param {string} name
* @returns {string[]}
*/
export function getHelperDependencies(name) {
return getDependencies(name);
}
/**
* Checks if a helper is flagged for internal compiler use.
* @param {string} name
* @returns {boolean}
*/
export function isHelperInternal(name) {
return Boolean(isInternal(name));
}
/**
* Ensures that a helper name is registered and valid, throwing ReferenceError if unknown.
* @param {string} name
*/
export function ensureHelper(name) {
ensure(name);
}
import assert from "node:assert/strict";
import {
listAllHelpers,
hasHelper,
getHelperAst,
getHelperMinVersion,
getHelperDependencies,
isHelperInternal,
ensureHelper
} from "../src/index.mjs";
// Test 1: listAllHelpers returns an array of runtime helper names including typeof, classCallCheck, and wrapRegExp
{
const helpers = listAllHelpers();
assert.ok(Array.isArray(helpers), "helpers list must be an array");
assert.ok(helpers.length > 0, "helpers list must not be empty");
assert.ok(helpers.includes("typeof"), "helpers list must contain typeof");
assert.ok(helpers.includes("classCallCheck"), "helpers list must contain classCallCheck");
assert.ok(helpers.includes("wrapRegExp"), "helpers list must contain wrapRegExp");
}
// Test 2: hasHelper checks if a helper is registered in @babel/helpers list
{
assert.equal(hasHelper("typeof"), true, "hasHelper should return true for known helper 'typeof'");
assert.equal(hasHelper("classCallCheck"), true, "hasHelper should return true for known helper 'classCallCheck'");
assert.equal(hasHelper("nonExistentHelper99"), false, "hasHelper should return false for unknown helper");
}
// Test 3: getHelperAst retrieves the AST node statements and globals for a helper declaration
{
const typeofAst = getHelperAst("typeof");
assert.ok(typeofAst, "getHelperAst should return an object");
assert.ok(Array.isArray(typeofAst.nodes), "typeofAst.nodes should be an array");
assert.ok(typeofAst.nodes.length > 0, "typeofAst.nodes should not be empty");
assert.equal(typeofAst.nodes[0].type, "FunctionDeclaration", "first node should be a FunctionDeclaration");
assert.ok(Array.isArray(typeofAst.globals), "typeofAst.globals should be an array");
assert.ok(typeofAst.globals.includes("Symbol"), "typeofAst.globals should include Symbol");
const classCallCheckAst = getHelperAst("classCallCheck");
assert.ok(classCallCheckAst.nodes.length > 0, "classCallCheckAst.nodes should not be empty");
assert.ok(classCallCheckAst.globals.includes("TypeError"), "classCallCheckAst.globals should include TypeError");
}
// Test 4: getHelperMinVersion returns the minimum Babel runtime version for a helper
{
const version = getHelperMinVersion("typeof");
assert.equal(typeof version, "string", "minVersion should return a version string");
assert.equal(version, "7.0.0-beta.0", "typeof minVersion should match 7.0.0-beta.0");
const decsVersion = getHelperMinVersion("applyDecs2311");
assert.equal(decsVersion, "7.24.0", "applyDecs2311 minVersion should match 7.24.0");
}
// Test 5: getHelperDependencies returns dependent helper names required by a helper
{
const arrayWithoutHolesDeps = getHelperDependencies("arrayWithoutHoles");
assert.ok(Array.isArray(arrayWithoutHolesDeps), "dependencies should be an array");
assert.deepEqual(arrayWithoutHolesDeps, ["arrayLikeToArray"], "arrayWithoutHoles should depend on arrayLikeToArray");
const typeofDeps = getHelperDependencies("typeof");
assert.ok(Array.isArray(typeofDeps), "dependencies should be an array");
assert.deepEqual(typeofDeps, [], "typeof should have no dependencies");
}
// Test 6: isHelperInternal indicates whether a helper is flagged for internal compiler use
{
const internalStatus = isHelperInternal("typeof");
assert.equal(typeof internalStatus, "boolean", "isHelperInternal should return a boolean");
assert.equal(internalStatus, false, "typeof is not an internal helper");
}
// Test 7: ensureHelper succeeds for known helpers and throws BABEL_HELPER_UNKNOWN ReferenceError for unknown helper names
{
assert.doesNotThrow(() => {
ensureHelper("typeof");
}, "ensureHelper should not throw for valid helper");
assert.throws(
() => {
ensureHelper("nonExistentHelper99");
},
(err) => {
return (
err instanceof ReferenceError &&
err.code === "BABEL_HELPER_UNKNOWN" &&
err.helper === "nonExistentHelper99"
);
},
"ensureHelper should throw ReferenceError with code BABEL_HELPER_UNKNOWN"
);
}
// Test 8: getHelperAst throws BABEL_HELPER_UNKNOWN ReferenceError when requesting an unknown helper name
{
assert.throws(
() => {
getHelperAst("nonExistentHelper99");
},
(err) => {
return (
err instanceof ReferenceError &&
err.code === "BABEL_HELPER_UNKNOWN" &&
err.helper === "nonExistentHelper99"
);
},
"getHelperAst should throw ReferenceError with code BABEL_HELPER_UNKNOWN"
);
}
console.log("All @babel/helpers@7.29.7 contract tests passed successfully.");
Ursprungs-Seeder
anonym