/** * Consent Test API Proxy * POST /api/sdk/v1/agent/consent-test → consent-tester:8094/scan → email via backend */ import { NextRequest, NextResponse } from 'next/server' const CONSENT_TESTER_URL = process.env.CONSENT_TESTER_URL || 'http://bp-compliance-consent-tester:8094' const BACKEND_URL = process.env.BACKEND_API_URL || 'http://backend-compliance:8002' interface Violation { service: string; severity: string; text: string; legal_ref: string } function buildEmailHtml(data: any): string { const url = data.url || '' const banner = data.banner_detected ? data.banner_provider : 'Nicht erkannt' const phases = data.phases || {} const summary = data.summary || {} const sev = (s: string) => s === 'CRITICAL' ? 'KRITISCH' : 'HOCH' const violationRows = (violations: Violation[]) => violations.length === 0 ? '
${url}
| Cookie-Banner | ${data.banner_detected ? '✓ ' + banner : '✗ Nicht erkannt'} |
| Kritische Verstoesse | ${summary.critical || 0} |
| Hohe Verstoesse | ${summary.high || 0} |
| Undokumentiert | ${summary.undocumented || 0} |
Was laedt OHNE dass der Nutzer etwas geklickt hat?
Was laedt NACHDEM der Nutzer "Nur notwendige" geklickt hat?
Was laedt NACHDEM der Nutzer "Alle akzeptieren" geklickt hat?
✓ Alle Dienste dokumentiert
' : ''} ` : `Automatisch erstellt vom BreakPilot Compliance Agent (Playwright + Chromium)