Skip to content

Quality Dashboard

Verified main builds and nightly upgrade runs execute the exhaustive gate (npm run gate:full), then append metrics to the time-series history via a bot-authored [skip ci] artifact commit.

Current metrics

Loading metrics...

What the quality gates enforce

The developer gate (npm run gate) runs:

  1. Format check — Prettier on all source and test files
  2. Lint — ESLint with recommendedTypeChecked + strict TypeScript (tsc --noEmit)
  3. Builds — root package plus all demo packages
  4. Unit tests — Vitest with v8 coverage thresholds
  5. Core e2e tests — Playwright functional tests, desktop + mobile
  6. Integration/demo e2e tests — production demo validation across all demos
  7. Summary — Pass/fail with statistics

The exhaustive gate (npm run gate:full) adds:

  1. Performance benchmarks — Playwright load/perf scenarios (@bench)
  2. Metrics collection — bundle sizes, coverage, e2e results, benchmarks → reports/ + history append
  3. Docs build — VitePress static site generation

The developer gate runs:

  • On every git commit after lint-staged (pre-commit hook)
  • On every git push (pre-push hook)

The exhaustive gate runs:

  • On every PR and push to main (GitHub Actions CI)
  • Nightly (dependency update workflow)
  • Before npm publish

Coverage thresholds

MetricMinimum
Lines80%
Branches70%
Functions80%
Statements80%

These are enforced by Vitest. The gate fails if any threshold is not met.