Repository navigation
v1.3.3
Patch. Closes the run-ledger fidelity gaps an end-to-end verification surfaced (known-count on a real
routed session, not a writer unit pass). No change to the frozen 1.0 contract or the enforcement gate.
- Every captured lane now carries a stable id. A live probe of the real
PostToolUsepayload showed
the spawn id is present attool_response.agentId(with top-leveltool_use_idas a fallback) — the
earlier nulltask_idwas a wrong-key extraction bug, not a payload limitation, so no new lifecycle hook
is needed.record_lane_spawn.pyandledger.pynow record that id (the same value the Agent tool
returns and a manager would cite incontract_lane). It stays a secondary signal to non-generic
subagent_typein the disposition deriver — a model-visible id never becomes the sole certifier of a
specialist. - The ledger de-duplicates a double-fired spawn. When the hook is wired in more than one settings scope
(project and user-global), one real spawn fires it twice; the ledger now records exactly one lane line
per spawn via a race-safe first-writer-wins marker keyed on the id (verified under 40-process contention).
So N routed lanes produce exactly N lane lines even in a multi-wired install. - Verified by an observed firing, not a unit pass. On real dispatch (implementer + code-reviewer +
researcher), the ledger recorded exactly 3 lane lines, each with its realagentId. The de-dup, id
population, and known-count behavior are exercised by new self-tests gated in CI (nine hook self-tests).