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
{{ message }}
Repository navigation
Commit 8c4c6af
Browse filesBrowse the repository at this point in the historyBrowse files
fix(webapp,run-engine): complete the waitpoint projection and harden the batch guard
Four fixes from review.
A completed MANUAL waitpoint left its Postgres projection row PENDING. The
token API and the dashboard read status, output and completedAt from that row,
so a finished token reported as still waiting with no output. The completion
now writes through to the projection, best effort like the create-time write.
A lockless absorb that arrives with no parent BATCH waitpoint id now throws
instead of returning early. Skipping silently meant an unwired caller would
disable the pending-set guard rather than fail, which is the exact failure the
guard exists to catch.
mintAssociatedWaitpointData gains anchorRunId on the coordinator contract. The
store arm derives a RUN waitpoint id from the run's own id body, so without the
anchor on the shared type the two arms disagreed about the call shape.
The mint-kind resolver splits into a pure module and an env-bound wrapper, so
its test no longer loads env.server through the import chain. Test import time
drops from 2.7s to 7ms, which is the chain being gone rather than a speedup.
Also states plainly in the code that the batch guard is a preflight detector
and not a barrier: it reads the run shard, then the absorb writes separately,
so a completion landing between the two is detected next call, not prevented.
Closing that window means moving the assertion inside the absorb script.
0 commit comments