Scrum4Me/app/debug-realtime/page.tsx
Madhura68 0f40bc1c70 fix(privacy): NODE_ENV-guard 4 debug-routes (before-launch privacy review)
Privacy/PII review-pass van Server Actions, API-routes, debug-paths en
Sentry config:

 Sentry sendDefaultPii: false in alle drie configs (server/edge/client)
 Geen wachtwoord/email/token in console-logs
 Pair-id-logs zijn metadata-only (5-min TTL, geen secret)

⚠️ Vier debug-routes hadden geen auth-guard:
- /api/debug/realtime-stream — rauwe pg_notify-stream zonder filtering
- /api/debug/emit-test-notify — anonieme test-emit op het kanaal
- /debug-env — lekt env-var-metadata (hostnames, lengtes, pooled-flag)
- /debug-realtime — UI op dezelfde rauwe pg_notify-stream

Allemaal gemarkeerd als TIJDELIJK met VERWIJDEREN-comments uit M8.
Voor v1 launch: NODE_ENV-guard die in productie 404 retourneert. Lokaal
dev blijft alles werken voor debugging.

Toekomstige cleanup: kunnen worden verwijderd zodra M8-realtime stabiel
draait in productie en niemand ze meer nodig heeft.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-04 14:16:49 +02:00

27 lines
1 KiB
TypeScript

// TIJDELIJKE debug-pagina voor M8-acceptance.
// Geen auth, geen styling — toont alle inkomende pg_notify-events op
// `scrum4me_changes` in een tabel zodat we kunnen zien of de SSE + LISTEN-
// pipe überhaupt events doorstroomt op Vercel.
//
// VERWIJDEREN VOOR M8 OUT-OF-DRAFT.
import { notFound } from 'next/navigation'
import { DebugRealtimeClient } from './client'
export const dynamic = 'force-dynamic'
export default function DebugRealtimePage() {
// Productie-guard: deze pagina toont rauwe pg_notify-events zonder auth.
if (process.env.NODE_ENV === 'production') notFound()
return (
<div style={{ fontFamily: 'monospace', padding: 16 }}>
<h1 style={{ fontSize: 18, fontWeight: 'bold' }}>Realtime debug scrum4me_changes</h1>
<p style={{ fontSize: 13, color: '#666' }}>
Live SSE-stream rechtstreeks van Postgres LISTEN op channel{' '}
<code>scrum4me_changes</code>. Geen auth, geen filtering. Verwijderen na M8 acceptance.
</p>
<DebugRealtimeClient />
</div>
)
}