diff --git a/AGENTS.md b/AGENTS.md index c633c51..568625c 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -5,6 +5,12 @@ YouTube + podcast summarizer + library, served as a single-page app from a Node. > **Inbox check:** At session start, if `~/Projects/standards/INBOX.md` exists, scan it for > items tagged `(recap)` and surface them before proposing next steps; triage with `/triage`. +> **Design:** before building or changing any user-facing UI, read `design/DESIGN.md` and +> `design/tokens.tokens.json` and conform to them. Accent is indigo `#818cf8`; purple +> `#a855f7` is premium-only. The same tokens govern three surfaces that must stay in sync: +> the main `public/index.html` stylesheet, its `SHARE_PAGE_CSS` share-export string, and +> `public/auth.html`. + ## Stack - **Server**: Node.js (`type: module`, ES modules). The dev box currently runs `v25.6.1`; container runtime is whatever the `Dockerfile` pins — check before assuming. diff --git a/ROADMAP.md b/ROADMAP.md index 7c17e19..ffbaa09 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -13,6 +13,44 @@ Longer-term backlog for Recaps. Near-term in-flight work and known issues live i - **Decide the Max tier-quota default.** The relay code default is `max.monthly: null` (unlimited) → cards render "Unlimited" on a fresh install. The operator set `max.monthly: 120` on their box via the Adjust-Tier-Quotas action (so cards show 120 there). Decide whether a metered number (e.g. 120) should be the shipped default in `recap-relay/server/config.js` — note it also enforces the ceiling, not just the card label. - **Add Gemini 3.5 to model selection.** First have a research agent confirm which stable Gemini model versions are actually available and the correct model id/name before wiring anything. The model list is duplicated server + client (provider config under `server/providers/` + the model picker in `public/index.html`) — add the option in lockstep, like the URL-parser convention. Coordinate with the matching relay-side capture (the relay routes Gemini, so its model list must agree). — captured 2026-06-16 +## Design-contract conformance cleanup (from the 2026-06-16 `/design` extract) + +The `design/` contract (`design/DESIGN.md` + `design/tokens.tokens.json`) was extracted +from the as-built UI and reconciled with Grant on 2026-06-16. The code is **structurally +aligned** (right surface ladder, accent system, premium-purple, components) but a set of +legacy values survived the reconciliation and now read as off-contract drift. None are +release-blocking; all are mechanical token migrations. `design-checker` found seven +categories (counts approximate, from grep) across the three styling surfaces — the main +`public/index.html` `