Skip to content

Testing and verification

The root Makefile is the supported test interface. Run this for every change:

Terminal window
make verify

It formats, lints, and builds all components, checks shell scripts, and runs the developer-experience self-tests.

Change Additional verification
Go make test-go
Go touching the database make test-db as well as make test-go
Rust make test-rust
Web make test-web
Before merging to develop make preflight
Pipeline, encoder, or streaming Real-session validation on a GPU host
Images or deployment Image contract validation through the canonical build scripts
Candidate application image make qa IMAGE=<tag> PROFILE=<name> HOST=<role-or-host>

make test-go can pass while database-backed tests were skipped, so it is not a substitute for make test-db after a migration or store/query change.

Terminal window
make diagnose
make diagnose-bundle

The bundle is sanitised, stored under the gitignored .diagnostics/ directory, and includes a manifest of included and excluded material. Review it before sharing it.

Branches are based on develop and merge back to develop; promotion from develop to main is sign-off gated. Do not patch vendored generated clients or generated API types by hand. Regenerate them from their declared source and keep the source revision recorded where the repository requires it.