Unit tests and a passing build cannot see module-load side effects, missing env vars, migrations failing on a blank database, or routes that 500 only at runtime. Each iteration builds the production artifact, boots it against a disposable environment (a fresh database container on a side port — never your dev instance), probes the real routes and public contracts, and fixes the first runtime failure before rebooting. Distinct from independent-verifier-pass (static gates: build, lint, tests): this proves RUNTIME behavior on a real boot, before merge rather than after deploy.
Loop
- Goal
- the production image builds, boots cleanly against a fresh throwaway database, and every probed route and contract returns its expected response
- Exit when
- the image builds and boots against the throwaway database and every probed route returns its expected response
Check between iterations