apps/tools) runs on TanStack Start, Vite+ and Void through the
start bridge. Source needs no change to publish:
the emitted Worker builds and serves its mount, root and unknown paths in
workerd. Routes are never attached from config; the release operator attaches
them at cutover.
Worker identity
cloudflare/startup.mjs refuses to serve when a secret is empty or when the
coordination secret is the development value.
Build
tools-cloudflare.yaml runs the same steps and seals the output with
scripts/ci/tools-native-artifact.py in its cutover-artifact job. Run the
build on a CI or remote runner, not a developer machine.
Tools has no next/font imports, so no font resolver parity work applies.
Rollback
Remove or repoint the prepared Worker route, or restore the captured DNS, to the last Vercel deployment. Thevercel-production-tools.yaml publisher is
unchanged by the cutover. Route rollback does not touch data.
Smoke checks
GET /on the tools host answers200with anX-Robots-Tagheader/qrand/randomanswer200/api/build-infoanswers200JSON with no-store caching/robots.txtanswers200- no
5xxacross the above