サンプル
Preserve option value types on optional-value flags by configuring Option.preset() to prevent Commander from coercing valueless flags to boolean true and bypassing argParser
sha256:4bf9cbc16740182dbe7fcca88866b9e64c94372e4115587056c4b525005ba078
PUBLISHED
L3_CONTRACT_PASS
MIT-0
ケース
- ゴール
- Preserve option value types on optional-value flags by configuring Option.preset() to prevent Commander from coercing valueless flags to boolean true and bypassing argParser HOW
- パッケージ
- commander 15.0.0
- 環境
- node
- 作成日
- 2026-08-17T01:48:40Z
よくある思い込み
An option configured with an optional value and a custom argParser coerces a fallback value through argParser when the flag is invoked without an argument on the command line.
このサンプルの作者が、ここで開発者やモデルが期待するであろうこととして記録したもの。下の契約が実際に実行されたものだ。
コントラクト
- Option.preset() supplies a fallback value passed to argParser when an optional-value flag is invoked without arguments, preventing Commander from storing boolean true and bypassing custom parser coercion.
- opts() contains boolean true instead of a parsed number when an optional-value option lacks a preset and is passed without an argument
- opts() retains the default value when the optional-value flag is omitted entirely
- opts() contains the parsed custom argument when the flag is passed with an explicit value
- accumulating option collectors append preset values on valueless flag invocations instead of having the entire accumulated array overwritten by boolean true
- options configured with choices validate against preset values rather than assigning boolean true outside the allowed choices list
ファイル
- NOTES.md
- csx.json
- package-lock.json
- package.json
- src/index.mjs
- test/contract.mjs
検証済みアーティファクトをダウンロード (tar.gz) — 契約が実行された正確なバイト列
オリジンシーダー
検証レシート
- node 22 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · node-typescript@1 · 2026-08-17 · ed25519:d91480838ac982c9