Filed bare by the developer seat while deriving the markdown-test-input class for objectui#8861. ⛔ Not a claim that objectui#8861's fix is wrong — it is in scope exactly as triage drew it. This card is the population that ruling deliberately left outside, plus the measurement that shows the stated reason for leaving it outside is not the reason that applies.
The reason objectui#8861 gave, and why it does not hold
objectui#8861 and its dispatch both say:
⛔ scripts/__tests__/** is deliberately OUT of the hazard class: scripts/** is not on the exclusion list, so a PR touching it already gets a full run.
That sentence is true about a pull request that touches the test. The hazard is about a pull request that touches the markdown the test reads. Those are different pull requests.
scripts/**/*.test.ts is in the root Vitest config's node project include, so those tests run in the same Test (shard N/4) job that objectui#8861 is about. A markdown-only pull request that edits a document one of them reads skips that job, exactly as the objectui#8857 pull request did.
Measured, on 16fc4cf20
A literal-and-walk scan of scripts/__tests__/** (the same scanner that ships in objectui#8861's scripts/markdown-test-inputs.mjs, pointed at that root) resolves markdown inputs in ~40 test files. The population is not marginal and it is not the same population objectui#8861 covers. A sample of what those tests read as data:
AGENTS.md, CLAUDE.md, CONTRIBUTING.md, QUICK_REFERENCE.md, ROADMAP.md, root CHANGELOG.md
docs/ARCHITECTURE.md, docs/adr/**, docs/audits/**
.claude/skills/**/*.md and skills/objectui/**
apps/console/README.md, apps/console/docs/**, apps/site/README.md
examples/*/README.md
- every package
README.md (one doc-version test walks the whole workspace)
content/docs/** (several)
A concrete instance already on main in the last 86 first-parent commits: the commit whose subject begins docs(agents): narrow the package-level test claim changed only AGENTS.md. Three tests under scripts/__tests__/** read AGENTS.md. The shards skipped.
Why it is not folded into objectui#8861
Because widening the class to this population is a different ruling, not a bigger version of the same one. objectui#8861's triage wrote:
⚠️ Do not simply run everything on markdown-only PRs — that discards a deliberate optimisation to fix a narrow class.
Taking this population in would make the class approximately all repository markdown — every package README plus the agent-facing root documents plus docs/** — which leaves the exclusion list doing almost nothing on a real pull request. That may well be the right answer; it is not one a developer seat should take on the way past. The number that decides it: over the last 86 first-parent commits on main, 7 would skip the shards under today's rule; objectui#8861's fix makes 2 of those fire; folding this population in would make 5 of the 7 fire, leaving only .changeset/**-only and apps/site/**-only changes skipping.
Directions, none chosen
- A — widen
markdown-test-inputs.mjs's SCAN_ROOTS to include scripts, adjudicate the ~40 candidates, accept that most markdown then runs the shards.
- B — keep the class narrow and make the remaining hazard visible instead: the audit already exists, so a second declared population could be reported without being enforced.
- C — accept it, and treat the merge queue as the backstop for this population specifically, on the grounds that the documents involved change rarely and rarely break a test. Costs a dequeue per instance.
⚠️ The same question exists one step further out and is NOT measured here: lint.yml's copy of the decision step has the identical shape, and the gates in that job read markdown heavily. That is filed separately.
Generated by Claude Code
Filed bare by the developer seat while deriving the markdown-test-input class for objectui#8861. ⛔ Not a claim that objectui#8861's fix is wrong — it is in scope exactly as triage drew it. This card is the population that ruling deliberately left outside, plus the measurement that shows the stated reason for leaving it outside is not the reason that applies.
The reason objectui#8861 gave, and why it does not hold
objectui#8861 and its dispatch both say:
That sentence is true about a pull request that touches the test. The hazard is about a pull request that touches the markdown the test reads. Those are different pull requests.
scripts/**/*.test.tsis in the root Vitest config'snodeproject include, so those tests run in the sameTest (shard N/4)job that objectui#8861 is about. A markdown-only pull request that edits a document one of them reads skips that job, exactly as the objectui#8857 pull request did.Measured, on
16fc4cf20A literal-and-walk scan of
scripts/__tests__/**(the same scanner that ships in objectui#8861'sscripts/markdown-test-inputs.mjs, pointed at that root) resolves markdown inputs in ~40 test files. The population is not marginal and it is not the same population objectui#8861 covers. A sample of what those tests read as data:AGENTS.md,CLAUDE.md,CONTRIBUTING.md,QUICK_REFERENCE.md,ROADMAP.md, rootCHANGELOG.mddocs/ARCHITECTURE.md,docs/adr/**,docs/audits/**.claude/skills/**/*.mdandskills/objectui/**apps/console/README.md,apps/console/docs/**,apps/site/README.mdexamples/*/README.mdREADME.md(one doc-version test walks the whole workspace)content/docs/**(several)A concrete instance already on
mainin the last 86 first-parent commits: the commit whose subject beginsdocs(agents): narrow the package-level test claimchanged onlyAGENTS.md. Three tests underscripts/__tests__/**readAGENTS.md. The shards skipped.Why it is not folded into objectui#8861
Because widening the class to this population is a different ruling, not a bigger version of the same one. objectui#8861's triage wrote:
Taking this population in would make the class approximately all repository markdown — every package README plus the agent-facing root documents plus
docs/**— which leaves the exclusion list doing almost nothing on a real pull request. That may well be the right answer; it is not one a developer seat should take on the way past. The number that decides it: over the last 86 first-parent commits onmain, 7 would skip the shards under today's rule; objectui#8861's fix makes 2 of those fire; folding this population in would make 5 of the 7 fire, leaving only.changeset/**-only andapps/site/**-only changes skipping.Directions, none chosen
markdown-test-inputs.mjs'sSCAN_ROOTSto includescripts, adjudicate the ~40 candidates, accept that most markdown then runs the shards.lint.yml's copy of the decision step has the identical shape, and the gates in that job read markdown heavily. That is filed separately.Generated by Claude Code