{
    "schema": "https://saferpage.de/schemas/agency-developer-deepscan.v1",
    "generated_at": "2026-06-10T18:40:26+00:00",
    "domain": "beaverfit.de",
    "available": true,
    "scan": {
        "id": "a045031e-764c-4727-99e6-c932e5e9e736",
        "checked_at": "2026-06-10 16:09:45.550875+02"
    },
    "summary": "beaverfit.de: Agentur-/Developer-DeepScan-Paket mit 6 Arbeitsbereichen, 3 bereit, 4 sichtbaren Beispiel-Unterseiten, 100-Unterseiten-Zielplan und Score 0/100.",
    "metrics": {
        "score": 0,
        "workstream_count": 6,
        "ready_workstream_count": 3,
        "page_count": 4,
        "sampled_page_count": 4,
        "issue_count": 41,
        "accessibility_issue_count": 0,
        "third_party_domain_count": 14,
        "duration_ms": 407,
        "deep_scan_target_page_count": 100,
        "deep_scan_missing_to_target": 96,
        "deep_scan_discovered_target_percent": 4,
        "deep_scan_sampled_target_percent": 4,
        "agency_handoff_deliverable_count": 6,
        "agency_handoff_acceptance_count": 6,
        "agency_handoff_evidence_url_count": 6,
        "agency_handoff_export_url_count": 6,
        "agency_handoff_boundary_count": 6,
        "agency_handoff_guardrail_count": 5
    },
    "workstreams": [
        {
            "id": "page_inventory",
            "label": "Unterseiteninventar und Crawl-Abdeckung",
            "score": 79,
            "status": "prüfen",
            "evidence": "4 entdeckte Seite(n), 4 priorisiert abgerufen, Ziel 100 Unterseiten.",
            "developer_action": "Wichtige Templates, Datenschutz-, Kontakt-, Checkout- und Consent-Seiten vollständig verlinken und Re-Scan auslösen.",
            "owner": "Webentwicklung/SEO",
            "links": {
                "html": "https://saferpage.de/seiten/beaverfit.de",
                "json": "https://saferpage.de/seiten/beaverfit.de/export"
            },
            "acceptance_criterion": "Alle kritischen Seitentypen sind sichtbar, priorisiert und mit Status im Seiteninventar enthalten; Ausbau bis 100 Unterseiten folgt Backoff- und Timeout-Regeln."
        },
        {
            "id": "accessibility",
            "label": "BFSG/WCAG-Basis und Formular-Usability",
            "score": 100,
            "status": "bereit",
            "evidence": "0 offene Accessibility-Prüfpunkte im Basischeck.",
            "developer_action": "Alt-Texte, Labels, Buttonnamen, Sprache, Viewport und Tastatur-/Screenreader-Flows fachlich prüfen und beheben.",
            "owner": "UX/Webentwicklung",
            "links": {
                "html": "https://saferpage.de/barrierefreiheit/beaverfit.de",
                "json": "https://saferpage.de/barrierefreiheit/beaverfit.de/export"
            },
            "acceptance_criterion": "Keine hoch priorisierten Basisfehler in Formularen, Buttons, Bildern und mobiler Darstellung."
        },
        {
            "id": "performance",
            "label": "Performance, Drittanbieterlast und technische UX",
            "score": 82,
            "status": "bereit",
            "evidence": "407 ms Startseiten-Antwort, 14 Drittanbieter-Domain(s).",
            "developer_action": "Caching, Kompression, Script-Budget, externe Dienste und langsame Unterseiten optimieren.",
            "owner": "Hosting/Webentwicklung/Marketing Ops",
            "links": {
                "html": "https://saferpage.de/performance/beaverfit.de",
                "json": "https://saferpage.de/performance/beaverfit.de/export"
            },
            "acceptance_criterion": "Startseite und wichtige Unterseiten erfüllen vereinbarte Antwortzeit-, Script- und Drittanbieter-Budgets."
        },
        {
            "id": "security",
            "label": "Security-Header, TLS und Browser-Schutz",
            "score": 58,
            "status": "priorisieren",
            "evidence": "2 von 9 wichtigen Security-Headern vorhanden, 2 korrekt bewertet. Keine Content-Security-Policy gefunden.",
            "developer_action": "HSTS, CSP, Referrer-Policy, Permissions-Policy, X-Frame-Options und externe Skripte prüfen.",
            "owner": "IT/Security",
            "links": {
                "html": "https://saferpage.de/sicherheit/beaverfit.de",
                "json": "https://saferpage.de/sicherheit/beaverfit.de/export"
            },
            "acceptance_criterion": "Security-Header sind gesetzt, dokumentiert und nach Re-Scan bestätigt."
        },
        {
            "id": "fix_guides",
            "label": "Priorisierte Fixes und Entwickler-Abnahme",
            "score": 100,
            "status": "bereit",
            "evidence": "41 Befund(e) aus dem letzten Check.",
            "developer_action": "Top-Fixes in Tickets übernehmen, Owner setzen, technische Abnahmekriterien erfüllen und danach Re-Scan durchführen.",
            "owner": "Agentur/Website-Betrieb",
            "links": {
                "html": "https://saferpage.de/fix-guides/beaverfit.de",
                "json": "https://saferpage.de/fix-guides/beaverfit.de/export"
            },
            "acceptance_criterion": "Jeder hohe Befund hat Owner, Guide, Umsetzungsschritt, Nachweis und Re-Scan-Link."
        },
        {
            "id": "pdf_report_pack",
            "label": "PDF-/Share-Paket für Kunden und Stakeholder",
            "score": 0,
            "status": "priorisieren",
            "evidence": "White-Label-Report-Pack mit Score 0/100.",
            "developer_action": "Report-Pack als PDF/JSON/CSV bereitstellen und interne Notizen oder Secrets aus öffentlichen Exporten fernhalten.",
            "owner": "Projektleitung/Agentur",
            "links": {
                "html": "https://saferpage.de/report-pack/beaverfit.de",
                "json": "https://saferpage.de/report-pack/beaverfit.de/export"
            },
            "acceptance_criterion": "Kundenfähiges Paket enthält Score, Abschnitte, Nachweise und klare Claim-Grenzen ohne private Rohdaten."
        }
    ],
    "sample_pages": [
        {
            "url": "https://www.beaverfit.de/datenschutz",
            "path": "/datenschutz",
            "title": "Datenschutz — BeaverFit | Deutschland",
            "category": "datenschutz",
            "sampled": true,
            "duration_ms": 216,
            "tracking_script_count": 1,
            "cookie_count": 1,
            "form_count": 1
        },
        {
            "url": "https://www.beaverfit.de/impressum",
            "path": "/impressum",
            "title": "Impressum — BeaverFit | Deutschland",
            "category": "impressum",
            "sampled": true,
            "duration_ms": 112,
            "tracking_script_count": 1,
            "cookie_count": 1,
            "form_count": 1
        },
        {
            "url": "https://www.beaverfit.de/startseite",
            "path": "/startseite",
            "title": "BeaverFit | Deutschland",
            "category": "unterseite",
            "sampled": true,
            "duration_ms": 155,
            "tracking_script_count": 1,
            "cookie_count": 1,
            "form_count": 1
        },
        {
            "url": "https://www.beaverfit.de/search",
            "path": "/search",
            "title": "BeaverFit | Deutschland",
            "category": "unterseite",
            "sampled": true,
            "duration_ms": 202,
            "tracking_script_count": 1,
            "cookie_count": 1,
            "form_count": 1
        }
    ],
    "deep_scan_plan": {
        "target_subpage_limit": 100,
        "current_discovered_page_count": 4,
        "current_sampled_page_count": 4,
        "current_candidate_page_count": 4,
        "missing_to_100_target": 96,
        "discovered_target_percent": 4,
        "sampled_target_percent": 4,
        "sitemap_url_count": 3,
        "sitemap_source_count": 1,
        "stored_sample_limit": 4,
        "status": "needs_more_discovery_sources",
        "summary": "DeepScan-Ziel: bis zu 100 priorisierte Unterseiten. Aktuell 4 entdeckt, 4 abgerufen, 96 bis zum 100-Seiten-Ziel offen.",
        "phases": [
            {
                "id": "discover",
                "label": "Sitemap, robots.txt und interne Links einsammeln",
                "acceptance": "Sitemap-Quellen, wichtige Seitentypen und Duplikate sind im Seiteninventar sichtbar.",
                "url": "https://saferpage.de/abdeckung/beaverfit.de/export"
            },
            {
                "id": "prioritize",
                "label": "Templates und Datenschutzpfade priorisieren",
                "acceptance": "Datenschutz, Impressum, Kontakt, Consent, Formular, Shop, Login-Hinweise und Top-Unterseiten sind vor generischen Links priorisiert.",
                "url": "https://saferpage.de/seiten/beaverfit.de/export"
            },
            {
                "id": "sample_with_backoff",
                "label": "Bis 100 Unterseiten schonend abrufen",
                "acceptance": "Timeout, Delay, Concurrency und Fehlerklassen verhindern Lastspitzen; keine Logins, keine Formularaktionen, keine Lasttests.",
                "url": "https://saferpage.de/crawler/ops-json"
            },
            {
                "id": "handoff",
                "label": "PDF/JSON/CSV/Markdown an Agentur übergeben",
                "acceptance": "Arbeitsbereiche, Unterseiten, Fix-Guides, Abnahmekriterien und Re-Scan-Link sind im Report-Pack enthalten.",
                "url": "https://saferpage.de/report-pack/beaverfit.de/export"
            }
        ],
        "guardrails": {
            "no_login_or_form_submit": true,
            "no_load_testing": true,
            "respect_backoff_and_timeout": true,
            "public_exports_are_sanitized": true,
            "raise_batch_size_only_after_low_error_rate": true
        }
    },
    "agency_handoff_package": {
        "summary": "Agentur-Handoff verbindet 100-Unterseiten-Plan, Entwicklerliste, Kundenbericht, PDF/Share-Paket, Qualitätsnachweise und Re-Scan-Gate in einem überprüfbaren Übergabepaket.",
        "deliverables": [
            {
                "id": "client_briefing",
                "label": "Kundenfähiges Management-Briefing",
                "owner": "Projektleitung/Agentur",
                "evidence_url": "https://saferpage.de/report-pack/beaverfit.de",
                "export_url": "https://saferpage.de/report-pack/beaverfit.de/export",
                "acceptance": "Score, Prüfdatum, wichtigste Datenschutz-/Security-/UX-Befunde, Claim-Grenzen und nächste Schritte sind ohne interne Rohdaten teilbar.",
                "boundary": "Kein Zertifikat, keine Rechtsberatung und keine Garantie für vollständige Konformität."
            },
            {
                "id": "developer_worklist",
                "label": "Entwickler-Arbeitsliste",
                "owner": "Webentwicklung/Agentur",
                "evidence_url": "https://saferpage.de/fix-guides/beaverfit.de",
                "export_url": "https://saferpage.de/fix-guides/beaverfit.de/export",
                "acceptance": "Jeder priorisierte Befund hat Owner, Guide, technische Maßnahme, Nachweislink und Re-Scan-Pfad.",
                "boundary": "Umsetzung und produktive Freigabe bleiben beim Betreiber oder bei der Agentur."
            },
            {
                "id": "subpage_inventory",
                "label": "Unterseiteninventar und 100er-Plan",
                "owner": "SEO/Webentwicklung",
                "evidence_url": "https://saferpage.de/seiten/beaverfit.de/export",
                "export_url": "https://saferpage.de/abdeckung/beaverfit.de/export",
                "acceptance": "Wichtige Templates, Datenschutz-, Kontakt-, Formular-, Shop- und Consent-Pfade sind priorisiert; Ausbau bis 100 Seiten folgt Backoff-Regeln.",
                "boundary": "Kein ungebremster Crawl, keine Logins, keine Formularaktionen und keine Lasttests."
            },
            {
                "id": "ux_security_quality_pack",
                "label": "Accessibility-, Performance- und Security-Paket",
                "owner": "UX/IT/Security",
                "evidence_url": "https://saferpage.de/barrierefreiheit/beaverfit.de/export",
                "export_url": "https://saferpage.de/sicherheit/beaverfit.de/export",
                "acceptance": "BFSG/WCAG-Basis, Antwortzeit, Drittanbieterlast, TLS/Header und externe Skripte sind in Arbeitspakete überführt.",
                "boundary": "Ersetzt keine vollständige manuelle WCAG-Prüfung, keinen Lighthouse-Lab-Report und keinen Penetrationstest."
            },
            {
                "id": "pdf_and_share_pack",
                "label": "PDF-/Share-Paket",
                "owner": "Projektleitung/Account",
                "evidence_url": "https://saferpage.de/report-pack/beaverfit.de/print",
                "export_url": "https://saferpage.de/report-pack/beaverfit.de/pdf",
                "acceptance": "Kunden können Report, Print/PDF, JSON, CSV und Markdown öffnen; private Notizen oder Secrets bleiben draußen.",
                "boundary": "PDF-ready bedeutet druckfähiges öffentliches Paket, nicht automatisch rechtliche Freigabe."
            },
            {
                "id": "rescan_and_release_gate",
                "label": "Re-Scan und Release-Gate",
                "owner": "Programm-Owner/Webbetrieb",
                "evidence_url": "https://saferpage.de/scanbetrieb/beaverfit.de",
                "export_url": "https://saferpage.de/release-gate/beaverfit.de/export",
                "acceptance": "Nach Änderungen werden betroffene Module erneut geprüft; hohe Befunde sind geschlossen oder bewusst mit Begründung freigegeben.",
                "boundary": "Das öffentliche Gate blockiert keinen echten Deploy; CI/CD-Anbindung braucht Betreiberfreigabe."
            }
        ],
        "sample_page_count": 4,
        "workstream_ids": [
            "page_inventory",
            "accessibility",
            "performance",
            "security",
            "fix_guides",
            "pdf_report_pack"
        ],
        "deep_scan_status": "needs_more_discovery_sources",
        "metrics": {
            "deliverable_count": 6,
            "acceptance_count": 6,
            "evidence_url_count": 6,
            "export_url_count": 6,
            "boundary_count": 6,
            "guardrail_count": 5
        }
    },
    "developer_handoff": {
        "recommended_order": [
            "fix_guides",
            "accessibility",
            "performance",
            "security",
            "page_inventory",
            "pdf_report_pack"
        ],
        "no_secret_policy": "Öffentliche Exporte enthalten nur Befunde, Links, Hashes, Referenzen und technische Evidenz; keine API-Keys, Ziel-URLs, Empfänger oder privaten Rohdaten.",
        "rescan_rule": "Nach jedem behobenen Block erneut über die kanonische Kurz-URL und die betroffenen Modul-Exports prüfen."
    },
    "links": {
        "html": "https://saferpage.de/agentur/beaverfit.de/deepscan",
        "json": "https://saferpage.de/agentur/beaverfit.de/deepscan-json",
        "csv": "https://saferpage.de/agentur/beaverfit.de/deepscan-csv",
        "markdown": "https://saferpage.de/agentur/beaverfit.de/deepscan-md",
        "short_report": "https://saferpage.de/beaverfit.de",
        "report_pack": "https://saferpage.de/report-pack/beaverfit.de",
        "pdf": "https://saferpage.de/report-pack/beaverfit.de/pdf",
        "schema": "https://saferpage.de/schemas/agency-developer-deepscan.v1"
    },
    "disclaimer": "Dieses DeepScan-Paket aggregiert gespeicherte SaferPage-Befunde für Agentur- und Entwicklerarbeit. Es ersetzt keine vollständige manuelle WCAG-/BFSG-, Lighthouse-, Penetration- oder Rechtsprüfung."
}
