← Ledger

0005 — Cut rocky.devarno.cloud over to the lifted console

Context

Phase 2 (console lift, May 2) created a new Vercel project rocky-console (prj_5ESq8QnlQjmFeCHoBCz1ZnjYtzdu) connected to the new rocky-hq/console submodule. The pre-existing project rocky-web (prj_63A4xYCldIAGJ0XFgxWadWT2nIYy, created 16 Apr 2026) — connected to the legacy devarno-cloud/rocky repo — kept ownership of the public domain rocky.devarno.cloud through Phases 2–4. As a result, every subsystem advancement (SS-04/05/06 lifts, SS-07 RALPH wrapper + CRDT sidecar wiring in Phase 3a–3e, contracts adoption in Phase 4) was reaching only console-ochre-zeta.vercel.app and never the public URL. Operator UX was demonstrably stale.

Two adjacent gaps surfaced during the cutover and are recorded here so future infra changes don't re-introduce them:

  1. rocky-console's production env was empty except for NPM_TOKEN; the eight runtime variables required by the lifted console (AIRLOCK_URL, NEXT_PUBLIC_AIRLOCK_URL, ROCKY_VAULT_MASTER_KEY, PEBBLE_URL, N8N_URL, ANTHROPIC_BOOTSTRAP_KEY, RELAY_WEBHOOK_SECRET, NEXT_PUBLIC_APP_URL) lived only on rocky-web.
  2. Airlock's TRUSTED_ORIGINS (Railway airlock service) listed only airlock/hubble/hatch subdomains; BetterAuth therefore rejected the sign-in callback from rocky.devarno.cloud and 302-looped, blanking the page.

Decision

rocky.devarno.cloud and www.rocky.devarno.cloud belong to the rocky-console Vercel project. The legacy rocky-web project is retired as the production target effective this date. It remains in the Vercel team for one release cycle as rollback insurance, then will be deleted in a housekeeping commit.

Going forward:

Cutover state captured (2026-05-03)

Consequences

Amendments

(None yet — append future tightenings as ### YYYY-MM-DD: <change> subsections.)

References