codexclaw v0.2.33
[0.2.33] - 2026-09-20
A dispatched lane may now run its own loop, and the packet that says so is checkable.
Added
cxc-loopgainsreferences/lane-dispatch.md: the packet a coordinator hands a lane,
the separate merge grant, and the measured host envelope. LANE-LOOP-AUTH-01 — a leaf
never opens a goal, a dispatched task owns one and loops when its packet grants the
objective, criteria and completion condition. LANE-PACKET-01 — thecreate_thread
prompt is the entire channel, so a packet carries scope, base, branch, authority and
reporting. LANE-MERGE-GRANT-01 — merge is a separate sentence and may only land the
lane's own branch.scripts/check-lane-packet.mjsdecides those cases instead of asserting prose: a loop
without criteria, a merge without its grant, a merge naming another lane's branch, a
provisional id used as an address, push/PR authority, and write scopes that overlap
across a packet set after.and..are normalized. Packets have declared
dispatchandboundmodes, because a packet cannot carry an address that creation
has not returned yet.scripts/check-host-bounds.mjsplustest/fixtures/host-thread-bounds.jsonrecord the
measured surface —wait_threads1-8 targets and 0-120000 ms,read_thread1-10 turns
and 0-20000 chars,list_threads1-50,get_handoff_status0-60000 ms, worktree
retention 15, the default six-subagent session cap — and re-derive each fromapp.asar
and thecodex-rssources. An absent artifact reports NOT RUN and never PASS.dispatch-surfaces.mdgains DISPATCH-FANOUT-CAP-01: branches are the cheap axis — no
host-wide task cap was found — while subagents fail outright past six per session.
Changed
cxc-loopscopes its leaf rule to leaves and states the lane case positively. The old
wording read as universal and left a dispatched task with no permission to run its own
cycle, which is why one session did all the looping.
Known limitations
- The validator enforces packets; it does not police the skill text. Deleting the prose
authorization fails no test, and closing that would mean enforcing the packet at the
orchestration boundary. - Measured absences are recorded as absences: no cap was found on referenced tasks and no
model-visible resolver was found for a queued lane'sclientThreadId(#209).
What's Changed
- release: codexclaw 0.2.33 by @lidge-jun in #226
Full Changelog: v0.2.32...v0.2.33