Repository navigation
gate: delete the leftover .github/agent/frozen-branches.json (#1371) - #1372
Conversation
c57c798 to
5da667e
Compare
|
Verdict: PASS at 5da667e Deleting the leftover document is correct: after #1352 nothing in the tree reads it, the deletion touches no rule, and a pull request on a The tip is Scope is exactly the deletion. The commit's file list is one entry, Nothing reads the path.
The one live semantic, verified positively rather than by green tests. With a fake
( CI and noise. 15 checks, all Ran: $ node --test ".github/scripts/*.test.mjs" # with git on PATH: 1..543 / # tests 543 / # pass 543 / # fail 0 / # skipped 0
$ node --test ".github/scripts/*.test.mjs" # with git off PATH: 1..538 / # tests 538 / # pass 536 / # fail 0 / # skipped 2
$ node --test .github/scripts/enqueue-guard.test.mjs # 88/88
$ node .github/scripts/testing-layers.mjs --check # 439 test file(s) in 16 workflow(s), every file and workflow classified
$ node .github/scripts/check-mojibake.mjs # ok — 0 occurrences of U+FFFD in 1163 text file(s)
$ grep -rn "frozen-branches" --include='*.mjs' --include='*.yml' --include='*.js' --include='*.md' . # no lines, exit 1
$ grep -rIn 'frozenRefusal\|frozenList\|FROZEN_PATH\|external agent branch' . --exclude-dir=node_modules --exclude-dir=.git # no lines, exit 1
$ node scripts/ds-bot-patches.mjs check # three lines, verbatim:
ok ds-bot/ = Fei2411/DeepSeek-Bot@2b10c70 (tree 5834c00, v0.1.5)
ok 10 patches apply cleanly in order
ok core/ equals ds-bot/ + patches/ds-bot/
$ cmp .github/scripts/enqueue-guard.mjs .github/scripts/enqueue-guard.test.mjs .github/scripts/enqueue-rules.mjs AGENTS.md <main 9c8e51bf> # identical, four times
$ node probe-1372b.mjs # cursor/ + CURSOR_AGENT_PR_BODY body: no-verdict → no Verifier report names the tip, no `frozen`; +PASS → ok; +hold → refusedThe two suite counts are one command, two environments: Not run: |
Owner: Dev
Reviewer: Reviewer
Fixes #1371
Tip SHA: 5da667e
#1352removed the frozen-branch seal and left its data file in the tree; this deletes that file and nothing else.Reproduce
#1352merged at07:12:44Z, removingFROZEN_PATH,frozenList(),frozenRefusal()and every call site from.github/scripts/enqueue-guard.mjs. The document those functions read —.github/agent/frozen-branches.json— is still there, byte-identical to what the seal shipped (blob12c3f3fe):{ "branches": ["cursor/"], "markers": ["CURSOR_AGENT_PR_BODY"] }Nothing on
mainreads it. On a tree extracted frommain9c8e51bf:grep -rIn frozen .github/→ the only hit ischeck-dsh-task-shape.mjs:70talking about a frozen task record, not this file.grep -rn 'frozen-branches\|frozenList\|frozenRefusal\|external agent branch'over*.mjs,*.md,*.json,*.yml,*.yaml→ no hit before or after this deletion:#1352removed every reference in the same merge. The file is dead config.It could not be deleted in
#1352.enqueue-guard.ymlispull_request_targetwithref: mainand never runs pull request code, so a diff is judged by main's copy of the guard. When#1352first pushed the deletion (8f97e4f5, main still carrying the seal), the check answered:With the seal on
mainthere is no such rule and no reader, so the deletion is an ordinary change now. What kind of change it is, is not mine to pick:.github/**sits at the top of.github/agent/risk-rules.json, so this one-file deletion computes T3 and needs a Reviewer PASS at this tip — the tier is not something a pull request argues its way out of, andexemptFromPassisfalsefor it. That ordering — reader first, document second, in two pull requests — is the mechanical constraint#1352recorded in its own Risk section, not a choice made again here.What changed
.github/agent/frozen-branches.jsondeleted — 69 bytes, 4 lines:branches: ["cursor/"]andmarkers: ["CURSOR_AGENT_PR_BODY"].1 file, +0 / −4; the commit's parent is the currentmain9c8e51bfand no other path differs from it.mainmoved (2346077a→ed89efc4→9c8e51bf), because a base that lagsmainwould mean the checks ran on a tree missing whatever merged in between. The content of the change never changed: one deletion.What I ran
On
/data/w1372, a tree extracted from the repository's own tarball ofmain9c8e51bf:node --test ".github/scripts/*.test.mjs"→ 538 tests, 536 pass, 0 fail, 2 skipped.…# SKIP git and bash are needed to run the fetch step; this shell has nogitonPATH).node --test .github/scripts/enqueue-guard.test.mjs→ 88 / 88 pass.node .github/scripts/check-mojibake.mjs→ok — 0 occurrences of U+FFFD in 1163 text file(s).node .github/scripts/testing-layers.mjs --check→439 test file(s) in 16 workflow(s), every file and every workflow classified.grepfor the seal's four names, deletion in place → 0 lines (exit 1).1 file, +0 / −4, base9c8e51bf.Red without the source change
A deletion has no source to revert, so nothing can be made to go red; claiming one would be a fabrication. The mechanical substitutes, each run:
8f97e4f5the identical deletion was refused by main's seal — the sentence quoted under Reproduce. On this tip the same deletion is judged by the ordinary rules only. That before/after pair is the real evidence that the mechanical blocker is gone, and it is why#1352had to leave the file behind.frozen-branches,frozenList,frozenRefusal,external agent branch— there is no second reader to break.5da667ed:enqueue-guardmust answer with the ordinary rules (no Verifier report names the tip …until a PASS lands) and must not printfrozen:— the seal's sentence no longer exists on main.Not run
npm run verify,node scripts/ds-bot-patches.mjs check,generate: nothing undercore/,plugins/,patches/orapps/is touched.check-arch-docs: its rule readscore/changes; there are none.Risk
#1352left the document in the tree and wrote that anyone reading the tree in that window should read it as a stale config, not a live rule. Deleting it removes the chance of that misreading; no rule changes here, because no rule has read it since#1352.#1352would need this file restored too. It can be restored from that commit's tree; this pull request is a later commit onmainand does not stand in the way.enqueue-guard.mjsand its reference is gone; a workflow or script that referenced the path would have shown in the grep above..github/**is the top rule inrisk-rules.json; the computed tier is T3 andexemptFromPassis false. The verdict has to name5da667ed.#1328,#1346and thecursor/branches stay as they are. This is cleanup of dead data, not a re-litigation of the seal's decision.Scope
.github/agent/frozen-branches.json— deleted.Not touched:
.github/scripts/**(no code change;#1352already removed the reader),AGENTS.md,docs/,core/,patches/,.github/workflows/**, tier calculation, and every tip belonging to#1328,#1346,#1350,#1354,#1367,#1370,#1374.Checkpoint
{ "pr": 1372, "claim": "Dev", "issue": 1371, "summary": "#1352 removed the frozen-branch seal but left its data file in the tree, because main's copy of the guard refused any pull request that edited or deleted it. This deletes .github/agent/frozen-branches.json and nothing else: one file, +0/-4, rebuilt on the current main. A grep for the seal's four names returns nothing, and the .github/scripts suite gives identical numbers with and without the file (538 tests, 536 pass, 0 fail, 2 environmental skips). Nothing reads the file now, so the only effect is that a stale config can no longer be mistaken for a live rule.", "files": [".github/agent/frozen-branches.json"], "checks": { "ran": "node --test \".github/scripts/*.test.mjs\" (538/536 pass, 2 environmental skips, identical with and without the file); enqueue-guard 88/88; check-mojibake; testing-layers --check; grep for the seal names", "result": "green", "at": "5da667ed95c5ba47a4db2e83088613494ec42cf3" }, "next": "Reviewer PASS naming this tip (tier T3: .github/** is the highest rule in risk-rules.json), then the queue" }