bench: add next-beats real-world app fixture
Adds the NextBeats music player app to bench/ as a real-world App Router
benchmark target — Tailwind, nested layouts, Suspense/PPR boundaries,
client islands, `use cache`, and per-user data access. Complements the
existing synthetic, render-perf-focused fixtures with a realistic
component tree and render path.
Adapted to be hermetic, offline, and deterministic:
- Postgres -> SQLite via @prisma/adapter-better-sqlite3, with a committed
seeded prisma/dev.db (no live DB, no network at build or request time).
- `next` resolves to the workspace package (link:../../packages/next);
React comes from the workspace-wide override.
- Removed the /login auth-gate proxy; getCurrentUser() defaults to the
seeded user so routes render real per-user work under load.
- Removed @vercel/analytics + speed-insights; no secrets copied.
- Dropped Postgres-only `mode: 'insensitive'` from the search query.
- Allowed better-sqlite3's native build in pnpm-workspace.yaml.
- Vendored source is prettier-ignored, matching other bench fixtures.
See bench/next-beats/BENCH_NOTES.md for the full recipe and two harness
gaps to address before wiring it into bench:render-pipeline (the harness
overwrites app next.config, which breaks cacheComponents apps; and the
local @next/swc binary must match the compiled next JS).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>