Per RFC 0003, Blue-tracked documents live in per-repo .blue/ directories. ADRs needed for semantic adherence checking. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
47 lines
1.1 KiB
Markdown
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
|
|
|
|
---
|
|
|
|
🧁
|