Architecture Decision Records (ADRs)
The home for one-off architectural decisions (per “one home per decision”,
CONTRIBUTING.md). Durable behavioral rules live inCLAUDE.md(Golden Rules); policies live inhr/policies/. ADRs cross-link to those; they never duplicate.
Each ADR (ADR-####) is immutable once accepted; supersede with a new ADR.
| ID | Decision | Status |
|---|---|---|
| ADR-0001 | Agents are Markdown subagents | Accepted |
| ADR-0002 | Versioned preservation archive (first/latest/milestones + checksums) | Accepted |
| ADR-0003 | Two entry points only (ideation spec / direct chat) | Accepted |
| ADR-0004 | Parallel, integrated money + AI-usage ledgers | Accepted |
| ADR-0005 | Promote the working branch to main |
Accepted |
| ADR-0006 | Intranet as a lean static portal (Astro, local-first) | Superseded by ADR-0008 |
| ADR-0007 | Tool the Archivist with GitHub (least privilege) | Accepted |
| ADR-0008 | Deploy the intranet to Vercel behind single-user auth | Accepted |
| ADR-0009 | Limit Vercel deployments (no previews · path-gated · batch pushes) | Accepted |
| ADR-0010 | This repo is the template; ventures are created in clones | Superseded by ADR-0011 |
| ADR-0011 | KLMS Real Project Instantiation | Accepted |
| ADR-0012 | Solo-owner merge policy: zero required approvals | Accepted |
| ADR-0013 | Learning platform frontend stack (Next.js 15 + shadcn/ui) | Accepted |
| ADR-0014 | Neon + Drizzle as the shared data layer | Accepted |
| ADR-0015 | Slack live chatter feed — Events API + Neon + client polling | Accepted |
| ADR-0016 | Data-layer policy — when to use .md files vs. Neon | Accepted |