05d89e04 ยท zzmq.dev@gmail.com/zz
Commit
05d89e04d6f9f93e2115f76480fe24a2916d8e56
Multi-agent zz work loop, real-time TUI, SQLite-backed Lane storage Unified zz work into a single headless loop any agent runs regardless of role: identity-filtered claimable-ask discovery across every configured repo (claimableAcrossRepos), RBAC enforced by withholding write tools (commit_changeset/ladder_write_rung) unless the claimed ask is actually coordinator-scope, and a hard duplicate-answer/RBAC check in answer() itself as defense in depth. New zz top and zz work TUIs (ink, full-screen alternate buffer, scrollable tabs: activity/lanes/ladder/protocol) replace plain scrolling output. zz ask post lets a human drive the loop by hand. Lane/Ask/Answer storage moved from flat JSON files to a SQLite db (node:sqlite, no new dependency) with atomic read-modify-write transactions, fixing a real lost-update race between concurrent zz work processes -- verified with actual concurrent processes racing on the same ask. Ladder summaries now fold old content into new automatically (ladder_write_rung) instead of silently overwriting a file's current- state description with only the latest change. Also: fixed the model-retry-forever bug where an already-resolved answer kept getting retried until the turn limit (loop now ends on a structural "resolved" signal); fixed lane status sticking at "claimed" forever after the first claim; rebuilt the numkit demo repo clean after live testing had added isOdd/isEven commits on top of the original scenario. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Troy Howard <thoward37@gmail.com> -- 2026-10-10T11:05:45.000Z