Found by the hub audit of Blog. Run stamp audit run 2026-08-05T21:57:38Z | hub 01507a0, read at main@2b132e4. Findings are a point-in-time snapshot, so re-run before acting.
These are not produced by spec/audit.py. They come from the hub's scripts/prose_lint.py, run over this repository with content/, public/, themes/, and resources/ excluded, which is the scope this repository's own conventions set. Reproduce with:
python3 <hub>/scripts/prose_lint.py --exclude content --exclude public --exclude themes --exclude resources .
All 17 are in files this repository authors. None is in carried or vendored content. Each was read individually rather than counted, and 16 of the 17 are genuine.
Clause-Joining Semicolons (6)
The rule wants a comma or two sentences. Every one of these joins two independent clauses.
| Location |
|
OPERATIONS.md:80 |
caddy reload POSTs to the admin endpoint; the watcher reloads in process |
OPERATIONS.md:176 |
this repo owns the artifact; the host owns where a release may be written |
OPERATIONS.md:186 |
fixed on the host; a pipeline that needs the contract to say something different |
TODO.md:31 |
measured at well under a second by hand; what is unproven is that a pipeline run |
TODO.md:104 |
within about half a minute of accepting; a request that never draws one is inert |
deploy/README.md:110 |
Set both or neither; half a pair is rejected as the typo it is |
British Spellings (5)
| Location |
Fix |
OPERATIONS.md:231 |
behaviours to behaviors |
deploy/README.md:197 |
defence to defense |
deploy/README.md:219 |
behaviours to behaviors |
deploy/README.md:231 |
honouring to honoring |
deploy/make-release.sh:51 |
honoured to honored |
Comment Sentences Wrapping Across Lines (4)
One sentence per line. Split at the sentence boundary rather than reflowing.
.github/workflows/deploy-site-task.yml:35
checks/check-live-urls.sh:77
checks/check-live-urls.sh:99
checks/check-live-urls.sh:149
Comment Opening in Lowercase (1)
.github/workflows/deploy-site-task.yml:139 opens on the lowercase tool name rsync. Capitalize, or restructure so the sentence does not open on it.
Not a Violation, and Not to Be "Fixed" (1)
layouts/rss.xml:51 reports charset-unknown: COPYRIGHT SIGN (U+00A9) is in no tier.
Leave it alone. This is a gap in the hub's character-set tiers, not a defect here. The sign is emitted into generated feed output, where the alternative is an ASCII transliteration in a machine-read document. The linter reports charset-unknown rather than pass or fail precisely because it cannot classify it. It is raised upstream as an escalation and is the hub's to resolve. Any repository generating a feed or a rendered document hits the same gap.
Scope
One focused PR for this class, per AUDIT.md section 10. The seven stale verbatim carries are filed separately and are not part of this one.
Found by the hub audit of
Blog. Run stampaudit run 2026-08-05T21:57:38Z | hub 01507a0, read atmain@2b132e4. Findings are a point-in-time snapshot, so re-run before acting.These are not produced by
spec/audit.py. They come from the hub'sscripts/prose_lint.py, run over this repository withcontent/,public/,themes/, andresources/excluded, which is the scope this repository's own conventions set. Reproduce with:All 17 are in files this repository authors. None is in carried or vendored content. Each was read individually rather than counted, and 16 of the 17 are genuine.
Clause-Joining Semicolons (6)
The rule wants a comma or two sentences. Every one of these joins two independent clauses.
OPERATIONS.md:80caddy reloadPOSTs to the admin endpoint;the watcher reloads in processOPERATIONS.md:176;the host owns where a release may be writtenOPERATIONS.md:186;a pipeline that needs the contract to say something differentTODO.md:31;what is unproven is that a pipeline runTODO.md:104;a request that never draws one is inertdeploy/README.md:110;half a pair is rejected as the typo it isBritish Spellings (5)
OPERATIONS.md:231behaviourstobehaviorsdeploy/README.md:197defencetodefensedeploy/README.md:219behaviourstobehaviorsdeploy/README.md:231honouringtohonoringdeploy/make-release.sh:51honouredtohonoredComment Sentences Wrapping Across Lines (4)
One sentence per line. Split at the sentence boundary rather than reflowing.
.github/workflows/deploy-site-task.yml:35checks/check-live-urls.sh:77checks/check-live-urls.sh:99checks/check-live-urls.sh:149Comment Opening in Lowercase (1)
.github/workflows/deploy-site-task.yml:139opens on the lowercase tool namersync. Capitalize, or restructure so the sentence does not open on it.Not a Violation, and Not to Be "Fixed" (1)
layouts/rss.xml:51reportscharset-unknown: COPYRIGHT SIGN (U+00A9) is in no tier.Leave it alone. This is a gap in the hub's character-set tiers, not a defect here. The sign is emitted into generated feed output, where the alternative is an ASCII transliteration in a machine-read document. The linter reports
charset-unknownrather than pass or fail precisely because it cannot classify it. It is raised upstream as an escalation and is the hub's to resolve. Any repository generating a feed or a rendered document hits the same gap.Scope
One focused PR for this class, per AUDIT.md section 10. The seven stale verbatim carries are filed separately and are not part of this one.