IT74 — the durable dispatcher actually executing graphs against a live database.
Why this bundle exists. IT71 covers eighteen checks and not one of them runs a graph. Nine
assert that metadata exists; nine drive Submit/Persist and verify the rows that come back. So
everything from "the rows are correct" onward — claim, execute, propagate, roll up, settle — was
unit-tested against fixtures and never against SQL Server. That gap is the same species as the one
Phase 6 shipped and Phase 7 caught: a binding that looked right until something drove it.
A stub agent runner, not a real one. The dispatcher takes TaskAgentRunner as an injected
seam precisely so it can execute without the agent framework. Using a stub keeps this bundle in
the deterministic tier — no model calls, no tokens, no network — while still exercising the real
claim protocol, the real condition evaluator, the real rollup, and real rows. What is under test
is the dispatcher, not the agent.
Mutation-class throughout. Every check writes Tasks and Task Dependencies, so the whole bundle
is gated behind RUN_MUTATION_TESTS=1 and tears down what it created, FK-ordered.
Fileoverview
IT74 — the durable dispatcher actually executing graphs against a live database.
Why this bundle exists. IT71 covers eighteen checks and not one of them runs a graph. Nine assert that metadata exists; nine drive
Submit/Persistand verify the rows that come back. So everything from "the rows are correct" onward — claim, execute, propagate, roll up, settle — was unit-tested against fixtures and never against SQL Server. That gap is the same species as the one Phase 6 shipped and Phase 7 caught: a binding that looked right until something drove it.A stub agent runner, not a real one. The dispatcher takes
TaskAgentRunneras an injected seam precisely so it can execute without the agent framework. Using a stub keeps this bundle in the deterministic tier — no model calls, no tokens, no network — while still exercising the real claim protocol, the real condition evaluator, the real rollup, and real rows. What is under test is the dispatcher, not the agent.Mutation-class throughout. Every check writes Tasks and Task Dependencies, so the whole bundle is gated behind
RUN_MUTATION_TESTS=1and tears down what it created, FK-ordered.