Files
adr-sml/docs/03-content-spec.md
T
Pouya LajevardiandClaude Opus 5 0f7595b602 feat: eyebrow 14px and one small-text floor; fix a site-wide reflow defect; stamp TTL; §4 bars the struck universal
Pouya's five rulings of 2026-08-31, after 64bce10. One commit, because AGENTS.md
entry (aj) covers all five and the review fixes interleave across them —
recorded here rather than left to be inferred.

1. THE EYEBROW, 13 -> 14px, at the one token definition. `--text-eyebrow` is
deliberately NOT an alias of `--text-sm` despite sharing its value: the two move
for different reasons, and aliasing would mean a change to body-meta type
silently moving every eyebrow. Sweep by rendering, 22 pages x 2 widths, 801 mono
instances: 441 carry `.eyebrow`, 420 now at 14px, 21 held at 11px. Zero of 801
below 4.5:1.

Header check, which Pouya asked for explicitly: nothing header-side consumes the
token, `--header-h` is 81px, and the sticky header measures exactly 81.00px at
every width from 66rem up with the CTA on `.header-inner`'s content edge. Nothing
overflowed, so nothing was improvised.

2. /contact/'s LABELS RAISED, AND THE FLOOR CLAIM REWRITTEN BECAUSE THE RULING'S
PREMISE WAS FALSE. The ruling asked docs/02 to record the tagline as "the ONLY
sub-14px text on the site". It is not: the `--text-xs` 12px rung has ten
declaration sites and 130 elements rendering at 12px. So docs/02 records the
claim that IS verified — `--text-2xs` has one consumer in the repository — and
enumerates the 12px rung as a separate treatment. Writing a false claim into the
spec because the conclusion was handed down is the move the rules forbid.

A third block moved that the ruling did not name: /bio/'s ten <h2>s and its strap
were copies of five of `.eyebrow`'s six declarations at 11px — the same escape the
footer headings were. docs/02 justified holding them by the one-page PDF
constraint; measured, `@media print` sets both to 7pt, so the screen size never
reached the PDF and that was never the reason.

Consolidating them DID change the printed sheet, because the missing sixth
declaration was `font-weight`: 500 grew the PDF 89,496 -> 91,151 bytes. Print
therefore freezes 400, the committed PDF stays byte-identical (10 differing
bytes, all /CreationDate and /ModDate), and unifying is Pouya's call.

3. THE REFLOW DEFECT WAS SITE-WIDE AND /bio/ WAS NOT THE BINDING CAUSE.
`white-space: nowrap` on `SiteHeader .brand-name` held all 22 pages 63px over at
320px/root 32. Eight cause-specific fixes, no `overflow-x` anywhere; all eight
produce byte-identical geometry at root 16. `Pill` is marked in docs/02 as the
backstop it is — the real cause was `PracticeCard`'s rem-based padding, and with
it clamped "Construction" goes from 94x220 in six two-character lines to 158x85 in
two.

Three instrument findings now in docs/02, each of which hid a real defect:
`break-word` does not reduce min-content and `anywhere` does;
`getBoundingClientRect()` reports border boxes, so an element sweep cannot see
text spilling outside its own box; and `mobile: true` emulation expands the
layout viewport, so `scrollWidth - innerWidth` reads 0 while the reader still
scrolls sideways.

4. TTL STAMPED `ENABLED` in §7, with `DISABLED` at first verification recorded
rather than overwritten. Q60 narrowed to its second half and OPEN: no record has
been watched to vanish, and `ENABLED` proves the setting, not the behaviour.
R19's sweep found three stale copies outside §7; all now defer to it. R19 itself
was not edited — it points at §7 rather than carrying state, which is the
property that made it work.

5. §4 GAINS THE STRUCK-UNIVERSAL ROW, citing the committed ontario.ca extract and
cross-referenced to `check:claims`'s `struck-universal-q39`. It bars the claim in
BOTH directions: the commercial half is Pouya's attributed position, not a
verified fact. The row immediately caught two places asserting it flatly —
`SiteHeader.astro` and §9 Q33 — both now attributed. `check:claims` unmodified;
still frozen.

REVIEW: adversarial-reviewer, two rounds, 16 findings, ALL ACCEPTED, NONE
DECLINED. claims-auditor did not run (D20). Eight of round 2's ten were defects
in round 1's own fixes.

Round 1's blocking finding was a defect in my own record: I wrote that every
reflow residual was zero at "root 16 and root 32, 286 measurements". Two ways of
simulating 200% text are NOT equivalent, because media-query `rem` resolves
against the DEFAULT font size, not the root element's. Under the method docs/02
itself prescribes the site is 944px over on 21 pages and 508px on / at 1280, and
304px at 1920 — nav clipped mid-word, Practice/Fees/Contact and the CTA
off-screen, WCAG 1.4.4 with loss of functionality. My 286 excluded exactly the
widths where the defect lives.

NOT FIXED, DELIBERATELY: the cause is `flex-wrap: nowrap` on `.nav-list` above
66rem, a locked step-1 decision, and the standing instruction is to stop and
report rather than improvise a header change. It is now a blocking item on
docs/06's cutover checklist, ticked only by ruling on it — "not by re-measuring
it with the method that reports zero".

Round 2 also caught: a 63,743-byte figure that was the `cmp -l` differing-byte
count rather than the 1,655-byte size delta; a lost-navigation list naming
Med-Arb, which is not in the masthead at any width, while omitting Contact; the
tagline's justification left recorded at 13px, where one clause of it is false at
14px (20px of document overflow at 1216 with a seventh nav item); my own label
raise reintroducing a 38px element overflow at the width just ruled on; two
copies of the eyebrow treatment left at weight 400; three stale residual tables;
and the min-content explanation duplicated six times in src/.

VERIFIED, exit statuses read directly, never through a pipe: build 0 (22 pages),
check 0 (0 errors/0 warnings/0 hints), check:claims 0, og:proof 0, check:intake 0,
lint 0, minifier tripwire clean, TODO in dist 0 with a source sanity check.
Overflow: 374 measurements over 22 pages, every one zero, row counts asserted
before reading, with positive controls (119px at width 200, 319px at root 64).
Lighthouse 0, run three times with identical category scores: perf 99 on / and
100 elsewhere, a11y 100, best practices 100, SEO 100 on all indexable pages,
CLS 0.000. / sits at LCP 2.03s against a 2.0s budget, unchanged by this work.

The zsh `$VAR` word-split trap fired twice more and both times read as a clean
pass; caught only by asserting row counts first. Two of my own instruments were
wrong before they were right: a `grep -F '0.875rem'` state check that could never
match because Lightning CSS writes `.875rem`, and a probe whose inline
`!important` was outranked by a running CSS transition.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Md3GndFqWPzK78xAoebsg5
2026-08-31 15:44:13 -04:00

32 KiB
Raw Blame History

03 — Content and voice

Authority: AGENTS.md §4 (claim register) and §5 (audience model). Source material: PL_ADR_Personal_Branding_Strategy_Brief.docx (2026-05-26) and ADR_Site_Content_Brief_for_Claude_Design.md (2026-05-26).


The one rule

Every factual claim traces to AGENTS.md §4 Verified. Read the Forbidden table before writing any number, statistic, or superlative. If you need a fact you do not have, write TODO(pouya): <exact question> and log it in §9. Do not infer, do not soften, do not carry anything over from the old site.

When a fact is [unestablished], write around the capacity question

Ratified by Pouya 2026-08-28 as a reusable pattern, with the instruction that it will recur. §4 records licence status as [unestablished] and says: do not assert it, do not deny it. Copy that addresses the question at all must therefore pick neither side — and the trap is that both obvious phrasings pick one.

The worked example, which took three attempts and two audits:

Attempt Copy Why it failed
1 "I do not give legal advice" "Do not" is an election — it implies entitlement withheld by choice. Flagged by audit 1
2 "I cannot give legal advice" "Cannot" is a denial of capacity. Flagged by audit 2
3 "I act as a neutral. I do not act for a party in a matter I take, and each party should have their own legal advice." Makes no capacity claim at all

Both audits were right, and that is why the third version works. Attempts 1 and 2 are opposite answers to the same question, so flagging both is not inconsistency — it is the correct finding twice. Pouya: "'do not' elects, 'cannot' denies, and §4 says do neither. The shipped sentence makes no capacity claim at all — it describes the role and points the reader somewhere useful."

The pattern, stated for reuse:

Do not look for a softer way to answer the capacity question. Any word that answers it — cannot, do not, am not, is not permitted, is not qualified — takes a side of a fact this register does not hold. Instead write the sentence so the question does not arise: state the role, state the consequence for the reader, and stop.

Three tests before shipping such a sentence. It fails if any is yes:

  1. Could a reader infer from it that he is entitled to do the thing?
  2. Could a reader infer from it that he is not?
  3. Does it contain a verb of capacity or permission attached to him at all?

Where this will come up next: /practice/ (step 5) and /for-parties/, both of which have to tell an unrepresented party what the neutral will and will not do for them — the exact place the "cannot" phrasing feels most natural and is most wrong.


Voice

Restrained, precise, and unhedged. The reader is usually a lawyer. They detect padding instantly and discount everything after it.

Do:

  • Short declaratives. "I read the contract and the code." Not "clients benefit from a uniquely multidisciplinary perspective."

  • First person singular. This is a practitioner brand — "I", not "we", not "the practice". The old site's "we" implied a firm that does not exist.

  • Concrete nouns. Lien claim. Change order. System Impact Assessment. Model card. Minutes of settlement. Specificity is the credential.

  • Name the limits — but name the right ones. This bullet carried the model sentence "Sole-arbitrator appointments follow the Q.Arb designation; co-arbitration work is available now" until 2026-08-26. Both halves were wrong and they were wrong in opposite directions, which is why it survived two audits: the first half understated (sole-arbitrator appointments are offered now and are not gated by Q.Arb — §4 Offerings), and the second was unsourced when written. §4 now carries rows for all three forms.

    The shape of the bullet still stands, so here is a sentence that fits it and clears the register: "I accept sole, party-appointed and co-arbitration appointments in commercial matters." ⚠️ THE SECOND SENTENCE IS STRUCK (2026-08-29). It read "The Q.Arb pathway commenced in August 2026; C.Med-Arb is the endpoint"; Q.Arb is held, C.Med-Arb is off the site, and §4's paired-disclosure condition that required a second sentence at all is dissolved. The limit this bullet names is now the SCOPE, not the stage — which is the durable half. "in commercial matters" is not optional — every §4 Offerings arbitration row is scoped commercial, family arbitration has its own NOT OFFERED row, and §4's NOT-NEGOTIABLE boundary records the unscoped class form as the struck universal (Q39). This model sentence was unscoped until 2026-08-28 while the shipped page it feeds was scoped; found by claims-auditor on re-audit, one file over from the same defect fixed in docs/04 earlier the same day.

    ⚠️ AND THE MEDIATION HALF IS THE OPPOSITE — Q56, ruled by Pouya 2026-08-30. DO NOT MIRROR THIS SCOPE ONTO MEDIATION. The scope above exists because of a legal gate: family arbitration in Ontario requires prescribed training, so "in commercial matters" is load-bearing there. Mediation has no such gate, §4's mediation row is unscoped on purpose. He mediates in all six published practice areas — construction, technology, energy, insurance, shareholder, cross-cultural — and §4's row now enumerates them (PRACTICE_AREAS in src/data/site.ts), each named under Q35(c)'s subject-matter publication gate. ⚠️ The six are the PUBLISHED areas, not the authorised subject-matter list, and Q35(c)'s gate is not spent by having been used six times. A seventh may be named where it clears that gate.

    (Q56's ruling had named five, which was four of the six areas plus the word "commercial", and this block called the list "illustrative of breadth, not a closed set" for one day. Pouya struck the hedge on 2026-08-31: "the register should match the site; 'illustrative' is a hedge covering a gap that has a correct value." Technology and energy are the two that were missing. The non-exhaustiveness clause was struck with the hedge in the same pass and restored the same day — his ruling supplied a correct value, it did not close the class.)

    The site-wide "Commercial Mediation" framing was under-describing the offering, and it was corrected rather than ratified as positioning. The asymmetry between the two halves is designed; a later editor tidying them into a matching pair would be reintroducing the defect.

    ⚠️ AND DO NOT TREAT ANY LIST OF THE CORRECTED SURFACES AS COMPLETE. Q56 named four. The sweep that implemented it changed thirteen shipped strings across five files, and adversarial-reviewer then found three more it had missed — the worst on /practice/, where "These describe the process the parties are choosing between, in commercial matters" scoped mediation with the two words never appearing in the same element, so no proximity grep could reach it. The command, and its limit:

    git grep -nEi 'commercial[^.]{0,60}mediat|mediat[^.]{0,60}commercial' -- src/
    

    That finds the adjacent form only. For the split form there is no pattern — read every occurrence of commercial in src/ and in dist/, and ask what each one is scoping.

    ⚠️ TEN LINES WERE DELETED HERE ON 2026-08-30, AND THE DELETION IS THE POINT. They read "'Pathway', never 'designation'", cited the struck Forbidden row as live, instructed that "the limit being named is the stage of the arc, stated plainly", and closed "Precision about what you cannot yet do makes the rest believable." Every one of those directs an implementer to write the form §4 now bars — eleven lines below this bullet's own strike notice, so one bullet said both things. The Q25 shape, in the copy deck an implementer is told to lift verbatim. The 2026-08-29 sweep missed it because git grep -nE 'Q\.?Arb' is line-anchored and not one of those ten lines contained the string. Found by claims-auditor on the round-2 audit. (No tribunal-secretary work — D14 removed the rate and bars offering it; see docs/07-fees.md.)

  • Plain words over Latin. "Without prejudice" survives because it is a term of art; inter alia does not.

Do not:

  • Any claim or implication of legal licensure. D13: the site asserts the JD and nothing more. Never "lawyer", "called to the bar", "licensed", "my law practice", "my litigation practice", "my clients", "acts for", "represents". Implication counts as much as assertion.

    The approved phrasing is "active litigation exposure" or "involvement in litigation and ADR matters" — never "practice" in that context. Pouya's wording, 2026-08-26. So: Director of Firm Operations at a Toronto litigation and ADR boutique, with active litigation exposure across construction, personal injury, POA, and SABS matters. Accurate, specific, and it claims nothing it should not. (This example read "with active exposure to" until 2026-08-28 — a third variant of the phrasing, three lines below the sentence naming the only two approved forms, in the one place where the wording IS the compliance. Found by claims-auditor on re-audit.)

    This framing is interim — see AGENTS.md §12 R1. Raise it with Pouya rather than letting it settle in by default.

  • Superlatives. No "leading", "premier", "top-rated", "best". They are unverifiable, they read as insecure, and marketing rules for regulated professions treat them as suspect.

  • Outcome language that could be read as a guarantee.

  • "Passionate", "dedicated", "committed", "proven track record", "results-driven", "leverage", "synergy", "solutions".

  • Hedges that erase the claim. The strategy brief warns specifically against softening the technical claim to "technologically literate" — the claim is engineering practice, so the copy says engineering practice.

  • Em-dash-heavy rhythm and tricolon padding. One idea per sentence.

  • Second-person sales copy on counsel-facing pages. /for-parties/ is the one page written to "you".


The core positioning statement

Reused, adapted, across the hero, the About page, and the PDF bio:

The dispute resolution practice of Pouya Lajevardi — a credentialed neutral with active litigation exposure and a practising machine-learning and infrastructure engineer. Built for commercial, construction, energy, technology, and cross-cultural disputes that turn on the contract, the code, the engineering documents, and the regulatory overlay around them.

Every version of this must survive the §4 check. It does: each element is verified.

AMENDED 2026-08-27 — AGENTS.md Q41(b). The statement read "disputes that turn on facts most neutrals take on faith: the contract…" and the comparative is struck. It was not restored, and Pouya gave two reasons, the second of which is the one to remember:

"That is an unverifiable empirical claim about other practitioners, and comparative claims must be factual and verifiable. It is also weaker copy: assert his capability, not the field's incapability. Rewrite to claim only about himself — 'built for disputes that turn on the contract, the code, and the engineering documents'. Same force, nothing to defend."

So the compliance objection and the editorial objection point the same way. The checklist item below — "any comparative claim is factual and verifiable" — had been overridden in practice by the fact that this paragraph was approved copy, which is how an unverifiable claim ends up inside the document that forbids it. The approved copy is what changed.

This is now the ONLY sanctioned form of the statement. Any earlier draft carrying the comparative is superseded, wherever it is quoted.

Approved headline options

From the content brief; all three sit honestly with the practice.

  1. A mediator who reads the contract, the code, and the room.recommended. The cleanest one-sentence statement of the moat, and rare because it is rare.
  2. Engineered for the cases that don't fit a courtroom.
  3. Disputes resolved by someone who has been on every side of one. Does not clear §4 as written (flagged 2026-08-26). "Every side" asserts having acted as party, as counsel, and as neutral; §4 verifies the neutral role and active litigation exposure, not the other two. Left in place so the option is not silently re-invented — but it cannot be chosen without a §4 row to choose it from.

The credential row

Three slots, never counts:

Slot Value Label
1 Q.Med ADRIC / ADRIO designation
2 JD + ML Legal training and engineering practice
3 EN · FA Bilingual practice

Slot 2's label changed on 2026-08-27 (Pouya, AGENTS.md Q37). It read "Law and engineering". His reasoning: "The parallel was doing the implying — a degree and a practice under one noun. The asymmetry is the honest part." A JD is a degree; engineering is a practice, and a verified one. Setting them in parallel invited the reader to supply the symmetry, and for "Law" the missing half is a licence — which D13 bars by implication as hard as by assertion. The replacement is longer and deliberately lopsided. Do not tidy it back into a parallel.

AND THE RULE IS NOT SCOPED TO THIS LABEL — AGENTS.md Q41(a), Pouya 2026-08-27. Q37 was asked about a credential label; the reasoning applies to every surface, prose included:

"Yes, Q37's reasoning reaches prose. The implication test applies everywhere, not just to labels. Prose has more room, so it is easier to satisfy: state the asymmetry explicitly rather than relying on a parallel construction to carry it."

Read the second half carefully, because it sets a higher bar for prose, not a looser one. Deleting the parallel is only half the job — a reader can still supply the missing symmetry from silence. Prose has room to say which half is which, so it must. Naming the legal half as training is what makes the licence implication impossible rather than merely absent.

THE SENTENCE IS A CONSTANT, NOT COPY TO BE RETYPEDASYMMETRY_LINE in src/data/site.ts:

"The two halves are not the same kind of thing, and the asymmetry is the honest part. A law degree on one side. A working engineering practice on the other. One is training I hold. The other is work I still do."

It lives beside ROLE for the reason that file gives: "these are the two where the wording IS the compliance." This paragraph previously quoted it inline and cited it as living at "/, §The approach" — and by then it had been typed into /about/ too, so there were three copies and two of them had already diverged: a comma here and on /, full stops on /about/, all inside the session that wrote them. Consume the constant on any page that needs the sentence. Do not retype it, do not paraphrase it, and do not quote a variant of it in a spec.

Fourth slot where the layout has one: Q.Arb over ADRIC / ADRIO designation — the label is byte-identical to the Q.Med slot's, because the two render side by side and any difference reads as a distinction being drawn. ⚠️ AMENDED 2026-08-29. It read "Q.Arb — commenced August 2026", and every stage form — "commenced", "in progress", "pathway", "not yet" — is now barred: Q.Arb is held (AGENTS.md §4), so a stage word understates a held credential. The acquisition date is recorded in §4 and is not published.

The fourth slot is no longer MANDATORY anywhere. It was, on /, under §4's paired-disclosure condition — that page says arbitrator in its opening sentence and the stage had to appear beside the offering. The condition is dissolved. / keeps the slot because §4's substitution principle wants a fourth credential where the layout has one, not because anything requires it.

The substitution principle (AGENTS.md §4): wherever the design wants a "how many", substitute a longer-arc credential. These are all true at launch and stay true; none grows by closing files.


Per-page copy notes

Home

Hero headline from the approved list. Positioning paragraph above. CTAs: Request a consultation → and How I work. The approach section makes the "two directions at once" argument — law and engineering converging on the same dispute — and keeps the infinity metaphor: disputes are loops; the work is redrawing the loop into a line. First person: "my mark", not "our mark".

⚠️ "law and engineering" IS THE STRUCK CONSTRUCTION. Do not lift this sentence into copy. The argument it names is Pouya's and stands; the noun pair carrying it is what Q37 struck and Q41(a) extended to prose. It reached the page once already, as "Law and engineering are not blended here" — the struck parallel relocated from the credential label into body copy, one day after it was struck, and strengthened by attributing both halves to him personally. A spec phrase describing an argument is not approved copy.

About

400600 words of narrative, then structured credentials. Tell the three tracks as one arc, not three lists: a JD and active litigation exposure; a parallel career in machine learning and infrastructure engineering; a company run alongside the practice — §4's wording; "alongside both" was a concurrency claim the register does not make.

⚠️ THE CREDENTIALING ARC IS STRUCK (2026-08-29, Pouya), AND SO IS /about/'s ARC SECTION. This paragraph required "the credentialing pathway from Q.Med through Q.Arb to C.Med-Arb… stated openly, with Q.Arb described as commenced August 2026". Q.Arb is held; C.Med-Arb is off the site; there is no pathway. The three-track story stays — law, engineering, a company — because that arc is about his working life, not about a credential. Only the credentialing arc goes.

The designation names expand as Qualified Mediator and Qualified Arbitrator — ADRIO's own forms, sourced in docs/reference/adrio-designations.md. (Chartered Med-Arbitrator was here too; the designation is real and stays in AGENTS.md §11 as a definition, but nothing on the site names it.) Never "Chartered Mediator-Arbitrator".

Omit any section that would be empty. No "Speaking" heading until there is a talk to list.

Mediation / Arbitration / Med-Arb

Procedural, specific, unembellished. Name the rules. Describe the formats. State what a party should expect to do and when. (This closed with "On /arbitration/, state the Q.Arb position in plain terms — what is available now versus what follows designation." Struck 2026-08-29: Q.Arb is held, and nothing follows designation.)

/med-arb/ addresses the procedural-fairness objection directly: the same neutral who heard a party's confidential caucus later decides the matter. Do not elide it. Explain the consent mechanics and when the process is inappropriate. Meeting the strongest objection is what makes the page worth reading.

Practice areas

Each page: dispute types, why this practice fits, what the process looks like, and the market context that makes the area live. Context comes from the strategy brief §IIIIV — Ontario's megaproject pipeline, Bill 40 and grid connection, the 2026 privacy statute, LAT volumes.

⚠️ "THE 2026 PRIVACY STATUTE" DOES NOT EXIST. Struck rather than corrected in place, so the phrase is not re-invented. Checked 2026-08-29; sourced in docs/reference/canada-privacy-technology.md.

Nothing enacted federally or in Ontario in 2025 or 2026 is a privacy statute. Bill C-27 — which would have enacted the Consumer Privacy Protection Act and the Artificial Intelligence and Data Act — died without royal assent when the 44th Parliament's first session ended, and was never reinstated. PIPEDA remains the operative federal private-sector statute, and Canada has no federal AI statute. The nearest real thing is federal Bill C-36 (45-1), introduced 15 June 2026, which would enact the Protecting Privacy and Consumer Data Act — a bill, at second reading, not law.

Caught before it reached a page, and only because the phrase was checked rather than trusted. Same failure mode as docs/01's "Model Mediation Rules" and the LAT gloss corrected the same day: a spec naming an instrument from recall, and an implementer with no reason to doubt it. Bill 40 in the same sentence turned out to be real — Bill 40 of the 44th Parliament, 1st Session, the Protect Ontario by Securing Affordable Energy for Generations Act, 2025 — but the number alone did not establish that, because bill numbers are reused every parliament. Cite the parliament and session.

What /practice/technology/ publishes instead is the real position, and it is better copy than the invented one: what is in force, what died, what is only a bill — and the genuinely useful part for a commercial audience, that no Canadian statute requires personal data to be stored in Canada. That is the assumption a great many data-residency clauses are drafted against, and it is quoted from the Privacy Commissioner's own guidance rather than concluded here.

Frame as positioning, not as history. "Built to facilitate procurement and subcontract disputes on Ontario's megaproject pipeline" — not "extensive experience resolving". The first is true and forward-looking. The second is neither.

Process

Five steps with real timing. Say what happens if the matter does not settle — counsel want to know the downside shape before they commit a client's day.

AMENDED 2026-08-27 — AGENTS.md Q43, and it overrides this section's previous reading. "Real timing" was being read as barring the word "typical", which is why the step-2 build shipped the five timings as bare numbers and escalated the question instead of framing them. Pouya ruled the other way:

"The five process timings are service commitments, same class as Q27's response time — not facts about Pouya, so they need framing, not a Verified row. Present them as the TYPICAL shape of an engagement, explicitly not a guarantee: mediation timing depends on party and counsel availability, which he does not control. Published as typical, they are honest and useful; published as commitments, the first matter that slips makes the page false."

So: the numbers do not change — softening them was never the fix and inventing them was never on. What "real timing" bars is a vague timing ("promptly", "in a matter of weeks"), not an honest statement of what the numbers are. The framing is PROCESS_FRAMING in src/data/site.ts and it is not optional: every page that renders the steps renders it, adjacent to the numbers rather than in a section lede above them. A reader who scans the strip and skips the lede has read a commitment.

Fees

Unblocked — Q4/Q14 answered, D14. Build from the confirmed card in docs/07-fees.md. Plain table, no "starting from" evasions, no "contact for pricing" after promising a rate card.

For parties

The one page in second person. Grade-9 reading level. Short sentences. Says explicitly: the mediator is a neutral and does not act for either party; each party should have their own legal advice; and the mediator does not decide who is right. Answers what it costs and what happens if you do not settle.

⚠️ THIS DIRECTIVE READ "the mediator is not your lawyer and cannot give you legal advice" UNTIL 2026-08-28, AND IT BREACHED D13 TWICE — in the file that warns, fifty lines above, that /for-parties/ is "the exact place the 'cannot' phrasing feels most natural and is most wrong".

  1. "not your lawyer" presupposes lawyer status. §4 Forbidden bars the word "lawyer" used of Pouya, and D13 treats implication as hard as assertion. A negation still carries the presupposition.
  2. "cannot give you legal advice" is attempt 2 in this file's own ratified table — "a denial of capacity" — and it fails test 3 and the compliance-checklist item, both added to this file in the same change set that left this line untouched.

The replacement is the ratified pattern applied verbatim: role, then consequence for the reader, and no verb of capacity. Found by claims-auditor on re-audit; the original sweep did not reach this section.

Insights

1,2001,800 words, monthly cadence (brief §VIII). Territories from §VII: process explainers · regulatory commentary · industry dispute commentary · anonymised reflections · technical explainers for lawyers · credentialing content.

Every piece links to at least one practice-area page. Anonymised reflections must be genuinely unidentifiable — not merely name-stripped. If a matter could be recognised by the parties to it, it does not run.

Launch article slate (D9)

Drafted by Claude, every word reviewed by Pouya before publication:

  1. What the Ontario data-centre build-out means for dispute resolution — technology + construction; the strongest single differentiator piece.
  2. When Med-Arb is the right answer, and when it is not — process explainer; feeds /med-arb/; high search intent, thin competition.
  3. Bill 40 and grid connection: a dispute-resolution read — regulatory commentary; establishes the energy niche.
  4. What a System Impact Assessment actually evaluates — technical explainer for lawyers; the clearest demonstration of the claim the whole brand rests on.
  5. Choosing a neutral: what counsel should actually ask — evergreen, useful, and it makes the case for this practice without arguing for it.

Compliance checklist — before any page ships

⚠️ EVERY ITEM HERE THAT BARS SOMETHING CITES ITS AGENTS.md §4 ROW. IT DOES NOT RESTATE IT — STRUCTURAL FIX, Pouya, 2026-08-31, after the third instance.

His ruling: "the checklist must CITE the §4 row, not restate it. Same single-source rule as §7 and operational facts." This file is what gets grepped; §4 is what is correct. Three times a line here paraphrased a §4 row, dropped a qualifier, and then flagged the copy a spec requires"no dollar figures" for §4's "attached to past matters", which forbade the rate card D8 commits to; "no testimonials" for §4's bar on endorsements of the practice or of Pouya, which forbade the institutional quotations docs/01 directs; and the licence-capacity item, which rejected the exact sentence the section above exists to bless. Each was caught by review, never by the checklist, and the row was never wrong.

So an item below names what to look for on the page, and which row decides it. Not both halves of the rule.

  • Every factual claim appears in AGENTS.md §4 Verified
  • Numbers that describe the practice — any count, rate, percentage, time or dollar figure about matters, hours, years, or outcomes. Decided by §4 Forbidden's counts of matters closed / hours mediated / years in ADR practice, settlement rates, resolution percentages, median time to award, aggregate value resolved; any dollar figure attached to past matters, and named or describable past matters. npm run check:claims counts-and-tenure sweeps dist/. ⚠️ The rate card is a different thing and no row reaches it: D8 commits to publishing it in full, D14 confirms the figures [verified 2026-08-26 — Pouya], and docs/01 requires /for-parties/ to answer "what it costs". A published price is an offer; a published statistic about past matters is what the old site fabricated
  • Third-party voices — decided by §4 Forbidden's testimonials, endorsements, quotes from counterparties. ⚠️ Scope is the whole question: that row reaches a third party praising the practice or Pouya. It does not reach an institution quoted about its own rules, from a committed source — which docs/01 §/med-arb/ directs, and which /mediation/, /arbitration/ and /process/ all do. Keep the source's superlatives inside the quotation marks
  • Superlatives and guarantee language — decided by §4 Forbidden's guarantees of outcome, or superlatives. check:claims superlatives sweeps dist/
  • Licensure, asserted or implied — decided by §4 Forbidden's two licensure rows and D13. The second of the two is the one that catches copy: it reaches phrasing that implies entitlement without saying so. check:claims licensure-of-pouya and acting-for-a-party sweep dist/
  • The licence-capacity question answered in EITHER direction — see When a fact is [unestablished] above, and §4's own note that its two licensure rows are verified directives not to publish, not a verified status. Check for cannot, do not, am not, not permitted, not qualified attached to giving legal advice, practising law, or holding a licence. ⚠️ The objection is to answering the capacity question, not to the words themselves — the approved sentence contains "do not" and passes: "I act as a neutral. I do not act for a party in a matter I take, and each party should have their own legal advice." That is role conduct, which he may state freely. check:claims capacity-phrasing sweeps dist/
  • Q.Arb — decided by §4's Q.Arb Verified row and its Forbidden row. The publishable form is Q.Arb (ADRIC / ADRIO); the acquisition date is recorded in §4 and is not published. check:claims q-arb-as-a-stage enforces the stage words and a date near the designation, on dist/. ⚠️ It cannot catch a stage expressed without naming the designation — the struck h1 "Available now, and open about the stage" matches nothing — and that gap belongs to the cutover claims pass, not to this checklist
  • C.Med-Arb appears nowhere — decided by §4's struck C.Med-Arb as a long-term designation goal row, which carries the reasoning and the deliberate deviation from the strategy brief. check:claims c-med-arb-struck sweeps dist/
  • A class statement about what Ontario law does or does not gate behind an arbitral designation — decided by §4 Forbidden's "Anyone may be appointed an arbitrator in Ontario" / "nothing in law gates the role" row, which carries the committed source and the reason the scoped replacement is attributed to Pouya rather than stamped. It bars the claim in both directions; this repository does not conclude a proposition of law. check:claims struck-universal-q39 sweeps dist/. (Added 2026-08-31, when Pouya ruled the §4 row into existence: this line could not exist before it, because an item here cites a row rather than restating a bar.)
  • A firm, a team, or offices that do not exist — §4 Forbidden rows the specific false artefacts ("Since 2009", "sixteen years", the London and New York offices, the company number, and the fictitious founder); the general rule is D16 — the boutique is never named, and the publishable form is Director of Firm Operations at a Toronto litigation and ADR boutique. check:claims fabricated-founder sweeps dist/
  • Contact page states that an inquiry creates no retainer and no mediatorparty relationship
  • Any comparative claim is factual and verifiable — Q41(b), closed 2026-08-27, which struck a comparative claim about other neutrals from this file's own positioning statement. Pouya: "comparative claims must be factual and verifiable… assert his capability, not the field's incapability."
  • Abbreviations expanded on §11 Glossary's authority only — and expansions for the five ADR designations checked against docs/reference/adrio-designations.md, not from memory. "Chartered Med-Arbitrator", never "Mediator-Arbitrator"