A prose-standards sweep ran against an in-flight UMS branch (the session's
review learnings, touching shared/coding/least-flexible-tool.md,
shared/workflow/{adversarial-self-review,algorithmatize-checks,fixtures-are-not-evidence,self-review-fallback,claim-pr}.md
and self-review-fallback.cases.md). That branch has no PR open yet, so the
findings are recorded here rather than on a thread, and whoever picks the branch
up should apply them before opening it.
24 findings. The first is CI-blocking and was verified by fetching and
running the exact checker CI uses
(Morrison-Lab/gha/check-new-line-breaks@fdaeccc4, the SHA pinned at
.github/workflows/validate.yml:301) against git merge-base origin/main HEAD
--- exit 1 with exactly these eight errors, not predicted:
HIGH
- Eight added lines fail
new-line-breaks (fail: 'true', diff-scoped):
least-flexible-tool.md:147,157; adversarial-self-review.md:93;
algorithmatize-checks.md:750,755; fixtures-are-not-evidence.md:253;
self-review-fallback.md:182,192. Each is >=80 stripped characters with a
mid-line semicolon. least-flexible-tool.md:147 is 522 visible characters.
algorithmatize-checks.md:757 --- a Do/Don't block with only the Do.
CLAUDE.md's "Record both the pattern and the anti-pattern" requires both,
and requires deriving the missing half rather than omitting it. The retired
behaviour is in the prose above and never labelled.
adversarial-self-review.md:77 --- in its words binds to the diff,
five noun phrases from the intended referent (the reviewer). The wrong
reading is fluent, which is ambiguous-reference.md's dangerous case.
least-flexible-tool.md:147 --- one 522-character sentence, three
semicolon-joined independent clauses each with its own because. Past
plain-prose.md's limit, and it is the same line failing CI in (1).
MEDIUM
5-6. self-review-fallback.cases.md:238/:242 state the same claim and the
same citation four lines apart; :213 restates :197-200 near-verbatim.
7. cases.md:216 --- "the primary" widens silently from claude-review to
"same-vendor readings", and the table at :222-225 contradicts the sentence.
8-9, 11, 13-14. Ambiguous pronouns: adversarial-self-review.md:83 (reading it), :79 (however hard it worked), fixtures-are-not-evidence.md:243
(what exposed it), least-flexible-tool.md:147 (two pronouns binding to
-c rather than to COMMENT_FLAG_RE), claim-pr.md:223 (the Don't above,
four candidates).
10. adversarial-self-review.md:90 --- a Do half too abstract to violate
("discount it by however much of its reasoning came from the artifact" names no
observable act), against CLAUDE.md's own requirement.
12. algorithmatize-checks.md:748 vs :750 --- the scope claim ("both under
outcomes above") contradicts the file's own taxonomy at :588-590.
15. 82 of 105 non-blank added lines exceed 80 characters, median 148, max 607,
against host files running 12/228 and 45/233 on main.
LOW
16-24: a forward reference (self-review-fallback.md:191), two more ambiguous
referents, a subject/verb mismatch with neither over eleven items
(:187), a clause-referring which with a noun in the way, one
"not merely X, they were Y" antithesis (ai-tells.md's named biggest tell) that
is also a comma splice, a mechanism restated within one file, an undated count,
and a quotation cited to the PR rather than to the comment permalink.
Checked and clean
All back-references in the added text resolve; only one directional-word hit,
and it is a back-reference; the adversarial-self-review.md and
self-review-fallback.md additions are genuine increments over the sections
they sit under rather than restatements.
Note
Filed rather than fixed because the session that produced the branch ran out of
quota. Finding 1 is the one that must be done before the PR opens; the rest are
ordinary prose-review work.
A prose-standards sweep ran against an in-flight UMS branch (the session's
review learnings, touching
shared/coding/least-flexible-tool.md,shared/workflow/{adversarial-self-review,algorithmatize-checks,fixtures-are-not-evidence,self-review-fallback,claim-pr}.mdand
self-review-fallback.cases.md). That branch has no PR open yet, so thefindings are recorded here rather than on a thread, and whoever picks the branch
up should apply them before opening it.
24 findings. The first is CI-blocking and was verified by fetching and
running the exact checker CI uses
(
Morrison-Lab/gha/check-new-line-breaks@fdaeccc4, the SHA pinned at.github/workflows/validate.yml:301) againstgit merge-base origin/main HEAD--- exit 1 with exactly these eight errors, not predicted:
HIGH
new-line-breaks(fail: 'true', diff-scoped):least-flexible-tool.md:147,157;adversarial-self-review.md:93;algorithmatize-checks.md:750,755;fixtures-are-not-evidence.md:253;self-review-fallback.md:182,192. Each is >=80 stripped characters with amid-line semicolon.
least-flexible-tool.md:147is 522 visible characters.algorithmatize-checks.md:757--- a Do/Don't block with only theDo.CLAUDE.md's "Record both the pattern and the anti-pattern" requires both,and requires deriving the missing half rather than omitting it. The retired
behaviour is in the prose above and never labelled.
adversarial-self-review.md:77---in its wordsbinds to the diff,five noun phrases from the intended referent (the reviewer). The wrong
reading is fluent, which is
ambiguous-reference.md's dangerous case.least-flexible-tool.md:147--- one 522-character sentence, threesemicolon-joined independent clauses each with its own
because. Pastplain-prose.md's limit, and it is the same line failing CI in (1).MEDIUM
5-6.
self-review-fallback.cases.md:238/:242state the same claim and thesame citation four lines apart;
:213restates:197-200near-verbatim.7.
cases.md:216--- "the primary" widens silently fromclaude-reviewto"same-vendor readings", and the table at
:222-225contradicts the sentence.8-9, 11, 13-14. Ambiguous pronouns:
adversarial-self-review.md:83(reading it),:79(however hard it worked),fixtures-are-not-evidence.md:243(
what exposed it),least-flexible-tool.md:147(two pronouns binding to-crather than toCOMMENT_FLAG_RE),claim-pr.md:223(the Don't above,four candidates).
10.
adversarial-self-review.md:90--- aDohalf too abstract to violate("discount it by however much of its reasoning came from the artifact" names no
observable act), against
CLAUDE.md's own requirement.12.
algorithmatize-checks.md:748vs:750--- the scope claim ("both underoutcomes above") contradicts the file's own taxonomy at
:588-590.15. 82 of 105 non-blank added lines exceed 80 characters, median 148, max 607,
against host files running 12/228 and 45/233 on
main.LOW
16-24: a forward reference (
self-review-fallback.md:191), two more ambiguousreferents, a subject/verb mismatch with
neitherover eleven items(
:187), a clause-referringwhichwith a noun in the way, one"not merely X, they were Y" antithesis (
ai-tells.md's named biggest tell) thatis also a comma splice, a mechanism restated within one file, an undated count,
and a quotation cited to the PR rather than to the comment permalink.
Checked and clean
All back-references in the added text resolve; only one directional-word hit,
and it is a back-reference; the
adversarial-self-review.mdandself-review-fallback.mdadditions are genuine increments over the sectionsthey sit under rather than restatements.
Note
Filed rather than fixed because the session that produced the branch ran out of
quota. Finding 1 is the one that must be done before the PR opens; the rest are
ordinary prose-review work.