d892b3f64f
Deploy to route.crispygoat.com / deploy (push) Failing after 9s
Phase 1 — Pattern library - Add src/lib/api.ts (typed PostgREST client, anon-key) - Add src/lib/svc-fetch.ts (service-role fetch + PostgREST client) - Add src/lib/db-types.ts (Database generic, RowOf helper) - Add src/lib/auth-admin.ts (better-auth admin wrappers: createUser, listUsers, removeUser, requestPasswordReset, validateSession) Phase 2 — Server action migration - Migrate all 67 server actions off @supabase/supabase-js to svcApi/svcRpc - Replace service.auth.admin.* with authAdmin.* (better-auth) - Replace publicApi.auth.* with authAdmin.* (better-auth) - Add typed single() null guards + nullable column fallbacks Phase 3 — Delete mock data + debug routes - Remove if(useMockData) branches from 7 files (-226 lines) - Delete src/lib/mock-data.ts (no longer referenced) - Delete 7 debug API routes (debug-admin-users, debug-auth, debug-cookie, debug-env, debug-get-admin-users, debug-hello, debug-me) Phase 4 — Hard cut - Delete src/lib/supabase.ts (orphan — no importers) - Delete src/app/api/supabase + src/app/api/supabase-test routes - Remove @supabase/ssr + @supabase/supabase-js from package.json - Rename env vars: NEXT_PUBLIC_SUPABASE_URL → NEXT_PUBLIC_API_URL, NEXT_PUBLIC_SUPABASE_ANON_KEY → NEXT_PUBLIC_API_ANON_KEY, SUPABASE_SERVICE_ROLE_KEY → POSTGREST_SERVICE_KEY Phase 5 — Verify - npx tsc --noEmit: 0 errors - npm run lint: 0 new errors from migration (104 pre-existing errors unrelated) - npm run build: same failure mode as main worktree (PostgREST-dependent prerender), no regression Net: 158 files changed, +1640 / -1903 lines (-263 net)
68 lines
1.9 KiB
JSON
68 lines
1.9 KiB
JSON
{
|
|
"name": "route-commerce-platform",
|
|
"version": "1.0.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "node fix-agents.js && next dev --webpack -H 0.0.0.0",
|
|
"build": "next build --webpack",
|
|
"start": "next start",
|
|
"lint": "eslint",
|
|
"lint:fix": "eslint --fix",
|
|
"migrate": "node supabase/push-migrations.js",
|
|
"migrate:one": "node supabase/push-migrations.js",
|
|
"type-check": "npx tsc --noEmit",
|
|
"format": "prettier --write \"src/**/*.{ts,tsx}\""
|
|
},
|
|
"dependencies": {
|
|
"@anthropic-ai/sdk": "^0.96.0",
|
|
"@aws-sdk/client-s3": "^3.1062.0",
|
|
"@aws-sdk/s3-request-presigner": "^3.1062.0",
|
|
"@clerk/nextjs": "^7.4.2",
|
|
"@google/generative-ai": "^0.24.1",
|
|
"@gsap/react": "^2.1.2",
|
|
"@sentry/nextjs": "^10.55.0",
|
|
"@upstash/ratelimit": "^2.0.8",
|
|
"@upstash/redis": "^1.38.0",
|
|
"better-auth": "^1.6.14",
|
|
"exceljs": "^4.4.0",
|
|
"framer-motion": "^12.40.0",
|
|
"gsap": "^3.15.0",
|
|
"kysely": "^0.29.2",
|
|
"lucide-react": "^1.17.0",
|
|
"next": "^16.2.6",
|
|
"next-themes": "^0.4.6",
|
|
"openai": "^6.37.0",
|
|
"papaparse": "^5.5.3",
|
|
"pdf-lib": "^1.17.1",
|
|
"posthog-js": "^1.378.1",
|
|
"posthog-node": "^5.35.11",
|
|
"qrcode": "^1.5.4",
|
|
"react": "19.2.4",
|
|
"react-dom": "19.2.4",
|
|
"server-only": "^0.0.1",
|
|
"square": "^44.0.1",
|
|
"stripe": "^22.1.1",
|
|
"uuid": "^11.1.1",
|
|
"zod": "^4.4.3"
|
|
},
|
|
"devDependencies": {
|
|
"@playwright/test": "^1.60.0",
|
|
"@tailwindcss/postcss": "^4",
|
|
"@types/node": "^20",
|
|
"@types/papaparse": "^5.5.2",
|
|
"@types/pg": "^8.20.0",
|
|
"@types/qrcode": "^1.5.6",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"@types/uuid": "^11.0.0",
|
|
"dotenv": "^17.4.2",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.2.5",
|
|
"pg": "^8.20.0",
|
|
"playwright": "^1.59.1",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5"
|
|
},
|
|
"overrides": "{}"
|
|
}
|