Root docs
Repository viewer
Legacy docs parity surface
Back to repository viewer
Repository document
Eitherway Prompt: PrivateDAO Supabase + AWS Read Node Closure
EITHERWAY_SUPABASE_AWS_DEPLOY_PROMPT.md
Boundary
This route preserves legacy markdown access inside the Next.js surface. The raw repository file remains authoritative.
Open raw fileEitherway Prompt: PrivateDAO Supabase + AWS Read Node Closure
Build and deploy the missing production-style backend layer for PrivateDAO without changing the existing Colosseum/GitHub/Twitter links.
Project context:
- Site: https://privatedao.org
- API domain: https://api.privatedao.org
- Supabase project ref: zhjtxxykchcbtnqiykyj
- Solana cluster: Testnet only. Do not claim mainnet.
- Current PrivateDAO program ID: EP9xE8MJZ6FfyEwLqns6HDdUZBknEa7WGYs1Jzsecuva
- Anchor Rust toolchain: 1.0.1
- QVAC browser model: qvac/fabric-llm-finetune via Transformers.js
Deliver exactly these backend items:
- Read the SQL from
docs/supabase-operation-receipts.sql. - Create or update
operation_receipts,governance_receipts, andcloak_delivery_state. - Enable Row Level Security on all three tables.
- Grant
SELECTandINSERTtoanon. - Add permissive insert/select policies exactly as the SQL states.
- Apply this Supabase schema to the connected project:
- Use the existing AWS/EC2 read-node path for
api.privatedao.org, but do not proxy Solana RPC through AWS as a hard dependency. - Prefer direct Solana Testnet RPC first, then Helius if
HELIUS_API_KEYis configured, then public fallback. - Ensure
PRIVATE_DAO_PROGRAM_IDisEP9xE8MJZ6FfyEwLqns6HDdUZBknEa7WGYs1Jzsecuva. - Ensure
https://api.privatedao.org/healthz,https://api.privatedao.org/api/health, andhttps://api.privatedao.org/api/v1/healthall returnok: true. - Ensure
https://api.privatedao.org/api/v1/metricsreturns real metrics. - Ensure
POST https://api.privatedao.org/api/v1/private-settlement/intentaccepts JSON and returns a receipt, not 405. - Ensure
GET https://api.privatedao.org/api/v1/umbra/relayer/healthproxies the Umbra Devnet relayer health. - Ensure
GET https://api.privatedao.org/api/v1/umbra/relayer/infoshows relayer address and supported mints. - Ensure
POST https://api.privatedao.org/api/v1/goldrush/queryforwards through the configured GoldRush API key.
- Deploy/read-node behavior:
NEXT_PUBLIC_SUPABASE_URLNEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEYGOLDRUSH_API_KEYDUNE_SIM_API_KEYUMBRA_RELAYER_API_ENDPOINT=https://relayer.api-devnet.umbraprivacy.comPRIVATE_DAO_SETTLEMENT_NETWORK=testnetPRIVATE_DAO_PROGRAM_ID=EP9xE8MJZ6FfyEwLqns6HDdUZBknEa7WGYs1JzsecuvaNEXT_PUBLIC_JUPITER_QUOTE_ENDPOINT=https://lite-api.jup.ag/swap/v1/quote
- Required environment names:
- Test payload for Cloak/Umbra endpoint:
{
"rail": "umbra",
"operationType": "private-payroll",
"asset": "USDC",
"amount": "0.01",
"recipient": "2oq56CUPwsnxbHAdmbQswFR3DWAQ3EBinrNDNSAJMTTS",
"memo": "PrivateDAO reviewer testnet confidential payout receipt",
"auditMode": "confidential-payout",
"recipientVisibility": "recipient-private"
}- No endpoint returns 405 or 502 for the expected health method.
- Jupiter route preview uses
https://lite-api.jup.ag/swap/v1/quotewithinputMint=So11111111111111111111111111111111111111112,outputMint=EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v,amount=20000000, andslippageBps=75. - No secret is exposed in browser HTML or GitHub.
/proof/shows receipt timeline rows, never an empty timeline./services/qvac-sovereign-ai/loads and exposes local model progress forqvac/fabric-llm-finetune./services/jupiter-treasury-route/auto-loads a live Jupiter quote with router and output amount./intelligence/includes GoldRush and.sollookup entry points.- Keep all claims Testnet-scoped.
- Acceptance checks:
Return:
- Exact deployed API URLs.
- Exact Supabase table creation status.
- Exact
curlcommands and outputs for health, metrics, Umbra health/info, GoldRush POST, and private-settlement POST. - Any failed step and the exact error.