apps/nova) has native TanStack Start + Vite+ + Void source using
@tuturuuu/start-bridge. The native source is present, but this packet does not
cut over traffic. Rex owns route changes and must capture the immutable Vercel
deployment ID before any cutover.
Worker configuration
- Staging Worker: the staging Worker name (
VITE_NOVA_NATIVE_PROFILE=staging). - Production Worker:
tuturuuu-nova(VITE_NOVA_NATIVE_PROFILE=production). - Hosts:
nova.tuturuuu.com,nova.ai.vn, andnova.tutur3u.com. - The Worker config declares the
ASSETSstatic asset binding. Runtime Runtime names includeTUTURUUU_APP_COORDINATION_SECRET,SUPABASE_SECRET_KEY,NEXT_PUBLIC_SUPABASE_URL, andNEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY. Abuse guard uses service bindingABUSE_GUARD(tuturuuu-abuse-guard), secretABUSE_GUARD_KEY_PEPPER,ABUSE_GUARD_FAMILIES=proxy, and optionalABUSE_GUARD_TIMEOUT_MS. Upstash credentials are no longer required. This packet records names only. TUTURUUU_NOINDEXis1in staging and0in production.- Build from the app directory with
bun run build:cloudflare. If workspace outputs are missing, runbun turbo:local run build --filter='@tuturuuu/nova^...' --concurrency=2first.
Smoke probes
After Rex enables a candidate route, check each host and the public build identity:/nova works on tuturuuu.com, build-info
reports the expected commit, and responses carry the intended cache and
indexing policy. Probe only after the route owner provides the candidate URL or
has authorized the host route.
Rollback
Rex must capture the prior Vercel deployment ID and URL before cutover. Rollback is to remove the Nova Worker route so the existing Vercel route serves traffic again. Do not rebuild or change application data during rollback. Keep the captured deployment available until the rollback window closes.Local verification
Runbun run build:cloudflare from apps/nova. Runtime qualification is
CI=true CI_SOURCE_SHA=$(git rev-parse HEAD) bun run test:runtime. The local
runtime command currently fails under Node 22 because its .mjs suites import
TypeScript config modules directly (ERR_UNKNOWN_FILE_EXTENSION); preserve the
failure in the cutover evidence and require the CI runtime result before any
route change.