feat: build step 4 — /mediation/, /arbitration/, /med-arb/; source ADRIC's rules
Build and deploy / build-and-deploy (push) Failing after 4s

Three pages, five in the build, zero JavaScript. /arbitration/ carries §4's
paired-disclosure condition on four surfaces and Q39's struck universal appears
in no form. /med-arb/ meets the procedural-fairness objection at the level of
process design and ships deliberately without Pouya's own protocol commitments,
which are Q54.

docs/01 directed the mediation page to name the "ADRIC Model Mediation Rules".
No such document exists — 0 occurrences across all four of ADRIC's rules pages
against 10 for "National Mediation Rules"; "Model" belongs to the Model Dispute
Resolution Clause inside the rules. Caught only because R14 requires the source
before the claim. docs/reference/adric-rules.md + adric-extract/ carry it, with
the digest drift measured rather than assumed: the HTML changes per request, the
text extracts are byte-stable, so the extracts are the artefact.

Four review passes, 21 defects, and the pattern was mine: I wrote the Q54 gate
into the page and then breached it four times, then round 2 found two survivors
of round 1's own fixes and one defect round 1's fix created. Also removed a
<title> naming a practised role §4 does not grant, a habitual presupposing awards
issued, and a claim about what ADRIC's rules permit that my own reference doc
says is unsupported.

Two instrument failures caught before they became conclusions: touch targets
measured over file:// with no CSS loaded (uniform 18px, including on a .btn with
a 44px floor), and a schema.org validator call that parsed nothing and returned
0 warnings for everything. Both re-run with the instrument validated first.

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 17:06:27 -04:00
co-authored by Claude Opus 5
parent 2282183b4b
commit f3138a0a79
18 changed files with 2496 additions and 18 deletions
+36
View File
@@ -321,6 +321,42 @@ a:hover {
.section-head {
margin-block-end: var(--space-7);
}
/* THE AUTO-FIT GRID GUARD, IN ONE PLACE. `adversarial-reviewer` counted five
copies of the same five-line comment across three pages at step 4 — 25 lines
explaining 5 identical declarations — plus a sixth, differently worded copy on
`/about/`. That is this repo's own "a second copy is a second thing to keep
true", and D19's comment rule, both breached by a paragraph about a guard.
THE GUARD: `min(Nrem, 100%)`, never a bare rem. A bare rem floor is a HARD
minimum, so at a 200% default font size (root 32px — a real accessibility
setting, not page zoom) an 18rem floor becomes 576px and the track refuses to
shrink. Measured on `/`: 234px of document overflow at a 390px viewport, down
to 3px once the three grids took `min()`. docs/02 §Accessibility floor carries
the full table.
Set `--grid-min` on the element; default 18rem.
⚠️ NOT YET THE ONLY HOME, and the remaining copies are listed rather than
claimed swept. `git grep -n 'auto-fit' -- src`, 2026-08-28:
src/pages/index.astro:875 minmax(min(18rem, 100%), 1fr)
src/pages/index.astro:916 minmax(min(13rem, 100%), 1fr)
src/pages/about.astro:965 minmax(min(18rem, 100%), 1fr)
src/pages/about.astro:1007 minmax(min(16rem, 100%), 1fr)
Those four are on pages that already shipped; converting them after the
review cap would be an unreviewed change to live CSS. They move onto this
class at step 5, when `/practice/*` is in the same files. Until then a
correction here reaches three call sites, not seven — say that rather than
letting a reader believe the guard has one home. */
.grid-autofit {
display: grid;
grid-template-columns: repeat(
auto-fit,
minmax(min(var(--grid-min, 18rem), 100%), 1fr)
);
}
.section {
padding-block: var(--section-y);
}