Files
Pouya LajevardiandClaude Opus 5 f3138a0a79
Build and deploy / build-and-deploy (push) Failing after 4s
feat: build step 4 — /mediation/, /arbitration/, /med-arb/; source ADRIC's rules
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
2026-08-28 17:06:27 -04:00

1.7 KiB

The extracted text behind ../adric-rules.md

Why this directory exists, and why it matters more here than for ADRIO. Every term count in ../adric-rules.md — including Finding 1, which corrected a rule-set name docs/01 had directed onto a public page — was run against these extracts, not against the raw HTML. R14: a count taken from an artefact nobody can reach is unverifiable by construction.

And unlike the ADRIO fetch, the HTML digests here do not reproduce. The served pages change on every request. ../adric-rules.md §Provenance records the two measured digests and the four causes read out of the diff. The extracts below are byte-stable across those re-fetches — verified, not assumed: a second fetch of the mediation-rules page produced different HTML and an identical .txt.

So for these pages, the .txt files are the artefact and the digests are only a record of what was fetched.

Reproducing

curl -sSL -o <slug>.html "https://adric.ca/rules-codes/<path>/"
node ../adrio-extract/extract.mjs <slug>.html > <slug>.txt

The four URLs and their slugs are in the provenance table of ../adric-rules.md.

extract.mjs is not duplicated here. It is the same unmodified script committed at ../adrio-extract/extract.mjs, and a second copy is a second thing to keep true — CLAUDE.md's single-source rule applied to a tool rather than to a fact. If you change it, both reference documents' counts have to be re-run.

The one command that reproduces Finding 1

for f in *.txt; do
  printf '%-40s %s\n' "$f" "$(grep -o -F 'Model Mediation Rules' "$f" | wc -l)"
done

Expect 0 on all four. grep -o -F 'National Mediation Rules' returns 10 on rules-codes__national-mediation-rules.txt.