Testing
The project uses one local validation contract for formatting, typing, tests, dependency audits, and the standalone site.
Bootstrap
./setup.sh
# Or install without running the full suite
make bootstrap Fast checks
make lint
make typecheck
make test-cov
make audit
make site-check
make site-build Full native validation
make test-all This runs Ruff, mypy, pytest with the 90% coverage gate, negative-path and integration tests, pip-audit, Astro diagnostics, a production build, and site content/base-path checks.
Clean-room validation
make docker-test The Docker runner installs Python 3.13, uv, Node 22, and npm dependencies inside a clean image. It does not use the host virtual environment, site dependencies, or caches.
Visual QA
cd site
npm run dev
npm run inspect -- http://127.0.0.1:4321/btx/ 390
npm run screenshot -- http://127.0.0.1:4321/btx/ /tmp/btx.png 1440 900 The mobile inspector must report matching document and viewport widths with no layout offenders. Screenshots should be checked at desktop and narrow mobile widths.