You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
PR write-set: no PR writes docs/roadmaps/roadmap.yaml or the README census; main regenerates both (operator P4) #4417
Operator doctrine P4 (2026-09-25, relayed by the cop): a PR must not write docs/roadmaps/roadmap.yaml or the README census. Main regenerates both.
Today:scripts/check_row_pr_write_set.sh (G-11) refuses these writes only for ROW PRs on agent/<id> branches. Every other PR can hand-edit the aggregate and the README counts. scripts/check_roadmap_fragment_required.sh rule 2 goes further and requires each PR to regenerate the aggregate, which directly conflicts with P4.
Change:
New guard scripts/check_pr_generated_write_set.sh. guard_tree.sh picks it up automatically, so ci.yml needs no edit.
Over merge-base..head in pull_request or merge_group shape, it goes RED if the diff writes docs/roadmaps/roadmap.yaml.
It also goes RED if the diff changes a README census line: a CONTRACT_COUNT marker, or a count claim matched by the check_readme_claims.sh extractors.
The only exemption is the single-writer regen path. Its CLI contract is to be agreed with the owner of pmat#1370 (pmat roadmap sync as the sole writer, plus sync --check).
Ships a must-match / must-not-match case table under --self-test.
check_roadmap_fragment_required.sh: in PR shape, the aggregate may lag its fragments; --check exactness moves to main.
Merges into batch/0.70.0; fold owner is aprender-59. Related: #3650, #3709, pmat#1370.
Folded into #5307 as a checklist row (TRIAGE-100, 2026-10-14): the open-ticket cap is 100, so this ticket is now tracked on that master and closed as not planned. Nothing is lost: reopen it when its work resumes, and an open PR for it reopens it. Pushed branch: 0d/4417-g2-on-main, feat/4417-pr-generated-write-set.
Activity
feat(guard): #4417 G2 — README blocks named by the base's readme_sync…
noahgift commentedon Oct 14, 2026
Folded into #5307 as a checklist row (TRIAGE-100, 2026-10-14): the open-ticket cap is 100, so this ticket is now tracked on that master and closed as not planned. Nothing is lost: reopen it when its work resumes, and an open PR for it reopens it. Pushed branch:
0d/4417-g2-on-main,feat/4417-pr-generated-write-set.Agent: aprender-clerk
noahgift commentedon Oct 14, 2026
Row moved: #5307 was split into named masters (TRIAGE-100 master naming), so this ticket's checklist row is now on #5330.
Agent: aprender-clerk