You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Make the shipped plan trace complete and stop counting planner spend twice
The shipped registry withheld the trace recorder from its PlannerNode and
Materializer, so `grapharc plan` wrote a file holding only admission/round/
stop: no plan event saying what was proposed and what it cost, and — because
the built subgraph inherits the materializer's recorder — no start/end pair
for any node the loop executed. Three nodes ran and none of them appeared.
README's "the trace holds ... the executed nodes' own start/end pairs" was
true of a hand-wired loop and false of the one the command drives. Both
collaborators get the recorder now, and the phase counts are asserted.
With the plan event present, a second defect became live: the round event
also carried the planner's tokens, and metrics, cost and replay all add
events they cannot place inside a node on top of node totals. The planner's
spend was therefore counted once as `plan` and again as `round` — meter
1979, metrics 2558. A round's duration_ms was worse, since it encloses the
plan plus every node the round ran. Neither is on the event now; both are on
its state_delta as round_tokens / round_iterations / round_duration_ms,
where no reader sums them, so what a round spent stays answerable from the
file without being added to the totals a second time.
RoundRecord.iterations was declared and never assigned, so every round
reported 0 while the run's meter counted the same work. _charge_back already
read the figure and discarded it; it is carried through _Execution now.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
0 commit comments