b95ddb54 ยท zzmq.dev@gmail.com/zz
Commit
b95ddb54743dc0a8ccd32e2f2dfacbd2c8d5ae86
Add commit-by-commit changeset replay with real coordinator/actor chatter Adds `zz ladder replay-commits`: walks a repo's commit log from the root commit forward, one Lane per commit. Each Lane claims its commit, builds a changeset rung (nested filechange rungs per touched file, nested linechange rungs per diff hunk within a modified file), and merges it into the repo's Ladder via the existing Lane/ASK/ANSWER engine. Each file touched also gets a separate, non-blocking "please update this file's current-state rung" request to the coordinator (a distinct agent id even though the same local model plays both parts in this bootstrap) -- an ASK filed and immediately ANSWERed with `action: "inform"` rather than a blocking round trip, matching the "ask now, treat the answer as a completion notice" pattern asked for. This is what makes the protocol trail chatty: one commit with 3 touched files now produces a claim/grant, 3 rung-update ask/inform pairs, and a merge-request/grant, not one flat write. Adds three new Ladder rung kinds (changeset, filechange, linechange) and a `rung_update_request` ASK kind with an optional `ref` field on ASK/ ANSWER entries for a legible log. Guards against two real correctness risks found while testing against thoward/bsharptree: a file's current-state rung would otherwise grow an unbounded "(previously: (previously: ...))" chain across every commit that touches it (now capped to one level), and a merge commit touching hundreds of files would otherwise make one model call per file/hunk (now any commit over --max-files, default 25, gets a mechanical summary instead). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Troy Howard <thoward37@gmail.com> -- 2026-10-08T03:03:56.000Z