This document turns the Architecture & Design (Phase 3) into an actual build sequence. It answers: in what order, gated by what completion criteria, tested how, documented how, versioned how. It does not revisit interface contracts — those are Phase 3's, settled. Phase 4 is execution.
Eleven milestones, each gated on the previous. Full task-level detail lives in the companion Work Breakdown Structure (§9) — this is the shape, not the checklist.
Ordering rationale: data model first (nothing compiles without it), then Source (nothing to fuse), then Fuser (the strongest evidence, and Gate/Calibrator both consume its output), then Gate (needs a FusedState to evaluate), then Calibrator (adjusts Fuser's weights — conceptually downstream of both), then ProvenanceStore and Router (functionally independent of each other, placed last among components since neither blocks the others), then integration and release.
This is the literal enforcement of the Charter's "no placeholders, mock data, or non-functional features" principle — a checklist every milestone must pass, not a value statement.
pass, NotImplementedError, or TODO left unflagged.# type: ignore without a one-line justification comment.examples/ — fresh code, never copied from a source repo (Charter §6 clean-room policy).Per Architecture §13, not generic best-practice filler:
OutcomeEvidence cannot be constructed from a corroboration-count or confirmation-flag shape. This test is the anti-pattern guardrail (ADR-0002) — if it can be made to pass with corroboration-shaped input, the guardrail has failed, full stop.GateDecision to ActionAuthorization without an explicit external call (ADR-0003's regression test).fallback() returns FALLBACK status, never LIVE, and that a live reading numerically equal to the fallback value is still distinguishable by status field.Docs-as-you-go, not deferred to M9. Every milestone that ships a component ships that component's contract page in the same milestone — M9 is a consolidation and quickstart pass, not the first time documentation gets written. ADRs are written at decision time; the five already recorded (Architecture §14) predate any code, which is the intended order for future ones too.
Semantic versioning from the first commit. 0.1.0-dev at M0, incrementing through M1-M9 as a pre-1.0 series (the API may still shift during active component build-out). 1.0.0 is tagged only at M10, once every v1-scoped component (Strategy §2) is complete, tested, and documented — not before. Changelog follows the Keep a Changelog convention.
GitHub Actions, configured at M0 before any component code exists: lint (ruff) + type-check (mypy) + test (pytest) on every push, from the very first commit — not retrofitted once there's code worth breaking. A separate release workflow triggers on version tags. Dependency scanning added at M0 per Risk Register R7.
echo-module/
├── src/echo_module/
│ ├── __init__.py
│ ├── models.py # Architecture §3 — core data model
│ ├── source.py # §4
│ ├── fuser.py # §5
│ ├── calibrator.py # §6
│ ├── provenance.py # §7
│ ├── gate.py # §8
│ └── router.py # §9
├── examples/ # fresh toy code only — never source-repo code
├── tests/
├── docs/
│ └── adr/ # ADR-0001 through 0005, and future ones
├── pyproject.toml
├── CHANGELOG.md
├── CONTRIBUTING.md
├── README.md
└── LICENSE # choice open — see Risk Register R8, blocks M0
Three living spreadsheets, updated through Phase 4 rather than written once:
| Artifact | Purpose |
|---|---|
EM_Work_Breakdown_Structure_v1.xlsx | Task-level checklist under each milestone above — the thing to actually update as work happens |
EM_Requirements_Traceability_Matrix_v1.xlsx | Every Charter/Architecture requirement traced to its deciding ADR, implementing module, and verifying test |
EM_Risk_Register_v1.xlsx | Ten tracked risks, including two that block M0 directly (license choice, dependency scanning) |
JB is the sole approving authority. Material changes to milestone order, Definition of Done criteria, or v1 component scope require an explicit, versioned revision here — consistent with every prior phase document.
| Version | Date | Status | Notes |
|---|---|---|---|
| 1.0 | September 2026 | Draft — pending approval | Initial Development & Implementation Plan, following approval of Architecture & Design v1.0. |
Echo Module Development & Implementation Plan v1.0 · Draft · Companion to Charter v1.1, Strategy Plan v1.0, and Architecture & Design v1.0