Skip to content

[FIR-294] Flydocs visual-parity gate: theme port, parity page and VR pipeline - #56

Merged
mfg1986 merged 9 commits into
developfrom
chore/FIR-294_flydocs-parity-gate
Jul 21, 2026
Merged

[FIR-294] Flydocs visual-parity gate: theme port, parity page and VR pipeline#56
mfg1986 merged 9 commits into
developfrom
chore/FIR-294_flydocs-parity-gate

Conversation

@mfg1986

@mfg1986 mfg1986 commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

What

Implements the FF-CAT-20 phase-2 gate (FIR-294): no Flydocs screen migrates until visual parity of the ported theme is validated.

  • Flydocs theme over --ff-*: apps/playground/src/app/themes/_flydocs-theme.scss (+ dark), a playground-only fixture scoped under :root[data-brand="flydocs"]. Token-by-token equivalence (72 real tokens: 49 direct, 9 derived, 14 deliberately left un-overridden) documented in docs/flydocs-theme-token-equivalence.md.
  • /parity QA page: one section per migration wave (1-5) rendering the dominant real prop combinations from the usage inventory, plus BrandThemeService and a brand toggle in the playground shell.
  • Visual regression: Playwright screenshot-diff of the 5 wave sections x light/dark plus the ff-input rest/hover/focus/error/disabled states (the focus-ring moved to the field wrapper in FIR-289 and is explicitly covered). Chromium-only baselines, dedicated port 4300, deterministic rendering. New e2e CI job with a one-click seed_vr_baselines dispatch input for the linux baseline bootstrap (docs/visual-regression.md).
  • Diff report: docs/flydocs-parity-report.md — 13/15 components with no perceptible diff at 100% zoom; 2 flagged deltas (neutral chip cool-vs-warm, focus-ring solid-vs-halo) and 2 gaps (no ff-textarea/ff-slider) left for their own issues per the gate's contract.

Why

Gate for phase 2 of the Flydocs migration (ETAPA 2 of the component-system roadmap). Parity reference is the rendered product, never the Figma palettes.

How to verify

  • pnpm nx e2e playground-e2e — 15/15 against the committed darwin baselines.
  • pnpm nx serve playground → open /parity, toggle "Flydocs theme" / "Dark mode".
  • Post-merge/pre-review note: the CI e2e job stays red until the linux baselines are seeded — run the CI workflow manually with seed_vr_baselines checked, download the playground-e2e-vr-baselines artifact, review and commit the -linux.png set (procedure in docs/visual-regression.md).

Traceability

Board ticket without an owning PASO (pre-methodology playground scope): ticket key carried in branch and commit subjects.

@mfg1986
mfg1986 merged commit 16e6450 into develop Jul 21, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant