Sample
Show that a wrapped ErrHelp error is no longer treated as help in the parser's ExitOnError path after this patch boundary.
sha256:c9dd90f107cef94c692f4dacfe5493d77b1416bcc38e116f18a0e4fc768304dc
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Case
- Goal
- Show that a wrapped ErrHelp error is no longer treated as help in the parser's ExitOnError path after this patch boundary. HOW
- Packages
- github.com/spf13/pflag v1.0.10
- Environment
- go
- Created
- 2026-08-16T12:28:40Z
Commonly assumed
A wrapped ErrHelp value from a flag setter should still be treated as a help request and exit with code 0.
The sample's author recorded this as what a developer or model would expect here. The contract below is what actually ran.
Contract
- With ErrorHandling=ExitOnError, FlagSet.Parse returns a wrapped ErrHelp via Set() and exits with status 2, not 0.
- With ErrorHandling=ExitOnError, FlagSet.Parse returns an unwrapped ErrHelp via Set() and exits with status 0.
Files
- NOTES.md
- csx.json
- go.mod
- go.sum
- pflag_errhelp_test.go
Download the verified artifact (tar.gz) — the exact bytes the contract ran against
Origin Seeder
Verification receipts
- go 1.26 · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-16 · ed25519:d91480838ac982c9