762 B
762 B
214 — Diagnosis
2026-10-03. A plan learns a tier's outcome only through planBuilt, called when a controller takes
in a build result off the bus. A merge to the controller's repository replaces the controller in tier
0; the build that produced the new controller was recorded, but the plan state the new controller
loaded still read asked, and no path ever revisited it. Fix (branch
fix/issue-214-a-plan-settles-from-the-build-records, commit d86baeb): advanceOnce settles every
still-asked module from its build records — a build recorded after the ask is that ask's outcome,
built or failed — on every advance and on the 30-second ticker. Tested with a pure helper. Live
proof: the next merge to mesh-controller passes tier 0 on its own.