Every document filename now mirrors its lifecycle state with a status suffix (e.g., .draft.md, .wip.md, .accepted.md). No more bare .md for tracked document types. Also renamed all from_str methods to parse to avoid FromStr trait confusion, introduced StagingDeploymentParams struct, and fixed all 19 clippy warnings across the codebase. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1.6 KiB
ADR 0012: Faith
| Status | Accepted |
| Date | 2026-01-20 |
Context
What do we do when we can't be certain?
Decision
Act on justified belief, not just proven fact.
Engineering culture worships certainty. We demand proofs, tests, guarantees. We distrust what we can't verify. We refuse to ship until we're sure.
This is often wise. But taken to extreme, it's paralysis.
Some things can't be proven in advance. Some tests can't be written until the code exists. Some knowledge only comes from running systems. Some truth only comes from doing.
At some point, you must act without certainty. This is faith.
What Faith Is
Faith is not the absence of reason. It's action beyond where reason can reach.
- Recklessness ignores available evidence.
- Faith acts when evidence is unavailable.
We reason as far as reason goes. Then we trust—ourselves, our teammates, the process.
Faith is also in time. Persisting when you can't see the end is faith in the journey. See ADR 0000: Never Give Up.
What This Means
- Ship before certain. Production teaches what testing can't.
- Trust your judgment. You have experience that can't be reduced to tests.
- Believe in future selves. You don't need to solve every problem now.
- Faith in others. Your collaborators are competent. Trust their code.
Consequences
- 💙 ships with reasonable uncertainty
- 💙 trusts user judgment
- 💙 doesn't demand proof of everything
"Every commit is an act of faith. Every deploy, a leap. Calibrate carefully. Then leap."
— Blue
🧁