System health
Documented, not marketed.
Live drift and coverage metrics for the design system and data layer. Regenerated on every build — no PR can hide drift behind silence. The number is the number.
Token coverage
What share of CSS color and font references cite a design system token via var() versus a literal hex code or font-family name? Higher is more conformant.
var() refs · 256 literals
--t-* refs remaining--tax-* tokens; cleanup deletes them as templates migrate.style= attributesDrift hotspots
Where the migration work is concentrated. Files appear here until they cite tokens instead of literals.
Inline hex codes
- src/pages/essays/the-diagnosis-problem/interactive.astro 49
- src/pages/modalities/index.astro 33
- src/pages/modalities/compare.astro 12
- src/pages/modalities/lineages/psychedelic.astro 10
- src/pages/modalities/lineages/trauma.astro 9
Inline style=
- src/pages/essays/the-diagnosis-problem/interactive.astro 136
- src/pages/modalities/index.astro 23
- src/pages/modalities/compare.astro 15
- src/pages/modalities/lineages/reichian.astro 9
- src/pages/modalities/lineages/behavioral-cognitive.astro 8
Modality field coverage
Schema fields populated across the 151 modality records. Some fields are author-backfilled (TL;DR, advisory) and grow over time.
-
m_number151/151 · 100% -
category151/151 · 100% -
subcategory_tag16/151 · 11% -
tldr0/151 · 0% -
advisory0/151 · 0%
Vignette content advisories
Per A17, every vignette describing trauma, abuse, suicidality, or graphic clinical detail leads with a labelled advisory. This is editor work, not engineer work — the field exists, the audit pass remains.
-
v.advisory0/22 · 0%
How this page works
On every build, scripts/build-system-health.mjs walks src/ and counts CSS color references, inline style attributes, legacy token references, and modality field population. The result is written to src/data/system-health.json and rendered here. The CI gate at .github/workflows/design-system-audit.yml additionally enforces that tokens.css stays in sync with docs/design-system.html; no PR can land if drift is detected.
This page is intentionally public. The friction of seeing the number is the lever that finishes the migration.