SuperAssistant MVP
Infrastructure Validation Report
Items Checked
7
Pass
5
Warning
2
Clean Pass
71%
01
Summary
| # | Check | Result | Status |
|---|---|---|---|
| 8 | Third-Party API Keys | Keys configured; embeddings low (1 chunk) | Partial |
| 9 | Help Documentation Reindex | 24 docs, 277 chunks indexed | Pass |
| 10 | CORS & Connectivity | Healthy, CORS enforced, 116 endpoints | Pass |
| 11 | Background Services | Both schedulers running | Pass |
| 12 | Supabase Auth Config | ES256 JWT, 11 email users confirmed | Pass |
| 13 | Storage & Data Migration | 4 buckets, 78 objects; embeddings low | Warning |
| 14 | Vercel Build Settings | Next.js, Node 22.x, 71 env vars | Pass |
Totals
7 items validated · 5 pass · 2 warning
02
Third-Party API Keys
8 · PartialAnthropic claude-sonnet-4-6
ANTHROPIC_API_KEYset in Vercel (production + preview) and RailwayANTHROPIC_MODELset toclaude-sonnet-4-6- No direct key validation endpoint — keys confirmed by env var presence only
Resend Email
RESEND_API_KEYset in Vercel (production + preview)RESEND_FROM_EMAILset in Vercel (production + preview)- Used for admin notifications when interviews complete
Voyage AI Embeddings Low Embeddings
VOYAGE_API_KEYset in both environments. Model:voyage-3- Only 1 document chunk has embeddings out of the entire
document_chunkstable - 45 documents in storage but embeddings are not populated — may need reprocessing
03
Help Documentation Reindex
9 · PassHelp System Status
/api/help/statusreturns: 24 documents, 277 chunks, database connected, indexing complete- Direct DB query: 43
help_documents, 238help_chunks /api/help/statscorrectly returns 403 (requires admin auth)- Reindex endpoints available:
POST /api/help/index-docs(admin),POST /api/help/index-docs-webhook(API key) HELP_REINDEX_API_KEYset in Vercel env vars
Note: API reports 24 docs / 277 chunks vs DB shows 43 docs / 238 chunks. API may filter active documents or use caching.
04
CORS & Connectivity
10 · PassBackend Health
/healthreturns: status “healthy”, database “connected”, version “1.0.0”- Swagger UI loads at
/docs— 116 API endpoints registered - OpenAPI spec accessible at
/openapi.json
CORS Configuration
- Allows
superassistant-mvp.vercel.app— confirmed via response headers - Blocks unauthorized origins —
evil-site.comgets noaccess-control-allow-originheader - Vercel preview regex:
superassistant-.*-charlie-fullers-projects\.vercel\.app - Preflight OPTIONS returns 200
Security Headers & Auth
X-Frame-Options: DENYX-Content-Type-Options: nosniffStrict-Transport-Security: max-age=31536000; includeSubDomainsaccess-control-allow-credentials: true- JWT: ES256 via JWKS, audience
authenticated, HS256 fallback
05
Background Services
11 · PassSchedulers (Railway Logs)
- Google Drive Sync Scheduler: RUNNING — check interval 5 minutes Started at 2026-03-08 16:14:55 UTC
- Database Backup Scheduler: RUNNING — daily at 02:00 UTC Started at 2026-03-08 16:14:55 UTC
- slowapi: No logs mentioning slowapi errors. Rate limiting configured in code but no runtime issues detected.
06
Supabase Auth Config
12 · PassAuthentication
- Project:
ycyrirjplwpjezlerzig.supabase.co - Auth provider: email (11 users, all emails confirmed)
- JWT: ES256 with JWKS auto-detection, HS256 fallback via
SUPABASE_JWT_SECRET - Audience:
authenticated NEXT_PUBLIC_SUPABASE_URL+NEXT_PUBLIC_SUPABASE_ANON_KEYset for all Vercel targets
OAuth & Redirect URLs
- Google Drive:
/api/google-drive/oauth-callback - Notion:
/api/notion/oauth-callback - Site URL and email templates should be verified manually in Supabase dashboard
07
Storage & Data Migration
13 · WarningStorage Buckets
- avatars: 2 objects
- backups: 29 objects
- documents: 45 objects
- system-instructions: 2 objects
- Total: 78 objects across 4 buckets
Embeddings & Data Action Needed
- Only 1 document chunk has a non-null embedding vector
- 45 documents uploaded but embeddings not populated — Voyage AI processing may need to be re-triggered
- 52 public tables present — all expected tables confirmed
- System instructions: 2 files in storage bucket
08
Vercel Build Settings
14 · PassBuild Configuration
- Framework:
nextjs - Root directory:
frontend - Node version:
22.x - Build command:
npm run build - Install command:
npm install - Output directory:
.next
Environment & Integrations
- Auto expose system envs: enabled
- Region:
iad1(US East) - 71 environment variables configured
- Sentry integration: active (source maps + React component annotation)
- Crons: enabled (no active definitions)
- Preview deploys: active (Vercel preview regex configured)
- No
vercel.json— all config via Vercel dashboard (framework auto-detected)
09
Action Items (2 warnings)
1. Reprocess document embeddings
Only 1 out of many document chunks has an embedding vector. This means semantic search and RAG functionality for user documents is effectively non-functional. Re-trigger the embedding pipeline or manually invoke the document processing endpoint for existing documents.
2. Verify Supabase dashboard settings
Site URL, redirect URLs, and email templates should be confirmed directly in the Supabase Authentication dashboard. These cannot be verified via API alone.