Build and deploy / build-and-deploy (push) Failing after 4s
Five items of Pouya's production run, 2026-09-01.
Q61 — scroll-padding-top becomes a max() ramp on `10lh - 83px`, with the
plain calc() first as the fallback for engines without `lh`. Hidden focus
stops under minimumFontSize=32: 290 of 1,455 -> 0, control build still
290. Default settings byte-identical (0 differences over 352 page-widths x
17 fields). The 12 residual cells at minimumFontSize=16/20 are pre-existing
and unchanged-or-better; reported, not widened, per instruction.
Intake backend + CloudFront — docs/09-cutover-runbook.md is the
copy-paste sequence for admin execution: every command followed by its
verification and expected output, rollback per part, and Part 10 is Q60's
TTL test. infra/cloudfront/router.js is the trailing-slash function
(30-case suite; 8 fail against the pre-review version, incl. a
protocol-relative open redirect). infra/cloudfront/configure.mjs is
dry-run-by-default and idempotent. scripts/intake-env.mjs emits the six
Lambda env vars from src/data/site.ts.
Four launch blockers found by reading the running system:
- handler.mjs wrote pk/sk; the live table's key is submissionId with no
sort key, so every submission would have failed validation silently
- the Lambda invoke permission is scoped to the old route path
- 22 of 23 pages 403 without the router function
- there was no 404 page; src/pages/404.astro adds it
Claims audit (D20 cutover pass) — five gloss over-reaches corrected on
/practice/energy/, /practice/insurance/ (x2), /practice/technology/ and
/med-arb/. Three findings left open for Pouya: Q62, the /med-arb/ gloss,
and Q60.
Q62 — one frozen-tripwire pattern added under the freeze's own breach
exception, with a probe and four negative fixtures. check:claims exits 1
until the false /legal/privacy/ sentence is corrected, so both deploy
paths are blocked by a mechanism rather than by memory.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Md3GndFqWPzK78xAoebsg5
230 lines
12 KiB
Markdown
230 lines
12 KiB
Markdown
# Reference — how the Licence Appeal Tribunal actually runs its pre-hearing step
|
||
|
||
**Why this file exists.** `AGENTS.md` Q41(c) asked what `LAT pre-hearing
|
||
mediation` means as an offering. Pouya's ruling of 2026-08-27: *"'LAT pre-hearing
|
||
mediation' is imprecise and must not imply appointment by the tribunal. Verify
|
||
against LAT's own materials how its case-conference process is conducted and who
|
||
conducts it."* This is that verification, committed rather than cited, under
|
||
`CLAUDE.md`'s rule that anything a spec makes a claim about must be reachable
|
||
from the repository (R14).
|
||
|
||
---
|
||
|
||
## Provenance — read this before quoting anything below
|
||
|
||
| | |
|
||
|---|---|
|
||
| Source 1 | `https://tribunalsontario.ca/documents/lat/LAT-Rules.html` — *Licence Appeal Tribunal, Animal Care Review Board and Fire Safety Commission Rules of Practice and Procedure*, effective July 21, 2023 |
|
||
| Source 2 | `https://tribunalsontario.ca/lat-aabs/application-and-hearing-process/` — LAT‑AABS, *Application and hearing process* |
|
||
| Retrieved | **2026-08-28** |
|
||
| Method | `curl -sS -o <file> '<url>'` — HTTP **200** both; **88,429 B** (rules) and **107,996 B** (AABS page) |
|
||
| Text extraction | script/style stripped, tags stripped, entities unescaped, whitespace collapsed → **66,593** and **33,696** characters |
|
||
|
||
> ⚠️ **NO HASHES, AND THE REASON IS THE POINT.** This table carried `sha256`
|
||
> prefixes `07d9c077e41cc8bd` and `08eff9a73b683cc5`. They are removed because
|
||
> **they cannot be reproduced, and a stamp that cannot be re-checked is worse
|
||
> than no stamp** — a future reader who re-fetches and gets a different digest
|
||
> would conclude the source had changed when it had not.
|
||
>
|
||
> Found by `adversarial-reviewer`, which re-fetched both URLs and got two
|
||
> different digests, then two more on two further fetches. Cause isolated by
|
||
> diffing consecutive responses: `LAT-Rules.html` carries a per-request
|
||
> bot-detection nonce (`__uzdbm_1`, `__uzdbm_2`), and the AABS page carries
|
||
> rotating WordPress `?ver=` cache-busters. **The sha256 of these URLs is not a
|
||
> stable quantity.**
|
||
>
|
||
> What *does* reproduce, and was independently reproduced: **both byte counts
|
||
> exactly**, **all ten verbatim quotes** with their rule numbers and headings, and
|
||
> **all four term counts**. So the substance of this file is verified twice over;
|
||
> only the hashes were spurious. Same family as the `1.23:1` bounding box and the
|
||
> `timeout 60 ls` in `CLAUDE.md` — a number that looks like verification, from a
|
||
> probe nobody validated.
|
||
|
||
**Instrument check, because `CLAUDE.md` requires one.** The word counts below were
|
||
taken from the **raw fetched bytes**, not from a `WebFetch` answer. `WebFetch`
|
||
answers through a summarising model, so a "quote" it returns may be a paraphrase
|
||
— and the first pass here did return a plausible-looking Rule 14.4 quote
|
||
(*"The case conference is an important opportunity to discuss settlement"*) that
|
||
turned out to be **correct**, and a Rule 14.6 gloss that was **not** how the rule
|
||
reads. Both were then checked against the literal text. Quotes in this file are
|
||
literal; where the two disagreed the literal text won.
|
||
|
||
A second instrument note: the rules document repeats every heading in a table of
|
||
contents before the body, so a naive "find the heading" extraction returns the
|
||
**TOC** and reports the rules as empty. The bodies are present, ~35 KB further in.
|
||
|
||
---
|
||
|
||
## Finding 1 — the LAT's settlement step is a *case conference*, and a Tribunal Member conducts it
|
||
|
||
**Rule 2.4, verbatim:**
|
||
|
||
> "Case Conference" has the same meaning as "Pre-Hearing Conference" as defined
|
||
> in the SPPA.
|
||
|
||
So **"pre-hearing" is the LAT's own term, and what it names is a case
|
||
conference** — not a mediation.
|
||
|
||
**Rule 14.2 — Scope of case conference subject matter, verbatim opening:**
|
||
|
||
> The Tribunal may on its own initiative, or in response to a party's written
|
||
> request, direct the parties to participate in a case conference to consider:
|
||
> The settlement of any or all of the issues; […]
|
||
|
||
**Rule 14.3 — Member not to participate on a hearing panel, verbatim:**
|
||
|
||
> A Member who presides at or otherwise takes part in a case conference shall not
|
||
> participate as a Member of a panel at a subsequent hearing of the appeal except
|
||
> with the consent of the parties.
|
||
|
||
**Rule 14.4 — Settlement discussions, verbatim:**
|
||
|
||
> The case conference is an important opportunity to discuss settlement of the
|
||
> issues without the need for a hearing. The parties are expected to come to the
|
||
> case conference prepared to discuss settlement.
|
||
>
|
||
> All settlement discussions in a case conference and the documents put forward
|
||
> solely for the purpose of settlement are confidential. Settlement discussions
|
||
> are held on a "without prejudice" basis. Settlement discussions shall not be
|
||
> communicated to the Member that participates in the hearing or otherwise be
|
||
> relied on in a hearing before the Tribunal for any purpose unless the parties
|
||
> consent.
|
||
|
||
**Rule 14.6 — Party attendance, verbatim first sentence:**
|
||
|
||
> A party as defined under Rule 2.16 must attend their case conference.
|
||
|
||
**Rule 12 — Format, verbatim:**
|
||
|
||
> In accordance with applicable provisions of the SPPA, the Tribunal may hold a
|
||
> hearing or case conference in any of the following formats, as it considers
|
||
> appropriate: In-person; Electronic; Written; or Any combination of the above.
|
||
|
||
The public LAT‑AABS page adds, of the same step: *"A case conference is led by an
|
||
adjudicator whose role is to guide and support the parties in working to resolve
|
||
the dispute."*
|
||
|
||
**Consequence:** the neutral in the LAT's pre-hearing step is a **Member /
|
||
adjudicator of the Tribunal**. It is directed by the Tribunal, attendance is
|
||
mandatory, and the Member does not sit on the subsequent hearing panel **except
|
||
with the consent of the parties** (Rule 14.3, quoted verbatim above). ⚠️ **This
|
||
line read "the Member is disqualified from the subsequent hearing panel" until
|
||
2026-09-01** — an absolute, thirty lines below the quotation that qualifies it,
|
||
in this repository's own voice rather than the Tribunal's. `/practice/insurance/`
|
||
took the absolute from here and published it. Corrected in both places on the
|
||
same day; the page was corrected first and this file is where the defect would
|
||
otherwise have re-seeded, which is `CLAUDE.md`'s point about commentary around a
|
||
quotation being this repository speaking. A
|
||
privately retained neutral is not appointed to it and cannot be.
|
||
|
||
## Finding 2 — the LAT Rules never use the words "mediation", "mediator" or "arbitration"
|
||
|
||
Counted on the literal extracted text, case-sensitively for both cases:
|
||
|
||
```
|
||
lat-rules.html 66,593 chars 'mediat' 0 'Mediat' 0 'arbitrat' 0 'Arbitrat' 0
|
||
lat-aabs.html 33,696 chars 'mediat' 1 'Mediat' 0 'arbitrat' 0 'Arbitrat' 0
|
||
```
|
||
|
||
**Zero** in the Rules. There is no rule providing for the Tribunal to appoint an
|
||
external mediator, and no rule about a party retaining a private neutral —
|
||
because the Rules do not contemplate the concept at all.
|
||
|
||
## Finding 3 — the single match, read rather than counted
|
||
|
||
`CLAUDE.md`: *a grep that matches is not a finding until you read what it
|
||
matched.* The one `mediat` on the AABS page, printed with its heading, is this —
|
||
and it is the affirmative basis for the offering rather than a problem for it:
|
||
|
||
> **4. Consider other ways to resolve your dispute**
|
||
>
|
||
> Before you apply to the LAT‑AABS, you may want to consider negotiation or
|
||
> mediation services. 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.
|
||
|
||
> ⚠️ **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.**
|
||
|
||
---
|
||
|
||
## What this establishes, and what it does not
|
||
|
||
**Establishes:**
|
||
|
||
1. The LAT's pre-hearing settlement step is a **case conference conducted by a
|
||
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. 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:**
|
||
|
||
- Anything about whether Pouya holds a roster position with the LAT or Tribunals
|
||
Ontario. Nothing here bears on that. §4 has no such row, so the site claims
|
||
none — per Pouya's ruling: *"If Pouya holds a roster position that makes more
|
||
than that true, it is a §4 addition — absent a row, it isn't."*
|
||
- Anything about *commercial* arbitration gating. Same caution as
|
||
`ontario-family-arbitration-training.md`: a source about one process is not
|
||
authority about another. These documents do not mention arbitration at all.
|
||
|
||
## The wording that follows from it
|
||
|
||
**Never publish** `LAT pre-hearing mediation`, or any phrasing in which a LAT
|
||
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
|
||
> 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
|
||
exactly what happened once already.
|
||
|
||
`/practice/insurance/` at build step 5 must state that the mediation offered is
|
||
**private**, retained by the parties, and **not the Tribunal's case conference**.
|