Specs
What each status claims, and the evidence it requires, is defined in 008-spec-metadata.md. specified means the behaviour described is not in the code yet.
Tests counts the files under test/ citing the spec, and is derived on every run rather than declared. A spec marked implemented with no citing test fails the suite.
| Spec | Status | Implemented | PR | Tests | Constitution | ADRs |
|---|---|---|---|---|---|---|
| 000 — Constitution | standing | — | — | — | — | — |
| 001 — Agent Behavior | implemented | 2026-09-14 | #1 | 3 | C4, C6 | 0010, 0015 |
| 002 — Channel Contract (ManyChat / WhatsApp) | implemented | 2026-09-14 | #1 | 2 | C7 | 0001, 0004, 0005, 0012 |
| 003 — Tenant Configuration | implemented | 2026-09-14 | #1 | 2 | C1, C2 | 0018 |
| 004 — Testing | implemented | 2026-09-14 | #2 | 8 | C8 | — |
| 005 — Repository Language | implemented | 2026-09-15 | #3 | 2 | C1, C9 | — |
| 006 — Pull Requests | implemented | 2026-09-15 | #6 | 2 | C1, C5, C8, C9 | — |
| 007 — Local Model (Ollama) | specified | — | — | 1 | C2, C3, C6, C7 | 0001, 0018 |
| 008 — Spec Metadata | implemented | 2026-09-15 | #9 | 1 | C8 | — |
| 009 — Tenant Eval Suites | implemented | 2026-09-16 | #19 | 1 | C1, C6, C8, C9 | — |
| 010 — Release Workflow | implemented | 2026-09-16 | #22 | 2 | C1, C8, C9 | — |
| 011 — Dependency Updates | implemented | 2026-09-16 | #24 | 1 | C1, C8 | — |
| 012 — Agent Tools | implemented | 2026-10-01 | #110 | 3 | C3, C4, C5, C6, C7 | 0010, 0019 |
| 013 — No Verbatim Repetition | implemented | 2026-10-02 | #131 | 2 | C9 | — |
| 014 — Documentation Site | implemented | 2026-10-02 | #119 | 2 | C1, C9 | — |
| 015 — Test Service | specified | — | — | — | C1, C3, C5, C7, C9 | 0001, 0005 |
| 016 — Model-Graded Evals | specified | — | — | — | C1, C2, C3, C4, C6, C8, C9 | 0011 |
| 017 — Inbound Request Trust | implemented | 2026-09-26 | #89 | 1 | C5, C6 | 0012, 0014 |
| 018 — History Window and Turn Cap | implemented | 2026-09-26 | #91 | 3 | — | 0013 |
| 019 — Contact Tokens | implemented | 2026-09-27 | #95 | 9 | C5 | 0012, 0013 |
| 020 — Inbound Media | implemented | 2026-09-27 | #99 | 5 | C1, C2, C4, C5, C6, C7, C9 | — |
| 021 — Contributor Surface | implemented | 2026-09-28 | #105 | 1 | C1, C9 | — |
| 022 — ManyChat API Through manychat-sdk | implemented | 2026-10-02 | — | 5 | C5, C7 | 0001, 0008, 0012 |
| 023 — Sales Funnel | implemented | 2026-10-02 | #132 | 2 | C1, C6, C9 | 0015 |
| 024 — Contact Read and Free-Text Notes | implemented | 2026-10-02 | #144 | 5 | C3, C4, C5, C6, C7 | 0010, 0016, 0017 |
| 025 — In-Window Nudge | implemented | 2026-10-02 | #143 | 2 | C4, C5, C6, C9 | 0010, 0015 |
| 026 — Python Port Parity | specified | — | — | — | C1, C2, C3, C4, C5, C6, C7, C8, C9 | 0018, 0001, 0004, 0008, 0010, 0012, 0013, 0014, 0016, 0017, 0019 |
| 027 — Funnel Conversion Events | implemented | 2026-10-03 | #150 | 2 | C1, C3, C5 | 0010, 0015 |
| 028 — Multi-Course Funnels | implemented | 2026-10-03 | #151 | 5 | C1, C3, C6 | 0015 |
| 029 — Flows Go Out Before the Reply | implemented | 2026-10-03 | #152 | 4 | C6, C7, C8 | 0010, 0016, 0019 |
| 030 — The Reply Waits for the Flow | implemented | 2026-10-03 | #153 | 2 | C6, C7, C8 | 0001, 0004, 0019 |
| 031 — Learning From Outcomes | specified | — | — | — | C1, C2, C3, C4, C5, C6, C7 | 0020, 0015, 0011 |
| 032 — Relationship Before the Sale | implemented | 2026-10-04 | #157 | 4 | C1, C6, C9 | 0015, 0019 |
| 033 — Tenant Projects Depend on the Agent, Not Fork It | implemented | 2026-10-06 | #166 | 4 | C1, C6, C8, C9 | 0021, 0018 |
| 034 — Intent Before the Sale | implemented | 2026-10-05 | #167 | 5 | C1, C4, C6, C9 | 0015 |
035 — create Scaffolds a Tenant Project from the Fixture Tenant | specified | — | — | — | C1, C9 | 0021 |
| 036 — Plugins Extend the Agent Through the Ports, and Cannot Reach the Race | specified | — | — | — | C2, C4, C5, C6, C7 | 0021, 0005, 0010, 0017 |