diff --git a/03-DESIGN/01-to-be/00-work-breakdown.md b/03-DESIGN/01-to-be/00-work-breakdown.md index c95445d..7cb1622 100644 --- a/03-DESIGN/01-to-be/00-work-breakdown.md +++ b/03-DESIGN/01-to-be/00-work-breakdown.md @@ -139,12 +139,32 @@ Each exercises something the first one does not. **3.3 is the hardest thing in this document** and is deliberately last. If the declaration language turns out to be insufficient, it says so here. +## The conversion is done by hand, and that is a decision + +*2026-08-31.* **Moving from the current system to this one is a person at a command line, working +through it.** Not a migration program, not a converter, not a period of dual-writing. + +**What that removes from this plan is larger than what it adds.** Nothing below needs an importer, +a translation layer, a compatibility shim, or a mechanism for keeping two systems agreeing while +both are live — and every one of those is a thing somebody would otherwise reasonably build, use +once, and maintain for a year. The modules are the input; a person reads what one does today and +writes what it declares tomorrow. + +**It also changes what "safe" means for the system being retired.** A fix to it has to be safe on +its own, because there is no careful rollout to sequence it into: the thing is being switched off +by hand, not managed into retirement. A change needing three steps in the right order is a change +that will be half-applied. + +**And it is why the checkpoints below are weeks rather than gates.** Nothing enforces the order — +a person does — so the value of the sequence is entirely in what each step teaches before the next +one starts. + ## Phase 4 — switch the old registry off | # | task | done when | |---|---|---| -| 4.1 | Move the remainder | nothing is assigned in the old system that is not assigned in the new one | -| 4.2 | Run in parallel, the old one authoritative for nothing | a change to any module goes through the new mesh only | +| 4.1 | Move the remainder, by hand, a module at a time | nothing is assigned in the old system that is not assigned in the new one | +| 4.2 | The old one authoritative for nothing | a change to any module goes through the new mesh only | | 4.3 | Switch it off | it is stopped, and nothing notices | **4.3 is a day's work and the phases above it are not.** Naming it as a phase is what stops it