Skip to content

v1.46.2

Choose a tag to compare

@professorpalmer professorpalmer released this 20 Oct 01:09
· 8 commits to main since this release
8ff2f6d

A nested builder's revise no longer blocks follow-up reuse. Codex R196
(PM 1.46.1, one builder per region inside each group, map reuse on): the
follow-up named regions in groups 01 and 03 only. Groups 00 and 02 did not
reuse ("its item graph reads the request"), so 8 extra region builders ran.

  • _reads_request removed revise only from the entry node itself. When the
    entry is a map, the inner builder's revise (with {{prev}}) stayed in
    the searched text, and the item counted as one that reads the request.
  • {{prev}} now counts only in a node that gets the request as its prev:
    the entry node, the branches of an entry parallel, and the same nodes
    inside an entry map. Later nodes in a nested graph read their own
    previous node, and their {{prev}} no longer counts.
  • An entry parallel whose branch task reads {{prev}} now counts as
    reading the request. Before, the branch was not searched and the item
    could be reused against a new request.
  • {{input}} anywhere still counts.

A worker no longer starts git about three times a second while it builds.
The edit-claim renewal runs each ttl/3 (about 0.7 s), and each renewal
asked git twice for the repository identity. A 4-worker probe counted 57-62
subprocesses per worker, and the count grew with build time.

  • The worktree root is cached for each directory in a process
    (file_claims._identity_of). The unused --git-common-dir call is gone.
  • Probe after the fix: 24 subprocesses per worker. The count no longer grows
    with build time. Claim identity and claim behavior do not change.