From 8b3dee857fc0503d815b794371be19bfd088b973 Mon Sep 17 00:00:00 2001 From: BigSimmo <87357024+BigSimmo@users.noreply.github.com> Date: Mon, 13 Jul 2026 01:13:05 +0800 Subject: [PATCH 1/2] refactor(type-scale): drop dead mode-home tokens superseded by --text-hero MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR #517's hybrid-fluid mode-home hero (fluid `--text-hero` clamp + `-minus` card tokens) replaced the only consumer of the stepped named-token set that #512 added for the same off-scale values. Those 7 tokens (--text-xs-plus, -sm-plus, -base-sub, -2xl-sub, -3xl-sub, -3xl-plus, -4xl-minus) are now unused everywhere in src, so remove them and their orphaned scale comment — reconciling the two parallel token sets left after the #517/#512 merge. Verify: prettier, check:type-scale --strict, check:icon-scale, lint, typecheck, and the globals.css merge-artifact guard test all green; the removed tokens have zero references in src (git grep). Co-Authored-By: Claude Opus 4.8 --- src/app/globals.css | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/src/app/globals.css b/src/app/globals.css index 0909710d6..f673e0e84 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -72,20 +72,7 @@ base-minus 15px one notch under base — comfortable body just under 16 (lg 18 · xl 20 · 2xl 24 come from Tailwind's default scale) lg-minus 17px one notch under lg — display titles a shade under 18 - 2xl-minus 22px one notch under 2xl — wide-screen nowrap headings - The mode-home hero/action steps below are the same size-only kind, just - bespoke to the compact mode-home scale in mode-home-template.tsx (they - retire that file's last `text-[…rem]` arbitrary values at pixel parity). - Naming: `-plus`/`-minus` sit just above/below the nearest Tailwind anchor; - `-sub` is a second "just under " step used where that anchor's - `-minus` is already taken above at a different size. - xs-plus 12.8px mode-home action description (≥sm) - sm-plus 15.2px mode-home subtitle + action title (≥sm) - base-sub 15.7px mode-home action title (base) - 2xl-sub 23.2px compact mode-home hero heading (base) - 3xl-sub 29.6px mode-home hero heading (base) - 3xl-plus 30.4px mode-home hero heading (≥sm) - 4xl-minus 34.4px mode-home hero heading (≥lg) */ + 2xl-minus 22px one notch under 2xl — wide-screen nowrap headings */ --text-4xs: 0.5rem; --text-3xs: 0.625rem; --text-2xs: 0.6875rem; @@ -94,13 +81,6 @@ --text-lg-minus: 1.0625rem; --text-2xl-minus: 1.375rem; --text-3xl-minus: 1.625rem; - --text-xs-plus: 0.8rem; - --text-sm-plus: 0.95rem; - --text-base-sub: 0.98rem; - --text-2xl-sub: 1.45rem; - --text-3xl-sub: 1.85rem; - --text-3xl-plus: 1.9rem; - --text-4xl-minus: 2.15rem; /* Fluid display heading for the hero / mode-home titles (hybrid-fluid type: the large display heading scales continuously; body / UI text stays on the From 344f10f9efca6dc340a6ac65128eaf2fdcddf727 Mon Sep 17 00:00:00 2001 From: BigSimmo <87357024+BigSimmo@users.noreply.github.com> Date: Mon, 13 Jul 2026 01:28:25 +0800 Subject: [PATCH 2/2] docs: reconcile retired mode-home tokens --- docs/process-hardening.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/process-hardening.md b/docs/process-hardening.md index 051567e05..1a2750e33 100644 --- a/docs/process-hardening.md +++ b/docs/process-hardening.md @@ -196,7 +196,7 @@ passes `p_worker_id`. Ordered apply steps, R17 manual `CONCURRENTLY` index, and ## Design convergence & type-scale ratchet (2026-07-06) - **`docs/design-system.md` is now the front door** for all UI work: token contract, type-scale rules, z-index ladder, Sheet-only modals, a11y requirements, and the UI Definition of Done. The `docs/redesign/*` documents remain the deep references it links to. -- **Type-scale ratchet — backlog cleared, gate now strict:** `node scripts/check-type-scale.mjs --strict` reports **0 hits / 0 files** (this pass retires the last 8 hits in 1 file; the prior recorded baseline was 20/9, originally 168/22). The final holdouts — the compact mode-home hero + action-card sizes in `src/components/mode-home-template.tsx` — were tokenized into size-only named `@theme` steps in `src/app/globals.css` (`--text-xs-plus … --text-4xl-minus`, pixel-parity with the `text-[…rem]` values they replace). `check:type-scale --strict` is wired into `verify:cheap` (package.json), so any newly introduced arbitrary `text-[px|rem|em]` size now fails the gate — UI PRs must keep the count at zero. Colour utilities (`text-[color:var(--…)]`) are the sanctioned token form and are not counted. +- **Type-scale ratchet — backlog cleared, gate now strict:** `node scripts/check-type-scale.mjs --strict` reports **0 hits / 0 files** (this pass retires the last 8 hits in 1 file; the prior recorded baseline was 20/9, originally 168/22). The compact mode-home hero now uses the shared fluid `--text-hero` scale; the temporary mode-home-only aliases were removed after confirming no consumers remained. `check:type-scale --strict` is wired into `verify:cheap` (package.json), so any newly introduced arbitrary `text-[px|rem|em]` size now fails the gate — UI PRs must keep the count at zero. Colour utilities (`text-[color:var(--…)]`) are the sanctioned token form and are not counted. - **Cleared this pass:** dead launcher mobile detail rows now expand (aria-expanded disclosures); launcher detail dialog migrated to the `Sheet` primitive (focus trap/return-focus restored); launcher filter tablists gained `aria-controls` + a `role="tabpanel"` results region; styled `src/app/not-found.tsx` added (the `notFound()` calls in differentials no longer fall through to the unstyled default); `?page=abc` NaN leak in the document viewer clamped; `/services` off-palette preview deleted (dead export) and the live navigator's residual hardcodes tokenized; launcher icon tones moved from raw Tailwind palette classes to categorical `--type-*` / semantic danger triads (dark-mode + forced-colors correct); mockups layout emits `robots: noindex`. ## Repository hygiene + production surface pass (2026-07-06)