Observation-class, measured while building the per-glob holder limb in PR #10690. No gate is red today. Filed unassigned, no pm:queue. Same class as #10565: prose in scripts/check-cross-package-test-inputs.mjs that lags the code it describes.
Measured on 844bf29a84
CROSS_PACKAGE_TEST_INPUTS['create-objectstack'] opens with:
// src/template-consistency.test.ts reads doc frontmatter by repo-relative// path to decide which templates are internal.
That sentence is the stated justification for the content/** glob. In today's packages/create-objectstack/src/template-consistency.test.ts:
- the only thing that reaches
content/ is the skills-catalog-boundary block, which runs git grep -nF 'skills add objectstack-ai/objectstack' -- content/docs skills packages/create-objectstack … (:495); - the
frontmatterOf(path.join(repoRoot, rel)) reads are driven by git ls-files '*SKILL.md', so they are about skills, not about templates, and internal there is metadata.internal on a SKILL.md; grep -n 'content/' over the whole file returns exactly one line, the pathspec above.
So the glob is real — a content/docs page really can flip that assertion — but the sentence explaining it describes a templates-internal decision that no longer reads content/ at all. Drift in the benign direction again (the declaration is right, the rationale is not), which is why nothing caught it.
Why record it rather than reword it in passing
PR #10690 was scoped to the per-glob limb plus the "two seeds" sites #10565 names, and it now states the real holder in the heldBy comment it adds right below this sentence — so the accurate reading is present in the file, beside the stale one. Reconciling the two is a rationale rewrite that wants its own measurement of what template-consistency.test.ts justifies today, not a rider.
Refs
#10565 (the sibling prose drift, same file) · #10566 · PR #10690
Generated by Claude Code
Observation-class, measured while building the per-glob holder limb in PR #10690. No gate is red today. Filed unassigned, no
pm:queue. Same class as #10565: prose inscripts/check-cross-package-test-inputs.mjsthat lags the code it describes.Measured on
844bf29a84CROSS_PACKAGE_TEST_INPUTS['create-objectstack']opens with:That sentence is the stated justification for the
content/**glob. In today'spackages/create-objectstack/src/template-consistency.test.ts:content/is the skills-catalog-boundary block, which runsgit grep -nF 'skills add objectstack-ai/objectstack' -- content/docs skills packages/create-objectstack …(:495);frontmatterOf(path.join(repoRoot, rel))reads are driven bygit ls-files '*SKILL.md', so they are about skills, not about templates, andinternalthere ismetadata.internalon a SKILL.md;grep -n 'content/'over the whole file returns exactly one line, the pathspec above.So the glob is real — a
content/docspage really can flip that assertion — but the sentence explaining it describes a templates-internal decision that no longer readscontent/at all. Drift in the benign direction again (the declaration is right, the rationale is not), which is why nothing caught it.Why record it rather than reword it in passing
PR #10690 was scoped to the per-glob limb plus the "two seeds" sites #10565 names, and it now states the real holder in the
heldBycomment it adds right below this sentence — so the accurate reading is present in the file, beside the stale one. Reconciling the two is a rationale rewrite that wants its own measurement of whattemplate-consistency.test.tsjustifies today, not a rider.Refs
#10565 (the sibling prose drift, same file) · #10566 · PR #10690
Generated by Claude Code