G1 | UI only. Only HTML markup and classes, CSS, and presentation strings inside renderers may change. Never change data access, Supabase calls, auth, routing, `_redirects`, `_headers`, `supabase/`, `data/`, service worker logic, or business logic in `js/`. A renderer change in `js/*.js` is allowed only for class names, wrapper markup or inline style values. | Release check listed only look-and-feel changes; secrets scan clean |
G2 | Parity. For every page and role, the inventory of interactive elements must be identical before and after: element IDs, buttons and their accessible names, link hrefs, form fields (name, type, required), select options, dialogs, and `data-*` hooks used by JS. The proof lane's parity checker must pass, with zero unexplained diffs. | 224/224 demo and 280/280 sample-data screens match; 0 hidden-element differences |
G3 | Tokens. Colours, radii and fonts come from the shared Meridian stylesheet variables. No old palette literals remain in restyled CSS (`#003a70`, `#0f172a`, slate/navy/gold accents), except data-viz series colours from the palette tokens. | Independent code review per page group |
G4 | Type. Headings use Geist at weight 300–400, body uses Inter, and no weight exceeds 500. Caption is 11px. No bold black headings. | Independent code review; shared rule caps bold text |
G5 | Colour law. Black is the only action colour, with at most one black primary button per view. Blue is used only for focus rings and inline links. Green means done, orange means waiting, coral means error. A status always carries a word, never colour alone. | Status words added to every coloured dot; zero-count colours are a follow-up |
G6 | Layout. The 256px rail on desktop (≥1000px) and the existing drawer on phone both work. There is no horizontal overflow at 390px or 1440px. Lists use hairline rows, not a card per row. | 0 pages scroll sideways; live check: cut-off boxes on phone 772 → 0 |
G7 | Dark mode. The existing theme toggle still switches and stays readable (AA contrast on body text), using the Meridian dark tokens. | 0 new hard-to-read spots in dark mode; live: 6,603 → 18 |
G8 | Fidelity. Pages that have a Keith drawing follow its composition (page header, spotlight or hero card, hairline lists, right panel) using only content the page already has. Pages without a drawing use the same shared parts. Nothing new is invented: no new sections, numbers or controls. | Second fresh visual check by a senior reviewer on the final release |
G9 | No console regressions. No new console errors compared with the baseline on the same page and role. | Click-through of every safe button: 0 new errors; live: 0 new |
RD-00-AC1 | Before captures exist for every page × role that can open it, at 1440 and 390. | pass | Before captures and the no-change check built; repeat run 0 differences |
RD-00-AC2 | parity.mjs compares inventories (IDs, buttons, links, fields, options, data-hooks, dialogs) and exits non-zero on any diff. Baseline vs a second baseline run = 0 diffs. | pass | Before captures and the no-change check built; repeat run 0 differences |
RD-00-AC3 | clickthrough.mjs clicks every non-destructive control per page and records console errors and opened panels. The rail links, theme toggle and profile menu are verified. | pass | Before captures and the no-change check built; repeat run 0 differences |
RD-00-AC4 | tools/README.md lists commands, the role coverage and the demo-mode-limited pages. | pass | Before captures and the no-change check built; repeat run 0 differences |
RD-01-AC1 | css/meridian.css holds the v4.17 light and dark tokens, Geist/Inter/JetBrains Mono, the type scale with weight ceiling 500, and the shared `m-` parts (page header, hero, hairline row, table, field, buttons, status chip, tag, empty state, tabs, dialog). | pass | Foundation review passed |
RD-01-AC2 | The legacy bridge remaps every old colour variable used by pages, and the common legacy classes, so an untouched page already reads in the new palette. The tenant brand colour still applies. | pass | Foundation review passed |
RD-01-AC3 | The rail (256px), top bar, drawer, profile menu and help button match Keith's drawings. Every nav item, label, href, order and role gate is unchanged. | pass | Foundation review passed |
RD-01-AC4 | All 56 pages load the stylesheet after their inline styles. Every page still returns 200 and has no new console errors. | pass | Foundation review passed |
RD-01-AC5 | STYLE-GUIDE.md documents the variables, the `m-` parts with snippets, the patterns mapped to drawings, and the bridge table. | pass | Foundation review passed |
RD-02-AC1 | Each listed page follows the composition of its Keith drawing (sign-in (screen-sign-in-*), reset password, create a workspace, add your email, check a certificate, system status, your plan) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-02-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 2 fix round(s); integrated parity 0 unexplained |
RD-02-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/A/; no overflow. | pass | Code review pass after 2 fix round(s); integrated parity 0 unexplained |
RD-03-AC1 | Each listed page follows the composition of its Keith drawing (Home, Settings, Account menu, My review, Self-review, Help guides, Help glossary, new-joiner Home) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-03-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-03-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/B/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-04-AC1 | Each listed page follows the composition of its Keith drawing (Module and quiz, Courses for your role, Course page, Certificates) using only content the page already has. | needs-live | Composition passes on demo; module/quiz states need data |
RD-04-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-04-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/C/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-05-AC1 | Each listed page follows the composition of its Keith drawing (My plan, plan action states, Confirm a level, My skills) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-05-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-05-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/D/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-06-AC1 | Each listed page follows the composition of its Keith drawing (Manager My team, Team plans, Option A home rail, Company hub) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-06-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 2 fix round(s); integrated parity 0 unexplained |
RD-06-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/E/; no overflow. | pass | Code review pass after 2 fix round(s); integrated parity 0 unexplained |
RD-07-AC1 | Each listed page follows the composition of its Keith drawing (Job redesign Studio, Redesign a role, Scorecard, Cockpit) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-07-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 0 fix round(s); integrated parity 0 unexplained |
RD-07-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/F/; no overflow. | pass | Code review pass after 0 fix round(s); integrated parity 0 unexplained |
RD-08-AC1 | Each listed page follows the composition of its Keith drawing (Content Studio Upload / To review / Library / Reported questions, IHRP badges, IHRP courses, Check mappings) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-08-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-08-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/G/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-09-AC1 | Each listed page follows the composition of its Keith drawing (Calibration, Skills framework, Learning tracks, Review cycle (separate has no drawing: shared parts)) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-09-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-09-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/H/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-10-AC1 | Each listed page follows the composition of its Keith drawing (no drawing: shared parts + HR Team skills / Company hub patterns (tables, filters, hairline rows)) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-10-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-10-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/I/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-11-AC1 | Each listed page follows the composition of its Keith drawing (no drawing: HR Team skills and Confirmed levels patterns; charts use palette tokens) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-11-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-11-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/J/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-12-AC1 | Each listed page follows the composition of its Keith drawing (no drawing: shared parts; big-screen pages keep their large-display layout in the new palette and type) using only content the page already has. | pass | Code review pass; final visual recheck done |
RD-12-AC2 | G1–G9 hold for every listed page. Parity reports 0 unexplained diffs for the page × role set. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-12-AC3 | Light and dark are checked at 1440 and 390 with screenshots saved under after/K/; no overflow. | pass | Code review pass after 1 fix round(s); integrated parity 0 unexplained |
RD-13-AC1 | Integrated branch redesign/meridian-ui contains all lanes and all shared patches; every page returns 200. | pass | All lanes combined at 4d5680d |
RD-13-AC2 | Parity across all 56 pages × roles = 0 unexplained diffs; clickthrough shows no new console errors vs baseline. | pass | Parity 224/224 + 280/280, 0 unexplained; clickthrough 0 new |
RD-13-AC3 | Hybrid release gate: diff categories listed (expected tripwires: none); production-bundle secret grep clean; preview deployed to the elitez-lms Pages branch alias; production deployment unchanged (verified by comparing the production deployment ID before and after). | pass | Diff categories UI/CSS only; secret grep 0; preview on its own project; production unchanged |
RD-13-AC4 | A fresh visual verdict (Opus, high) on the preview against Keith's drawings per page group: pass, or the revise items are fixed. | pass | verdict r1 REVISE -> 8/11 fixed; r2 done |
RD-13-AC5 | The before/after report (exec summary, before/after per page group, walkthrough recordings per role, AC ledger, known gaps) is deployed on its own public link; draft PR opened to derrick-pixel/elitez-lms (not merged). | pending | This report (deploy by orchestrator); draft PR https://github.com/derrick-pixel/elitez-lms/pull/14 |