Skip to main content

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.

All posts