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
+57 -18
View File
@@ -235,14 +235,16 @@ an *agreement* settles, not what he promises.
1. What the service is; sole-arbitrator and party-appointed
appointments.
2. **Tracks:** documents-only, expedited, full hearing.
3. **Rules:** ADRIC, ADR Chambers, ad hoc.
⚠️ *`/arbitration/` as built names the **ADRIC Arbitration Rules** (new
edition effective 1 March 2025, with an arbitrator appointment protocol) and
"ad hoc, or whatever the contract names". It does **not** name ADR
Chambers*: nothing in `docs/reference/` sources what rules ADR Chambers
publishes, and `docs/07-fees.md` cites it only for published **fee ranges**,
which is a different claim (R14). Name it on the page once a source is
committed.
3. **Rules:** ADRIC, ad hoc. ✅ **Both are named on the page.**
⚠️ **ADR CHAMBERS WAS STRUCK FROM THIS ITEM AND FROM THE PAGE ON 2026-08-30
— Pouya's ruling, and do not reinstate it from an earlier reading of this
spec.** This item listed it as a third rule option for most of the project.
`docs/reference/adr-institution-names.md` sources what the firm *publishes*;
it does not source that an outside neutral can be appointed under those
rules, and the firm's own model clause reads *"at ADR Chambers"* — so naming
it here implied a relationship the repository does not establish. The ADRIC
edition date (1 March 2025) is published on the page because ADRIC publishes
one.
4. Awards — form, reasoning, timing.
5. **Credentialing status, stated plainly.** The Q.Arb pathway **commenced
August 2026**; the page says so in those words. *"In progress" was the
@@ -375,10 +377,32 @@ practice.
**Search intent:** `Bill 40 dispute`, `IESO dispute resolution`,
`OEB leave to construct dispute`, `grid connection dispute Ontario`.
Grid connection and allocation, leave-to-construct, proponentmunicipality
disputes, IESO market participation, data-centre connection allocation. Brief
§III.2 frames this as a 2436 month build. **Write it as a genuine position, not
a claim of existing volume.**
Connection assessment and approval, leave to construct, proponentmunicipality
disputes, IESO market participation, and the large-load / data-centre connection
regime. Brief §III.2 frames this as a 2436 month build. **Write it as a genuine
position, not a claim of existing volume.**
> ⚠️ **"CONNECTION ALLOCATION" WAS THIS SECTION'S WORDING AND IT IS NOT AN
> ONTARIO TERM. Corrected 2026-08-29**, against the IESO's own pages
> (`docs/reference/ontario-energy-regulatory.md`), which contain **zero**
> occurrences of "allocation" of any kind across the connection process. It also
> reached `src/data/site.ts` and shipped in the six-card grid on three pages.
>
> **Use the terms these bodies use:** *connection assessment and approval (CAA)*
> is the umbrella; the IESO performs a *System Impact Assessment (SIA)* and the
> transmitter a *Customer Impact Assessment (CIA)*. **Ontario has no
> interconnection queue** — the IESO says so in terms and works from "committed
> projects" instead, so "our place in the queue" describes nothing. The
> genuinely adjacent term, the OEB's *Capacity Allocation Model* in the
> Distribution System Code, is about housing-development connections and is a
> different thing.
>
> **Bill 40 is identified**, and the identification was not safe to assume: it
> is Bill 40 of the **44th Parliament, 1st Session — the Protect Ontario by
> Securing Affordable Energy for Generations Act, 2025**, Royal Assent
> 11 December 2025. Bill numbers are reused every parliament and most Ontario
> Bill 40s are unrelated to energy (43-1 is a highway-traffic bill). Cite the
> parliament and session, never the bare number.
### `/practice/insurance/`
@@ -403,16 +427,31 @@ a claim of existing volume.**
> - The LAT Rules contain **zero** occurrences of `mediat` or `arbitrat` —
> 0 in 66,593 characters. The concept is not in them.
> - The LAT-AABS page itself, though, says: *"Before you apply to the LAT-AABS,
> you may want to consider negotiation or mediation services… including before
> filing at the LAT-AABS, and continuing… after a claim has been filed."*
> **That is the affirmative basis for the offering, in the Tribunal's words.**
> you may want to consider negotiation or mediation services."*
> **That is the affirmative basis for the offering, in the Tribunal's words** —
> and it is the whole of it.
>
> ⚠️ **THE QUOTATION ABOVE WAS ELLIPSED, AND THE ELLIPSIS REMOVED THE WORD THAT
> SCOPED IT. Corrected 2026-08-29.** It read *"…consider negotiation or
> mediation services… including before filing at the LAT-AABS, and continuing…
> after a claim has been filed."* The Tribunal's second sentence is
> *"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."* — **negotiation, twice.** The
> second ellipsis deleted the second "negotiation" and made a sentence about
> negotiation read as one about mediation. The full passage is quoted verbatim
> in `docs/reference/lat-case-conference.md`, which now carries the correction
> and the reason it survived three checks.
>
> **The page must state that the mediation offered is PRIVATE, retained by the
> parties, and is not the Tribunal's case conference.** Published blurb:
> *"Accident benefits and SABS entitlement, MIG disputes, and private mediation
> alongside a LAT application, before filing or after."* If Pouya holds a roster
> position that makes more than that true, it is a §4 addition — absent a row,
> it is not.
> retained by the parties, not the Tribunal's case conference."* **Do not
> restore the "before filing or after" form** — it rested on the elided half.
> The page may quote the Tribunal's actual sentence, which supports mediation
> **before an application**; it may not attribute the after-filing frame to the
> Tribunal. If Pouya holds a roster position that makes more than that true, it
> is a §4 addition — absent a row, it is not.
Highest realistic near-term volume — it flows directly from the existing
personal-injury and SABS work, and brief §IV.7 notes the segment is