Two clusters of pre-existing failures fixed by aligning tests with the
source they were meant to verify (not by changing source):
1. ultrareviewCommand (4 fails)
The 4 "preflight integration" tests assumed `call` makes an axios POST
and branches on `action: proceed | blocked | confirm`. That integration
was removed; the current `call` branches on `checkOverageGate()`'s four
`kind` values. Replaced with 6 tests covering each gate branch
(`not-enabled`, `low-balance`, `needs-confirm`, `proceed`), arg
pass-through to launchRemoteReview, and the null-launch failure path.
2. autonomy-lifecycle-user-flow (2 fails)
The Bun.spawn'd subprocess used cwd=tempDir, where Bun couldn't resolve
the `src/*` tsconfig path alias (it's resolved from cwd's tsconfig, not
the entrypoint file's). Switched the entrypoint to the bundled
dist/cli.js (aliases pre-resolved) and added a beforeAll that lazy-builds
the bundle if missing — handles the CI ordering where `bun test` runs
before `bun run build`.
Local: 5345/5345 pass (was 5339/5345).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>