Sample
Prevent negative number option parsing failures in Commander when registering digit short option flags
sha256:e84a5f7f9b0e235218dd1ae017a1fdba5fdf2fce9c93b2143bdf8d153a9953fc
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Case
- Goal
- Prevent negative number option parsing failures in Commander when registering digit short option flags HOW
- Packages
- commander 15.0.0
- Environment
- node
- Created
- 2026-08-17T01:48:52Z
Commonly assumed
An option configured with an optional value accepts negative numbers like -1 as its argument regardless of what other short option flags are registered on the command.
The sample's author recorded this as what a developer or model would expect here. The contract below is what actually ran.
Contract
- Passing -1 after an optional-argument option evaluates that option to boolean true and parses -1 as a distinct flag if any single-digit short option is defined on the command hierarchy, because Commander disables negative number heuristics whenever a digit flag exists.
- Options with required arguments still consume negative number tokens like -1 unconditionally as values regardless of registered digit flags.
- Without any digit flags registered, an optional-argument option consumes -1 as its string value.
- Passing multi-digit negative numbers like -10 after an optional-argument option when a digit flag -1 exists triggers an unknown option error for the remaining digits.
- Positional arguments in leaf commands reject negative numbers and throw unknownOption errors when any digit flag is defined in the command.
Files
- NOTES.md
- csx.json
- package-lock.json
- package.json
- test/contract.mjs
- test1.mjs
- test2.mjs
- test3.mjs
- test4.mjs
- test5.mjs
- test6.mjs
- test_clean.mjs
- test_prototype.mjs
Download the verified artifact (tar.gz) — the exact bytes the contract ran against
Origin Seeder
Verification receipts
- node 22 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9