Launch surface
Private beta includes:- Organization and World management through the Platform API.
- One Turso/libSQL database provisioned per hosted World.
- Platform tokens with the
wzp_prefix. - World auth tokens with the
wzw_prefix for data-plane access. - Turnstile-protected private beta applications through Wazoo Console.
- Usage, limits, and Stripe-shaped billing visibility.
- Soft-delete, undelete, and sync for World lifecycle recovery.
- Live Stripe payment enforcement.
- Public audit log APIs.
- Groups, projects, or folders.
- Full data-plane quota enforcement.
- R2 backup/restore flows.
- A schema-level OpenAPI document for the Platform API.
Bootstrap
- Create the Turso/libSQL control database.
- Apply
wazoo-api/schema.sqlto the control database. - Configure the Worker environment:
- Manually seed one global admin platform token.
- Deploy
wazoo-consolewithNEXT_PUBLIC_WAZOO_API_BASE_URL,NEXT_PUBLIC_TURNSTILE_SITE_KEY, and server-onlyWAZOO_PLATFORM_ADMIN_TOKEN.
Smoke Test
Run the management-plane smoke test fromwazoo-api:
- Health endpoint.
- Organization create/get.
- World create and Turso provisioning.
- World sync.
- World token create, atomic rotate, and revoke.
- Usage, limits, and billing reads.
- World soft-delete, undelete, and final soft-delete.
Manual Verification
Before inviting beta users, verify one fresh org/world by hand:- Create an organization.
- Create a World.
- Confirm the control DB stores the deterministic Turso database name.
- Confirm the Turso database exists.
- Run
:syncand inspect thesyncReport. - Create a world token.
- Rotate the world token and confirm one replacement token remains.
- Revoke the replacement token.
- Soft-delete and undelete the World.
- Inspect usage rows and admin audit rows.
Launch Gates
All of these must pass before beta access expands:Support Playbook
Common operator actions:- Approve beta access: approve the beta application; this creates an Organization only. Create a World after the user is accepted.
- Reject beta access: reject the beta application with an internal note.
- Recover failed provisioning: run World
:sync, then inspectsyncReport. - Suspend an organization: patch
Organization.state = SUSPENDEDwith a global admin token. - Unsuspend an organization: patch
Organization.state = ACTIVEwith a global admin token. - Reduce access: revoke world tokens or platform tokens.
- Investigate support action history: inspect internal
admin_audit_events.