blue/.blue/docs/adrs/0008-honor.accepted.md
Eric Garcia 0fea499957 feat: lifecycle suffixes for all document states + resolve all clippy warnings
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>
2026-01-26 12:19:46 -05:00

47 lines
1.1 KiB
Markdown

# ADR 0008: Honor
| | |
|---|---|
| **Status** | Accepted |
| **Date** | 2026-01-20 |
---
## Context
What do we owe each other?
## Decision
**Say what you do. Do what you say.**
That's honor. It's not complicated, but it's hard.
When you write an interface, you're making a promise. When you document behavior, you're giving your word. When you ship a feature, you're saying "this works."
Honor means those promises are kept. Not because someone's checking. Because that's what promises are for.
## What This Means
- **Interfaces are contracts.** If it's documented, it should work that way.
- **Deprecation is fair warning.** Give people time to adapt.
- **Breaking changes are broken promises.** Sometimes necessary, always costly.
- **Changelogs are honesty.** Say what actually changed.
The gap between documentation and behavior is a measure of dishonor.
## Consequences
- 💙 keeps its promises (documented behavior matches actual behavior)
- 💙 warns before breaking changes
- 💙 tells you what it actually did, not what it tried to do
---
*"Your word is your word. Code or otherwise."*
— Blue
---
🧁