Testing and verification
Run this for every change (format, lint, build, shell checks, DX self-tests):
make verifyChecks by change type
Section titled “Checks by change type”| 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 skips the database tests. make test-db runs them against a fresh
Postgres, and is required after any migration, store or query change.
make test-web is the only reliable typecheck; hand-typed tsc can pass without
checking anything.
Useful diagnostics
Section titled “Useful diagnostics”make diagnosemake diagnose-bundleThe bundle is sanitised and saved under the gitignored .diagnostics/. Review it
before sharing.
Git and generated files
Section titled “Git and generated files”Branch from develop and merge back into it; develop to main needs sign-off.
Push as you go, and pull develop before adding a migration so numbers don’t clash.
Never hand-edit generated clients or API types. Regenerate them from their source.