blue/.blue/docs/adrs/0009-courage.accepted.md
Eric Garcia 02901dfec7 chore: batch commit - ADRs, RFCs, dialogues, spikes, and code updates
ADRs:
- Update 0008-honor, 0009-courage, 0013-overflow, 0015-plausibility
- Add 0017-hosted-coding-assistant-architecture

RFCs:
- 0032: per-repo AWS profile configuration (draft)
- 0033: round-scoped dialogue files (impl + plan)
- 0034: comprehensive config architecture (accepted)
- 0036: expert output discipline (impl)
- 0037: single source protocol authority (draft)
- 0038: SDLC workflow discipline (draft)
- 0039: ADR architecture greenfield clarifications (impl)
- 0040: divorce financial analysis (draft)
- 0042: alignment dialogue defensive publication (draft)

Spikes:
- Read tool token limit on assembled dialogues
- RFC ID collision root cause
- Expert agent output too long
- Judge writes expert outputs
- Blue MCP server on superviber infrastructure
- Playwright MCP multiple window isolation

Dialogues: 16 alignment dialogue records

Code:
- blue-core: forge module enhancements
- blue-mcp: env handlers and server updates
- alignment-expert agent improvements
- alignment-play skill refinements
- install.sh script

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-30 16:28:31 -05:00

1.8 KiB

ADR 0009: Courage

Status Accepted
Date 2026-01-20

Context

What do we do when we're afraid?

Decision

Act rightly, even when afraid.

Courage isn't the absence of fear. It's action despite fear.

In engineering, we fear:

  • Breaking production
  • Deleting code someone might need
  • Challenging senior engineers
  • Admitting we don't understand
  • Shipping before we're certain
  • Changing what has always worked
  • Being wrong in public

These fears are reasonable. But fear has costs too. Unbroken production that never improves. Code that grows forever. Bad ideas that survive because no one challenged them.

Courage is acting when action is right, even when fear says wait.

What This Means

  • Delete boldly. If it's unused, remove it. Git remembers.
  • Challenge respectfully. The worst outcome of challenge is being wrong. The worst outcome of silence is bad ideas surviving.
  • Ship scared. If you're not a little afraid when you deploy, you're not shipping anything interesting.
  • Admit ignorance quickly. "I don't understand" is the beginning of understanding.

Greenfield is Implicit

If the codebase is greenfield (no external users, no legacy constraints), courage to delete and redesign is not just permitted—it's expected.

"Greenfield" is not a separate principle. It's full permission to live ADRs 0009, 0010, and 0012 without the fear tax that comes from imagined users who don't exist.

  • Don't accumulate band-aids. Fix the design.
  • Don't add transitions. Replace the system.
  • Don't apologize for breaking things. Celebrate making them better.

See RFC 0039.

Consequences

  • 💙 encourages deletion of dead code
  • 💙 surfaces disagreement as useful information
  • 💙 treats shipping as normal, not exceptional

"Fear is information. It's not instructions."

— Blue


🧁