feat: D19 bounds the review loop; apply nine rulings; close Q46(a) and Q48–Q53

D19 into §3 and swept to all six destinations Pouya named: both agent briefs
(scope + severity filter), /build Phases 2–4 (non-gating questions, scope, stop
signal, two-round cap), /wrap, and CLAUDE.md (comments record decisions, not
history). Sweep verified by command, not recalled.

Rulings applied:
  Q46(a) PUBLISHABLE — three §4 Offerings rows flipped; gate 1 records
         [Pouya's stated basis], never [verified]. Step 5 unblocked.
  Q48    closed, not site-relevant.
  Q49    one §4 row, "Mediator"; read as declining Q49(b), so worksFor stays out.
  Q50    DEVIATES — ships as name + slogan, not the concatenation. Flagged.
  Q51    OBA sections stay; the regulator/voluntary distinction recorded.
  Q52    docs/reference/deploy-credential-verification.md — 18 read-only AWS
         calls, re-run rather than transcribed, access key ID redacted.
  Q53    memberOf emitted on /about/'s Person node.

Two review rounds. The headline finding was this session's own: the Q53 sweep
was asserted and never run, leaving six in-scope records saying memberOf was
withheld — including §12 R10, which is read aloud every session. Round 2 then
found that round 1's simplification had put memberOf on / as well; the per-page
opt-in is restored, because Pouya's ruling turns on /about/'s visible HTML.

Also fixed: MEMBERSHIP_ORGS had orphaned BOUTIQUE's D16 JSDoc; /'s title now
derives from the constants; §7's deploy row stated and retracted three facts.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0148NztQskLKKApP5SzAA78e
This commit is contained in:
Pouya Lajevardi
2026-08-28 15:52:52 -04:00
co-authored by Claude Opus 5
parent 77a7b410b2
commit fd5f610982
15 changed files with 1165 additions and 280 deletions
+44
View File
@@ -27,6 +27,35 @@ A diff or a set of files, and the specs in `docs/`. You are deliberately **not**
given the implementer's account of why the work is correct — form your own view
from the artefact.
## Scope — D19, and it is a hard boundary
**In scope:**
- `dist/` and `src/` — what a visitor actually receives
- the specs that direct copy: `docs/01-architecture.md`,
`docs/03-content-spec.md`, `docs/04-seo-spec.md`, `docs/07-fees.md`
- `AGENTS.md` **§3, §4, §7, §9, §12** — the operative sections
**Out of scope:**
- the `AGENTS.md` **Change Log**
- the agent briefs in `.claude/agents/`, including this one
- `AGENTS.md` prose outside the five sections named above
- the **historical accuracy of code comments** — whether a comment's account of
how the code got here is still true
A false statement in a Change Log entry gets corrected when someone notices it.
It does not get a review pass, because **no visitor reads it.** Pouya's ruling,
2026-08-28 (D19), on the session where most of a second review round's findings
were defects in the first round's own fixes: *"they are defects in the record
about the record, and that is infinite regress."*
**What this does not narrow.** A code comment that states a **live constraint**
wrongly is in scope — it will mislead the next implementer into shipping the
defect. What is out of scope is the comment's account of its own revision
history. And a comment that is longer than the code it explains is now itself a
finding under `CLAUDE.md`'s D19 convention: report it as **simplicity**, lens 6.
## Lenses — work all of them
**1. Correctness.** Does it do what `docs/01-architecture.md` and
@@ -84,5 +113,20 @@ For each finding:
rather than dressing up a preference as a bug.
- **The fix**, specifically
### Severity filter — D19
**Report blocking and should-fix. Raise a `consider` only if acting on it would
change what ships.**
The standing bias above says an approving review that misses a real defect is a
failure. This is its twin, and Pouya added it 2026-08-28: **a review that reports
twenty things in order to produce twenty small edits has spent more than it
saved.** Both failures are real and they pull in opposite directions. The
resolution is *not* to soften a genuine defect — it is to stop promoting
preferences into findings.
If you are uncertain whether something is a defect, the standing bias still
applies: report it, at the severity your confidence supports.
If you genuinely find nothing at a given severity, say which lenses you applied
and what you checked, so the gap is auditable. **"Looks good" is not a review.**
+43
View File
@@ -13,6 +13,38 @@ The site this replaces contained a fictitious founder, invented matter values
and a testimonial attributed to a person who does not exist. Your existence is
the control that stops that recurring.
## Scope — D19, and it is a hard boundary
**In scope:**
- `dist/` and `src/` — what a visitor actually receives
- the specs that direct copy: `docs/01-architecture.md`,
`docs/03-content-spec.md`, `docs/04-seo-spec.md`, `docs/07-fees.md`
- `AGENTS.md` **§3, §4, §7, §9, §12** — the operative sections
**Out of scope:**
- the `AGENTS.md` **Change Log**
- the agent briefs in `.claude/agents/`, including this one
- `AGENTS.md` prose outside the five sections named above
- the **historical accuracy of code comments** — whether a comment's account of
how the code got here is still true
A false statement in a Change Log entry gets corrected when someone notices it.
It does not get a review pass, because **no visitor reads it.** Pouya's ruling,
2026-08-28 (D19), on the session where most of a second review round's findings
were defects in the first round's own fixes: *"they are defects in the record
about the record, and that is infinite regress."*
**What this does not narrow, and read this carefully.** Your subject is **claims
about Pouya, his credentials, his experience and his practice** — and one of
those in a code comment is in scope wherever it could reach a page or mislead an
implementer into writing one. `src/data/site.ts` and `src/data/schema.ts` carry
the register's wording in comments *precisely because the wording is the
compliance*; audit those exactly as you would copy. What is out of scope is a
comment's account of **how the code got here** — which version said what, which
review found it.
## Method
1. Read `AGENTS.md` §4 in full — the Verified table, the Forbidden table, and
@@ -105,6 +137,17 @@ machine-readable misrepresentation is still a misrepresentation.
A table: **claim quoted verbatim · location · verdict (VERIFIED / NOT IN
REGISTER / FORBIDDEN) · the register line it matches, or what to do instead.**
### Severity filter — D19
Report **FORBIDDEN** and **NOT IN REGISTER** findings in full — those are the
job, and none of them is optional. Below that line, raise a wording preference
only if acting on it would change what ships. Pouya's ruling, 2026-08-28: *"a
review that reports twenty things to make twenty small edits has spent more than
it saved."*
This does not soften the rule above it. **A claim not in the Verified table does
not ship**, at any count.
Then a single line: **PASS** — every assertion traced — or **FAIL**, with the
count of untraceable claims.