Platform uses a Clerk development key (pk_test_...).
This crashes for unauthenticated visitors. Middleware and Clerk env vars are disabled
as a workaround. Unblocks issue #36 (anonymous account flow).
Added: 2026-04-19 · Owner: Human (account credentials required)
Steps Required
-
Go to
Clerk Dashboard
→ create production instance
-
Get production keys:
pk_live_... (publishable) +
sk_live_... (secret)
-
Update secrets via gcloud:
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY and
CLERK_SECRET_KEY
- Re-enable middleware in
apps/platform/src/middleware.ts
-
Trigger rollout:
firebase apphosting:rollouts:create platform --git-branch main --project
aaas-platform
No automated social posting of content. Content already exists in GravityClaw
pipeline. Blocked on registering OAuth apps at LinkedIn and Twitter Developer portals.
Steps Required
-
Register LinkedIn API app at
LinkedIn Developer Portal
-
Register Twitter API app at
Twitter Developer Portal
- Get OAuth tokens for company page posting
- Set API keys as Cloud Functions secrets
- Build posting functions (content already exists in GravityClaw pipeline)
All service results must be permanently persisted — customers access deliverables up
to 1 year later. VM lifecycle must not affect persistence. Architecture: git repo per
project (auto-created via GITHUB_PAT). Anonymous users can start without an account;
migration via magic link / Stripe match / support ticket.
Blocked on Clerk production key (#33) — anonymous flow cannot ship without real
auth.
Added: 2026-04-18 · Owner: Product + Engineering
What Needs to Be Built (after #33 Clerk is unblocked)
auth-core: anonymous user type + token flow
-
aaas-api: project creation without auth gate,
POST /projects with optional auth
-
agentZeroCallback: deliverable directly committed to Git (in addition
to Firestore)
-
GitHub auto-repo-creation at project start (GITHUB_PAT already in Secret Manager)
-
platform: "My Project" dashboard + migration CTA for anonymous users
-
Migration endpoint:
POST /auth/migrate-anonymous with proof
verification
#22 requires browser access to live platform. #23 requires a running A0 VM (GCE +
Docker) — VM a0-ops is now running (resolved 2026-04-19), but dispatch
path needs verification. #24 (stability-tests) is blocked on both #22 and #23. Produce
audit results in docs/audit-results/.
Added: 2026-04-18 · Plan: full-system-audit
LLM, media, scraping, and business service endpoints won't function without AaaS's own
provider keys. Each key goes into GCP Secret Manager once and serves all customers.
Phase 1 — LLM Providers
- OpenRouter →
OPENROUTER_API_KEY
- Anthropic →
ANTHROPIC_API_KEY
- OpenAI →
OPENAI_API_KEY
- Perplexity →
PERPLEXITY_API_KEY
Phase 2 — Media / Scraping / Business
- Replicate →
REPLICATE_API_KEY
- FAL →
FAL_API_KEY
- ElevenLabs →
ELEVENLABS_API_KEY
- Apify →
APIFY_API_KEY
- Firecrawl →
FIRECRAWL_API_KEY
- Scrapecreators →
SCRAPECREATORS_API_KEY
- EnsembleData →
ENSEMBLEDATA_API_KEY
- Linkup →
LINKUP_API_KEY
- Prelude →
PRELUDE_API_KEY
- Reducto →
REDUCTO_API_KEY
- Gamma →
GAMMA_API_KEY
Current Firestore location: us-east1. aaas.builders legal terms are
governed by German law; EU data residency is expected. Firestore location
cannot be changed — requires creating a new database in an EU region
and migrating all 133+ collections. Estimate: 2–4 day project.
Added: 2026-04-15 · Source: PR #302 review · Owner: Infra / platform team
Steps Required
-
Decision: EU region choice — recommend
eur3 multi-region
(Frankfurt/Belgium HA)
- Create new Firestore database in chosen EU region
- Firestore Export → GCS bucket → Firestore Import into new EU database
- Maintenance window: all writes paused during final sync cutover
- Update
firebase.json, functions, services to point to new DB
- Update privacy policy to remove "migration in progress" language