Sample
Demonstrate that @babel/preset-env isPluginRequired enforces strict 3-part SemVer format on target versions while accepting loose versions in support data, and returns true for empty targets.
sha256:d867299d098e3b1457b625465dffcf5c0a970911aa095d22f8ce7c4207a5835f
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Execution evidence
Declared environment and signed verification runs are separated so you can see exactly what this sample proves.
Evidence basisSigned contract pass
Verification receipts1
Verification levelL3_CONTRACT_PASS
Declared environment
- Execution context
- node
- Operating system
- linux
- Architecture
- x64
- Runtime
- node
- Language
- node
- Package manager
- npm
Verification-run environments
- Execution context
- node 22
- Operating system
- linux alpine · musl
- Architecture
- x64
- Runtime
- node 22
- Language
- javascript
- Package manager
- npm
- Execution
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17
Case
- Goal
- Demonstrate that @babel/preset-env isPluginRequired enforces strict 3-part SemVer format on target versions while accepting loose versions in support data, and returns true for empty targets. HOW
- Packages
-
@babel/preset-env 7.26.0
- Environment
- node
- Created
- 2026-08-17T06:39:19Z
Commonly assumed
isPluginRequired accepts shorthand target versions such as chrome '80' matching Babel configuration presets, and returns false when targets is empty since no target platforms require compilation.
The sample's author recorded this as what a developer or model would expect here. The contract below is what actually ran.
Contract
- isPluginRequired throws a semver validation error when targets specifies a non-triplet version like '80' while support data allows '79', returns false when target version 80.0.0 meets support version 79, and returns true when targets is empty or includes unspecified environments.
- transformIncludesAndExcludes separates builtIns prefixed with es, es6, es7, esnext, and web into a distinct Set from plugins.
Files
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
Download the source artifact (tar.gz)
Origin Seeder
csx-seed
Verification receipts
- node 22 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9