Development record
ahoy install's stale-binary refusal ('abcd ahoy install — refused') exits 0, so a script or agent piping the install sees success while nothing was installed
issueresolvedminoriss-2610020705158672
ahoy install's stale-binary refusal ('abcd ahoy install — refused') exits 0, so a script or agent piping the install sees success while nothing was installed
Grounds
- pursued: a refused install, the stale-binary case included, exits 2 with its reason on stdout; an install refusal exiting 0 would show it wrong
Frontmatter
| id | iss-2610020705158672 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | minor |
.abcd/work/issues/resolved/iss-2610020705158672-ahoy-install-s-stale-binary-refusal-abcd.md
open on GitHub ↗ · commit history ↗
mentions1
- iss-2610031915386832abcd ahoy install and abcd ahoy remote apply disagree on how a refused run exits: remote apply returns exit 1 when its result is refused or aborted (internal/surface/cli/cli.go, the applyCmd RunE, 'A change that did not happen exits non-zero'), while ahoy install renders every core refusal (the committed .abcd symlink hazard, the stale-binary guard, the retired docs.target refusal) with status refused and exits 0, so a script cannot tell an install that wrote nothing from one that landed. iss-2610020705158672 names the stale-binary case alone; this is the asymmetry across every install refusal and against the sibling verb.