Guardrails & fail-closed
Uncommitted changes are part of the build
24 October 2026 · Guardrails & fail-closed
A fingerprint built from the commit at HEAD ignores edits in the working tree. We added a hash of the diff and the untracked source files, and a test that edits, adds and reverts.
When git cannot answer, rebuild
22 October 2026 · Guardrails & fail-closed
A fingerprint that falls back to a plain string when git fails can match a stored release. We made an unknown fingerprint read stale and force a rebuild, and wrote tests for both outcomes.
The default that failed open
16 October 2026 · Guardrails & fail-closed
An optional argument with a safe-looking default is a guard that a forgetful caller can skip. For anything that protects a boundary, make the argument required and let the compiler refuse the caller.
Refuse, don't warn
8 October 2026 · Guardrails & fail-closed
A build that warns about a leak will ship the leak. Make every check a refusal with a name, prove each one with a red case first, and let the build fail closed.