From 6528b3fe4c8c0f1601ba48b21cbc21f011d5a8aa Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 6 Sep 2026 17:06:46 +0000 Subject: [PATCH] docs(guide): make three drifted counts on ci-cd-pipeline.md self-maintaining Three sentences on `content/docs/guide/ci-cd-pipeline.md` carried copied numerals qualifying a file/document population with no measurement point declared, so each was true on the day it was written and silently wrong afterwards. Refreshing the numerals only restarts that clock, so each sentence now either states its population and points at the live reading its own gate prints on every run, or carries a declared measurement point. - "measured across 143 files and 558 literals" -> names the population (every `.md`/`.mdx` page under `content/docs`) and points at the `check-doc-component-types` verdict line that prints the counts. - "the other four still return 203 of today's 207 files" -> the argument is the relation (a per-root floor survives one root reading zero, a total floor does not), so it now stands with no numeral at all and points at the per-root census the verdict line prints. - "73 files / 1996 tests" -> re-read from the suite's own summary and anchored to a measurement point, keeping the subject a TEST-file population: "112 test files / 3360 tests on `main@59a3a233d`". The two neighbouring sentences that look stale but are correct because each declares the tree it measured (`main@6422aa891`, and the 5281 first-parent commit window) are untouched. objectui#7965. Co-Authored-By: Claude Fable 5.1 Claude-Session: https://claude.ai/code/session_01FhBNJcLRZLe8M87VcUgpKr --- content/docs/guide/ci-cd-pipeline.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/content/docs/guide/ci-cd-pipeline.md b/content/docs/guide/ci-cd-pipeline.md index 105c379d49..7053696a67 100644 --- a/content/docs/guide/ci-cd-pipeline.md +++ b/content/docs/guide/ci-cd-pipeline.md @@ -778,9 +778,11 @@ the whole run to a checkout plus one `node` call. A registration whose key the d resolve **fails the gate** rather than being skipped: a key silently missing from the universe turns *correct* documentation red, which is the failure mode that gets gates deleted. -**How a snippet is judged.** `type` is not one vocabulary in these pages — measured across 143 files -and 558 literals, the corpus spells action schemas, block schemas, theme and report schemas, field -and JSON-Schema data types, validation rules and navigation items all under the same key. A +**How a snippet is judged.** `type` is not one vocabulary in these pages — measured across every +`.md` and `.mdx` page under `content/docs`, a population the gate re-derives on every run and prints +in its own verdict line beside the code-block and `type`-literal counts, the corpus spells action +schemas, block schemas, theme and report schemas, field and JSON-Schema data types, validation rules +and navigation items all under the same key — so that size is read off the run, never copied here. A structural discriminator was built and rejected on measurement (a TypeScript annotation reads exactly like an object key to a brace tracker, and `items` carries navigation entries on one page and renderable children on another, so any global rule is a silent false green somewhere). So the rule is @@ -1079,9 +1081,10 @@ one that matches nothing. The verdict line therefore prints the **per-root popul fenced blocks for each of the five roots — rather than a bare `OK`, and the scan **fails when that population collapses**: a root that does not resolve, a root that walks to fewer documents than its floor, or a total fence count under the floor is a broken walk, not a clean tree. The document floors -are **per root** and deliberately never a whole-surface total: on a day the four-file `.claude/skills` -root reads zero, the other four still return 203 of today's 207 files, so a total floor stays green -through the entire outage. A scan root that has +are **per root** and deliberately never a whole-surface total: on a day the smallest root, +`.claude/skills`, reads zero, the other four still return all but its handful of documents, so a +total floor stays green through the entire outage — the relation is the argument, and each root's +own population is printed on every run rather than copied here. A scan root that has moved or been mistyped is reported **by name**, because a mistyped root and a clean root produce identical output otherwise. The evidence that the gate works is the ablation in its test suite, which replants #5150's exact line in each root on a fixture tree. @@ -1437,7 +1440,7 @@ remove. The validation is scoped to the surfaces the diff can move instead: |---|---|---| | `pnpm quick-reference:check` | `QUICK_REFERENCE.md` | ~1 s | | `pnpm check:control-bytes` | the 40 generated `CHANGELOG.md` | ~4 s | -| `pnpm test scripts/__tests__` | 73 files / 1996 tests — every test that reads a manifest version, `QUICK_REFERENCE.md` or a `CHANGELOG.md` | ~50 s | +| `pnpm test scripts/__tests__` | 112 test files / 3360 tests on `main@59a3a233d` — every test that reads a manifest version, `QUICK_REFERENCE.md` or a `CHANGELOG.md` | ~50 s | `check:spec-floors` and `check:published-dist` are deliberately **not** here: they read dependency ranges and built `dist/`, neither of which the version step moves, and `pnpm changeset:publish`