Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/process-hardening.md
Original file line number Diff line number Diff line change
Expand Up @@ -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-[<n>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-[<n>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)
Expand Down
22 changes: 1 addition & 21 deletions src/app/globals.css
Original file line number Diff line number Diff line change
Expand Up @@ -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 <anchor>" 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;
Expand All @@ -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
Expand Down