feat: build step 5 — /practice/ and six area pages; check:claims gates §4 in dist
Build and deploy / build-and-deploy (push) Failing after 5s

Step 5 ships /practice/ and the six practice-area pages (construction,
technology, energy, insurance, shareholder, cross-border) from one route, and
adds the mechanical §4 gate Pouya ruled for.

check:claims — §4 Forbidden becomes a build error
  scripts/check-claims.mjs greps dist/**/*.html for 10 patterns, each carrying
  the incident that put it there. It strips <style> and non-JSON-LD <script>
  first (a bare sweep for "leading" returned 26 hits, 25 of them
  var(--leading-body)), self-tests every pattern against fixtures before
  sweeping, and refuses a missing, empty or stale dist/. Wired into /build
  Phase 5 and both deploy paths.

Q54 — six conduct undertakings publish, and §4 gains a third class
  Conduct undertakings sit apart from credentials and offerings: the gate is
  that Pouya said it in terms. The strings live in CONDUCT_UNDERTAKINGS so a
  softening is one visible diff. (e) and (f) replace the third-person sentences
  already on /arbitration/ rather than joining them.

Q49, Q50 recorded as rulings. §7 records the SES us-east-1 stray identity's
deletion. R11 holds typescript at its current major, with the peer-range
reason recorded.

Three facts corrected, two of them already shipped
  - The LAT gloss said mediation "before filing and continuing after filing";
    the Tribunal names mediation for "Before you apply" only and its second
    sentence is about negotiation. An ellipsis in docs/01 had deleted it.
  - "Connection allocation" is not an Ontario term.
  - "The 2026 privacy statute" does not exist — Bill C-27 died without royal
    assent. Struck from docs/03 rather than corrected in place.

ADR Chambers struck from /arbitration/ and from docs/01 item 3 (Pouya,
2026-08-30): the source establishes what the firm publishes, not that an
outside neutral can be appointed under its rules.

claims-auditor gains a second lens — for every quoted source, whether the
sentence beneath stays inside what the quotation establishes. Four shipped
defects had that shape and none of them is greppable.

CLAUDE.md gains a convention: never truncate the output of a check you intend
to believe. `npm run check | tail -3` returns warnings, hints and a blank line
and drops the errors line; it was reported as passing four times while
astro check was exiting 1 with 10 type errors.

Gates, exit status read directly, not through a pipe:
  npm run check        exit=0
  npm run lint         exit=0
  npm run build        exit=0
  npm run check:claims exit=0

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Md3GndFqWPzK78xAoebsg5
This commit is contained in:
Pouya Lajevardi
2026-08-30 09:35:26 -04:00
co-authored by Claude Opus 5
parent f3138a0a79
commit 79b19a7bd0
32 changed files with 6715 additions and 116 deletions
+47 -6
View File
@@ -135,9 +135,36 @@ and it is the affirmative basis for the offering rather than a problem for it:
> at all times, including before filing at the LATAABS, and continuing
> negotiation discussions after a claim has been filed.
The Tribunal itself points parties at private mediation, **before filing and
continuing after filing.** That is exactly the space a privately retained
mediator occupies, and it is the Tribunal's own words for it.
> ⚠️ **CORRECTED 2026-08-29. THE GLOSS THAT STOOD HERE WAS WRONG, AND IT WAS
> WRONG ABOUT THE QUOTATION THREE LINES ABOVE IT.** It read: *"The Tribunal
> itself points parties at private mediation, **before filing and continuing
> after filing.** That is exactly the space a privately retained mediator
> occupies, and it is the Tribunal's own words for it."*
>
> **Read the passage again.** Sentence 1 names **mediation**, and names it for
> one moment only — *"Before you apply."* Sentence 2 is about **negotiation**:
> *"Parties are encouraged to attempt to **negotiate** the claim at all times,
> including before filing at the LAT-AABS, and continuing **negotiation**
> discussions after a claim has been filed."* The word appears twice. **The
> "continuing after filing" frame belongs to negotiation, and the gloss carried
> it across onto mediation.** The word **"private"** is not the Tribunal's
> either — the sentence names no provider and draws no public/private
> distinction.
>
> **What the passage does support:** the Tribunal names mediation as something a
> party may consider **before applying**, and encourages negotiated settlement
> at every stage. That is an affirmative basis for the offering. It is not a
> Tribunal statement about mediating a claim that is already filed.
>
> **How this got past three checks.** The quotation was fetched, pasted
> verbatim, and is correct. The overreach is in the sentence *underneath* it —
> and that sentence, not the quote, is what propagated into `docs/01`, into
> `src/data/site.ts`, and from there into published copy on three pages. Two
> review rounds and a claims audit read this file and did not catch it, because
> the quote sat right there and appeared to say it. Caught 2026-08-29 by an
> independent re-fetch that read the sentence structure rather than the gloss.
> **Same shape as Q39's struck universal: the source was fine and the sentence
> drawn from it was wider than the source.**
---
@@ -149,8 +176,14 @@ mediator occupies, and it is the Tribunal's own words for it.
Tribunal Member**. `LAT pre-hearing mediation` therefore describes a thing
that does not exist, and the half a reader would recognise — *pre-hearing*
is the Tribunal's own label for a step nobody outside the Tribunal conducts.
2. Private mediation of accident-benefits and SABS disputes is **compatible with
a LAT application, before filing or after**, and the Tribunal says so.
2. The Tribunal names **mediation** as an option a party may consider **before
applying**, and encourages negotiated settlement at all stages including
after filing. *(Corrected 2026-08-29. This item read: "Private mediation of
accident-benefits and SABS disputes is **compatible with a LAT application,
before filing or after**, and the Tribunal says so." The last five words were
false — see the correction box above. Whether a filed claim can also be
privately mediated is not something this source addresses either way, and
nothing here should be cited for it.)*
**Does not establish:**
@@ -170,7 +203,15 @@ proceeding appears to appoint or host the mediator.
**Published instead**`src/data/site.ts`, `PRACTICE_AREAS``insurance`:
> Accident benefits and SABS entitlement, MIG disputes, and private mediation
> alongside a LAT application, before filing or after.
> retained by the parties, not the Tribunal's case conference.
*(Corrected 2026-08-29. The blurb read "…and private mediation alongside a LAT
application, before filing or after", and the "before filing or after" half
rested entirely on the gloss corrected above. The replacement carries the
distinction `docs/01` actually requires — **private, retained by the parties,
not the Tribunal's case conference** — which is the high-value half and is fully
supported. The Tribunal's own sentence about mediation before applying is quoted
on the page rather than compressed into a card.)*
`docs/01` keeps `LAT pre-hearing mediation` as a **search intent** — people do
type it — with a note that it must never be lifted into copy. That lift is