Commit Graph

2 Commits

Author SHA1 Message Date
null da8e457e97 fix(docs): two documents claimed files that must not exist
doc-claims.sh could not run on this tree until the previous commit, and its
first run found both immediately.

docs/data/README.md illustrated the wrong place to put an asset by naming
`docs/data/logo.webp` in backticks. A backticked path is a claim the file
exists, so the example of where NOT to put a file asserted that a file was
there. Reworded to name the two directories instead, both of which exist.

project-readme-template.md linked docs/architecture/Engineering_Reference_Manual.md,
a document the template does not ship and most projects will never write. It
now points at docs/architecture/README.md, which every scaffolded project has,
and says to name a reference manual beside it once there is one.

Left unfixed, every project adopting this template would inherit a red
doc-claims from its first day, and a permanently red gate is one everybody
learns to ignore -- audit-gate.mjs makes that argument at length about npm
advisories, and it applies here.

This is the third instance this session of one shape: a document that
describes an absent or forbidden path becomes an assertion that it exists.
The others were docs/planning/FUTURE.md in BATCH_LEDGER.md and an `Exempt:`
line inside a code fence.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-17 22:45:35 -05:00
null 6965915dbd chore(repo): put the template under version control
The basis for every project here was itself unversioned: no .git, no remote,
no history. Changes to it had no diff and no revert, and two of its own guards
could not run at all -- doc-claims.sh and doc-triggers.py both read git
history, so the script written to catch documentation drift could not be run
against the documents that define drift.

This is the tree as it stands, including work that until now existed only as
loose files on disk: WORK_CYCLE.md, TOOLS.md, the Portainer image-line fix in
deploy.py, the status vocabulary corrected to the four words the conformance
checker actually enforces, the Exempt: mechanism documented, and the Forgejo
instance named in README.md.

secrets.sh --tracked reports one candidate, migrate.sh:480. It is the comment
documenting the three Postgres credential shapes that script redacts, with
literal placeholders, and it is left alone deliberately: GUARDS.md section 2
is that a source-grep guard must tell code from the comment about code, and
deleting an explanation to quiet a scanner is the failure it names.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-17 22:44:26 -05:00