- Refuse non-interactive update without --yes (Devin Review P1):
bail with a clear error instead of silently replacing binaries when
stdin is not a TTY. Matches gh / rustup / apt-get posture.
- Persist 24h cooldown on refresh failures (cubic P2): the hidden
`__refresh-update-cache` subprocess now writes a fresh
`checked_at_unix` even when the GitHub API call fails (keeping the
previously-known tag), so a transient outage doesn't spam refreshes.
- Make the checksum-mismatch test platform-correct (cubic P2): compare
byte-for-byte against the snapshotted original binary instead of
ELF/shebang magic, which excluded macOS arm64 (Mach-O).
- Bump cli-reference top-level family count 17 -> 18 (cubic P3).
- Add a new integration test asserting non-interactive bail-out.
Co-Authored-By: Ragnor Comerford <ragnor.comerford@gmail.com>