Skip to content

docs(readme): drop the docs/ file count, which was true once and cannot stay true - #888

Open
wshallwshall wants to merge 1 commit into
mainfrom
claude/amazing-chatelet-843d9d
Open

docs(readme): drop the docs/ file count, which was true once and cannot stay true#888
wshallwshall wants to merge 1 commit into
mainfrom
claude/amazing-chatelet-843d9d

Conversation

@wshallwshall

Copy link
Copy Markdown
Collaborator

What

docs/README.md line 3 opened with "There are 377 markdown files under docs/". The real
count is 285. The sentence now carries no number.

-There are **377 markdown files** under `docs/`. Most of them are maintainer planning history, not
-documentation. This page exists so you do not have to guess which is which.
+Most of `docs/` is maintainer planning history, not documentation. This page exists so you do not
+have to guess which is which.

Where 377 came from

It was correct the day it was written, and has never been updated. dc3a7630b added the index on
2026-07-31; its parent 304a93b85 carries exactly 377 markdown files under docs/. The author
counted the tree before adding the index, so the claim shipped off by the one file being written.

The count steps rather than drifts. Measured through the GitHub API at each of the six commits that
have touched this file:

commit date actual docs/**/*.md
304a93b85 2026-07-31 377 (parent; the number written)
dc3a7630b 2026-07-31 378
fdec72cac 2026-08-06 412
123d08b65 2026-08-06 311
921db74a1 2026-09-01 280
b9f4f3810 2026-09-04 285

The tree lost about a hundred markdown files between 2026-08-06 and 2026-09-01. Two of those six
commits are ADR 0160 untracking passes, which move maintainer material into the vault clone.

Two hypotheses were checked and both fail. The primary checkout holds zero untracked or
gitignored .md under docs/, so 377 did not count vaulted files a plain find cannot see. The
vault clone holds 585 .md under docs/, which is not a 92-file top-up either.

Why no number and no pinning test

A pinned count would assert a figure whose meaning depends on which checkout reads it, inside a
file whose very next paragraph says docs/ is deliberately partial. The sentence's job is to tell
a reader that most of docs/ is maintainer planning history and that the index exists so they need
not guess which is which. That survives without a count.

Deliberately not touched: docs/BACKLOG.md line 6912 records "347 markdown files" as part of a
dated re-measurement inside a shipped item. A dated measurement says when it was true, so it is a
record rather than a claim that rots. No ledger row is needed for this change and none is added, so
this does not contend with the nine open PRs queued against BACKLOG.md.

Checks

Run locally, all green:

  • pre-commit run --files docs/README.md -- ledger gate, forbidden-content, control characters,
    username-as-access-key, gitleaks all Passed; the Python and workflow hooks skipped, no such files.
  • python scripts/docs/link_check.py docs -- 4847 relative links across 285 markdown files, every
    one resolves.
  • pytest tests/test_dangling_citation_check.py tests/test_link_resolution.py tests/test_ech_record_premise.py -- 75 passed.
  • pytest tests/test_private_paths_stay_ignored.py -- 35 passed (it is the only test file that
    mentions docs/README.md, in comments about the "Start here" section, which is untouched).

Not run, and not applicable: ruff, mypy, and the rest of pytest. No Python changed.

One instrument note for a reviewer repeating this: link_check.py docs/README.md reports
0 relative links in 0 markdown files and exits 0. It takes a directory, so the file form is a
false green. The run above passes docs.

Full history is not reachable from a local clone here -- this worktree and the primary are both
depth-1 shallow, where git log -S and --diff-filter=A name the single commit for every string
and every file. The table above came from the GitHub API instead.

Co-Authored-By: Claude Opus 5 noreply@anthropic.com

🤖 Generated with Claude Code

…ot stay true

docs/README.md opened with "There are **377 markdown files** under `docs/`".
A plain `find docs -name "*.md" | wc -l` returns 285.

377 was correct the day it was written and has never been updated since. The
index was added by dc3a763 on 2026-07-31, and its parent 304a93b carries
exactly 377 markdown files under docs/. The author counted the tree before
adding the index, so the claim shipped off by the one file being written.

The count does not drift slowly, it steps. Measured through the GitHub API at
each of the six commits that have touched this file:

  304a93b  2026-07-31  377   (parent; the number that was written)
  dc3a763  2026-07-31  378
  fdec72c  2026-08-06  412
  123d08b  2026-08-06  311
  921db74  2026-09-01  280
  b9f4f38  2026-09-04  285

The tree lost about a hundred markdown files between 2026-08-06 and 2026-09-01.
Two of those six commits are ADR 0160 untracking passes, which move maintainer
material out of this tree and into the vault clone.

Two hypotheses for the gap were checked, and both fail. The primary checkout
holds zero untracked or gitignored .md under docs/, so 377 did not count
vaulted files that a plain find cannot see. The vault clone holds 585 .md under
docs/, which is not a 92-file top-up either.

So the sentence carries no number, and no test pins one. A pinned count would
assert a figure whose meaning depends on which checkout reads it, inside a file
whose next paragraph says docs/ is deliberately partial. The sentence's job is
to tell a reader that most of docs/ is maintainer planning history, and that
the index exists so they need not guess which is which. That survives intact.

Deliberately not touched: docs/BACKLOG.md line 6912 records "347 markdown
files" as part of a dated re-measurement inside a shipped item. A dated
measurement says when it was true, so it is a record rather than a claim that
rots.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant