chore: initial project scaffold#2
Conversation
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
Vitest exits with code 1 when no test files exist. The scaffold has no app logic yet, so no tests are expected. Adding passWithNoTests: true lets CI pass until real tests are added. Co-authored-by: Ona <[email protected]>
shadcn/ui theme tokens (text-muted-foreground, bg-primary) require CSS variables that aren't defined until shadcn is initialized. Use concrete Tailwind color classes instead. Co-authored-by: Ona <[email protected]>
- Replace deprecated sentry.client.config.ts with instrumentation-client.ts - Add replayIntegration(), onRouterTransitionStart, enableLogs, sendDefaultPii - Use NEXT_PUBLIC_SENTRY_DSN for client, SENTRY_DSN for server/edge - Add includeLocalVariables to server config - Use dev/prod conditional tracesSampleRate - Simplify onRequestError to direct Sentry.captureRequestError export - Add authToken to withSentryConfig for source map uploads - Exclude /monitoring tunnel route from middleware matcher - Use NextError in global-error.tsx Co-authored-by: Ona <[email protected]>
- Rename middleware.ts → proxy.ts (Next.js 16 convention) - Rename NEXT_PUBLIC_SUPABASE_ANON_KEY → NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY - Rename SUPABASE_SERVICE_ROLE_KEY → SUPABASE_SECRET_KEY - Restore Memo landing page with standard Tailwind classes - Add Sentry test page and API route for verification - Clean up globals.css to minimal Tailwind + font theme Co-authored-by: Ona <[email protected]>
Co-authored-by: Ona <[email protected]>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
Reviewed the full scaffold — no blocking issues found. However, this PR has merge conflicts with Please rebase or merge |
| @@ -0,0 +1,18 @@ | |||
| import { updateSession } from "@/lib/supabase/proxy"; | |||
There was a problem hiding this comment.
src/middleware.ts and src/lib/supabase/middleware.ts still exist on this branch. Since Next.js 16 renamed middleware to proxy, having both files present will cause conflicts — Next.js may pick up the deprecated middleware.ts or error on the ambiguity.
Delete src/middleware.ts and src/lib/supabase/middleware.ts as part of this migration.
zacharias-ona
left a comment
There was a problem hiding this comment.
The scaffold looks solid — Sentry configs, Supabase client renaming, proxy migration, and layout cleanup are all correct.
One blocking issue:
- Leftover middleware files:
src/middleware.tsandsrc/lib/supabase/middleware.tswere not deleted as part of the middleware→proxy migration. Both the old and new files exist on the branch. Next.js 16 deprecatedmiddleware.tsin favor ofproxy.ts— the old files must be removed to avoid ambiguity.
Fixing this now.
What
Full project scaffold: Next.js 16, Supabase clients, Sentry, health endpoint, landing page, CI, devcontainer, agent knowledge base, and product spec.
How
src/directoryproxy.ts(Next.js 16 convention)@sentry/nextjs10.x:instrumentation-client.tswith replay + router transitions, server/edge configs withenableLogsandincludeLocalVariables,onRequestErrorviaSentry.captureRequestError/api/healthendpoint with DB connectivity check.agents/), product spec, READMEEnv var conventions
NEXT_PUBLIC_SUPABASE_URL/NEXT_PUBLIC_SUPABASE_PUBLISHABLE_KEY(browser)SUPABASE_SECRET_KEY(server admin)NEXT_PUBLIC_SENTRY_DSN(browser) /SENTRY_DSN(server)Testing
pnpm lint✅pnpm typecheck✅pnpm build✅Checklist
anytypes