{
    "schema": "https://saferpage.de/schemas/public-test-index.v1",
    "generated_at": "2026-06-13T10:22:01+00:00",
    "metrics": {
        "visible_count": 0,
        "selected_count": 0,
        "total_public_checks": 1325,
        "total_pages": 1,
        "letter_bucket_count": 25,
        "preview_coverage_percent": 99.9,
        "preview_missing_count": 1,
        "preview_actionable_missing_count": 0,
        "preview_unreachable_missing_count": 1,
        "preview_renderer_failed_missing_count": 1,
        "preview_legacy_size_count": 0,
        "preview_checked_limit": 12,
        "preview_contract_width": 160,
        "preview_contract_height": 150,
        "preview_contract_fit": "contain",
        "preview_contract_source_capture": "full_page",
        "preview_contract_capture_version": "contain-v3-fullpage-to-160x150",
        "canonical_short_url_count": 0,
        "direct_report_link_count": 0,
        "preview_ready_item_count": 0,
        "preview_contract_item_count": 0,
        "hash_report_link_count": 0,
        "php_report_link_count": 0,
        "operator_fix_link_count": 0,
        "operator_ticket_link_count": 0,
        "operator_ticket_delivery_link_count": 0,
        "privacy_link_count": 0,
        "security_link_count": 0,
        "index_quality_control_count": 11,
        "index_quality_control_failed_count": 7,
        "index_quality_control_warning_count": 0,
        "index_quality_boundary_count": 11,
        "index_quality_direct_link_count": 0,
        "index_quality_preview_contract_count": 0,
        "index_quality_operator_link_count": 0,
        "index_quality_operator_ticket_link_count": 0,
        "index_quality_discovery_link_count": 25,
        "discovery_manifest_available": 1,
        "discovery_manifest_linked_check_count": 1325,
        "discovery_manifest_letter_url_count": 25,
        "discovery_manifest_letter_page_url_count": 26,
        "discovery_manifest_test_sitemap_url_count": 26,
        "discovery_manifest_page_count": 26,
        "discovery_manifest_latest_page_count": 7,
        "discovery_manifest_latest_page_url_count": 7,
        "discovery_manifest_export_format_count": 4,
        "public_summary_raw_hard_warning_count": 0,
        "public_summary_hard_warning_count": 0,
        "public_summary_reframed_count": 0,
        "public_summary_signal_wording_count": 0,
        "crawler_german_count": 1223,
        "crawler_queue_count": 950,
        "crawler_visited_count": 1761,
        "crawler_error_count": 33,
        "crawler_last_run_refreshed": 0
    },
    "scope": {
        "letter": "q",
        "page": 1,
        "per_page": 200,
        "offset": 0,
        "visible_count": 0,
        "selected_count": 0,
        "total_public_checks": 1325,
        "total_pages": 1,
        "canonical_url": "https://saferpage.de/tests/q"
    },
    "letter_counts": {
        "0-9": 15,
        "a": 159,
        "b": 222,
        "c": 60,
        "d": 145,
        "e": 60,
        "f": 108,
        "g": 60,
        "h": 99,
        "i": 62,
        "j": 43,
        "k": 113,
        "l": 69,
        "m": 58,
        "n": 3,
        "o": 7,
        "p": 7,
        "r": 1,
        "s": 20,
        "t": 5,
        "u": 1,
        "v": 5,
        "w": 1,
        "x": 1,
        "z": 1
    },
    "discovery_manifest": {
        "summary": "Alle gespeicherten öffentlichen Checks sind über Neueste, A-Z-Seiten, Seitenexporte und Test-Sitemaps auffindbar.",
        "claim_boundary": "Das Manifest verlinkt gespeicherte öffentliche SaferPage-Checks; es behauptet keine Vollabdeckung aller deutschsprachigen Websites.",
        "latest": {
            "html_url": "https://saferpage.de/tests",
            "json_url": "https://saferpage.de/tests-json",
            "csv_url": "https://saferpage.de/tests-csv",
            "markdown_url": "https://saferpage.de/tests-md",
            "page_count": 7,
            "pages": [
                {
                    "page": 1,
                    "html_url": "https://saferpage.de/tests",
                    "json_url": "https://saferpage.de/tests-json",
                    "csv_url": "https://saferpage.de/tests-csv",
                    "markdown_url": "https://saferpage.de/tests-md"
                },
                {
                    "page": 2,
                    "html_url": "https://saferpage.de/tests?page=2",
                    "json_url": "https://saferpage.de/tests-json?page=2",
                    "csv_url": "https://saferpage.de/tests-csv?page=2",
                    "markdown_url": "https://saferpage.de/tests-md?page=2"
                },
                {
                    "page": 3,
                    "html_url": "https://saferpage.de/tests?page=3",
                    "json_url": "https://saferpage.de/tests-json?page=3",
                    "csv_url": "https://saferpage.de/tests-csv?page=3",
                    "markdown_url": "https://saferpage.de/tests-md?page=3"
                },
                {
                    "page": 4,
                    "html_url": "https://saferpage.de/tests?page=4",
                    "json_url": "https://saferpage.de/tests-json?page=4",
                    "csv_url": "https://saferpage.de/tests-csv?page=4",
                    "markdown_url": "https://saferpage.de/tests-md?page=4"
                },
                {
                    "page": 5,
                    "html_url": "https://saferpage.de/tests?page=5",
                    "json_url": "https://saferpage.de/tests-json?page=5",
                    "csv_url": "https://saferpage.de/tests-csv?page=5",
                    "markdown_url": "https://saferpage.de/tests-md?page=5"
                },
                {
                    "page": 6,
                    "html_url": "https://saferpage.de/tests?page=6",
                    "json_url": "https://saferpage.de/tests-json?page=6",
                    "csv_url": "https://saferpage.de/tests-csv?page=6",
                    "markdown_url": "https://saferpage.de/tests-md?page=6"
                },
                {
                    "page": 7,
                    "html_url": "https://saferpage.de/tests?page=7",
                    "json_url": "https://saferpage.de/tests-json?page=7",
                    "csv_url": "https://saferpage.de/tests-csv?page=7",
                    "markdown_url": "https://saferpage.de/tests-md?page=7"
                }
            ]
        },
        "sitemaps": {
            "index_url": "https://saferpage.de/sitemap.xml",
            "static_url": "https://saferpage.de/sitemap-static.xml",
            "test_sitemap_url_count": 26
        },
        "metrics": {
            "total_public_checks": 1325,
            "linked_check_count": 1325,
            "letter_bucket_count": 25,
            "letter_url_count": 25,
            "letter_page_url_count": 26,
            "test_sitemap_url_count": 26,
            "page_count": 26,
            "latest_page_count": 7,
            "latest_page_url_count": 7,
            "export_format_count": 4
        },
        "letters": [
            {
                "letter": "0-9",
                "check_count": 15,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/0-9",
                "json_url": "https://saferpage.de/tests/0-9/json",
                "csv_url": "https://saferpage.de/tests/0-9/csv",
                "markdown_url": "https://saferpage.de/tests/0-9/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-0-9.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/0-9",
                        "json_url": "https://saferpage.de/tests/0-9/json",
                        "csv_url": "https://saferpage.de/tests/0-9/csv",
                        "markdown_url": "https://saferpage.de/tests/0-9/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-0-9.xml"
                    }
                ]
            },
            {
                "letter": "a",
                "check_count": 159,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/a",
                "json_url": "https://saferpage.de/tests/a/json",
                "csv_url": "https://saferpage.de/tests/a/csv",
                "markdown_url": "https://saferpage.de/tests/a/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-a.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/a",
                        "json_url": "https://saferpage.de/tests/a/json",
                        "csv_url": "https://saferpage.de/tests/a/csv",
                        "markdown_url": "https://saferpage.de/tests/a/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-a.xml"
                    }
                ]
            },
            {
                "letter": "b",
                "check_count": 222,
                "page_count": 2,
                "html_url": "https://saferpage.de/tests/b",
                "json_url": "https://saferpage.de/tests/b/json",
                "csv_url": "https://saferpage.de/tests/b/csv",
                "markdown_url": "https://saferpage.de/tests/b/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-b.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/b",
                        "json_url": "https://saferpage.de/tests/b/json",
                        "csv_url": "https://saferpage.de/tests/b/csv",
                        "markdown_url": "https://saferpage.de/tests/b/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-b.xml"
                    },
                    {
                        "page": 2,
                        "html_url": "https://saferpage.de/tests/b?page=2",
                        "json_url": "https://saferpage.de/tests/b/json?page=2",
                        "csv_url": "https://saferpage.de/tests/b/csv?page=2",
                        "markdown_url": "https://saferpage.de/tests/b/md?page=2",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-b-2.xml"
                    }
                ]
            },
            {
                "letter": "c",
                "check_count": 60,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/c",
                "json_url": "https://saferpage.de/tests/c/json",
                "csv_url": "https://saferpage.de/tests/c/csv",
                "markdown_url": "https://saferpage.de/tests/c/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-c.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/c",
                        "json_url": "https://saferpage.de/tests/c/json",
                        "csv_url": "https://saferpage.de/tests/c/csv",
                        "markdown_url": "https://saferpage.de/tests/c/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-c.xml"
                    }
                ]
            },
            {
                "letter": "d",
                "check_count": 145,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/d",
                "json_url": "https://saferpage.de/tests/d/json",
                "csv_url": "https://saferpage.de/tests/d/csv",
                "markdown_url": "https://saferpage.de/tests/d/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-d.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/d",
                        "json_url": "https://saferpage.de/tests/d/json",
                        "csv_url": "https://saferpage.de/tests/d/csv",
                        "markdown_url": "https://saferpage.de/tests/d/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-d.xml"
                    }
                ]
            },
            {
                "letter": "e",
                "check_count": 60,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/e",
                "json_url": "https://saferpage.de/tests/e/json",
                "csv_url": "https://saferpage.de/tests/e/csv",
                "markdown_url": "https://saferpage.de/tests/e/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-e.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/e",
                        "json_url": "https://saferpage.de/tests/e/json",
                        "csv_url": "https://saferpage.de/tests/e/csv",
                        "markdown_url": "https://saferpage.de/tests/e/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-e.xml"
                    }
                ]
            },
            {
                "letter": "f",
                "check_count": 108,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/f",
                "json_url": "https://saferpage.de/tests/f/json",
                "csv_url": "https://saferpage.de/tests/f/csv",
                "markdown_url": "https://saferpage.de/tests/f/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-f.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/f",
                        "json_url": "https://saferpage.de/tests/f/json",
                        "csv_url": "https://saferpage.de/tests/f/csv",
                        "markdown_url": "https://saferpage.de/tests/f/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-f.xml"
                    }
                ]
            },
            {
                "letter": "g",
                "check_count": 60,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/g",
                "json_url": "https://saferpage.de/tests/g/json",
                "csv_url": "https://saferpage.de/tests/g/csv",
                "markdown_url": "https://saferpage.de/tests/g/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-g.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/g",
                        "json_url": "https://saferpage.de/tests/g/json",
                        "csv_url": "https://saferpage.de/tests/g/csv",
                        "markdown_url": "https://saferpage.de/tests/g/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-g.xml"
                    }
                ]
            },
            {
                "letter": "h",
                "check_count": 99,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/h",
                "json_url": "https://saferpage.de/tests/h/json",
                "csv_url": "https://saferpage.de/tests/h/csv",
                "markdown_url": "https://saferpage.de/tests/h/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-h.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/h",
                        "json_url": "https://saferpage.de/tests/h/json",
                        "csv_url": "https://saferpage.de/tests/h/csv",
                        "markdown_url": "https://saferpage.de/tests/h/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-h.xml"
                    }
                ]
            },
            {
                "letter": "i",
                "check_count": 62,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/i",
                "json_url": "https://saferpage.de/tests/i/json",
                "csv_url": "https://saferpage.de/tests/i/csv",
                "markdown_url": "https://saferpage.de/tests/i/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-i.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/i",
                        "json_url": "https://saferpage.de/tests/i/json",
                        "csv_url": "https://saferpage.de/tests/i/csv",
                        "markdown_url": "https://saferpage.de/tests/i/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-i.xml"
                    }
                ]
            },
            {
                "letter": "j",
                "check_count": 43,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/j",
                "json_url": "https://saferpage.de/tests/j/json",
                "csv_url": "https://saferpage.de/tests/j/csv",
                "markdown_url": "https://saferpage.de/tests/j/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-j.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/j",
                        "json_url": "https://saferpage.de/tests/j/json",
                        "csv_url": "https://saferpage.de/tests/j/csv",
                        "markdown_url": "https://saferpage.de/tests/j/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-j.xml"
                    }
                ]
            },
            {
                "letter": "k",
                "check_count": 113,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/k",
                "json_url": "https://saferpage.de/tests/k/json",
                "csv_url": "https://saferpage.de/tests/k/csv",
                "markdown_url": "https://saferpage.de/tests/k/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-k.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/k",
                        "json_url": "https://saferpage.de/tests/k/json",
                        "csv_url": "https://saferpage.de/tests/k/csv",
                        "markdown_url": "https://saferpage.de/tests/k/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-k.xml"
                    }
                ]
            },
            {
                "letter": "l",
                "check_count": 69,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/l",
                "json_url": "https://saferpage.de/tests/l/json",
                "csv_url": "https://saferpage.de/tests/l/csv",
                "markdown_url": "https://saferpage.de/tests/l/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-l.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/l",
                        "json_url": "https://saferpage.de/tests/l/json",
                        "csv_url": "https://saferpage.de/tests/l/csv",
                        "markdown_url": "https://saferpage.de/tests/l/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-l.xml"
                    }
                ]
            },
            {
                "letter": "m",
                "check_count": 58,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/m",
                "json_url": "https://saferpage.de/tests/m/json",
                "csv_url": "https://saferpage.de/tests/m/csv",
                "markdown_url": "https://saferpage.de/tests/m/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-m.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/m",
                        "json_url": "https://saferpage.de/tests/m/json",
                        "csv_url": "https://saferpage.de/tests/m/csv",
                        "markdown_url": "https://saferpage.de/tests/m/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-m.xml"
                    }
                ]
            },
            {
                "letter": "n",
                "check_count": 3,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/n",
                "json_url": "https://saferpage.de/tests/n/json",
                "csv_url": "https://saferpage.de/tests/n/csv",
                "markdown_url": "https://saferpage.de/tests/n/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-n.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/n",
                        "json_url": "https://saferpage.de/tests/n/json",
                        "csv_url": "https://saferpage.de/tests/n/csv",
                        "markdown_url": "https://saferpage.de/tests/n/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-n.xml"
                    }
                ]
            },
            {
                "letter": "o",
                "check_count": 7,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/o",
                "json_url": "https://saferpage.de/tests/o/json",
                "csv_url": "https://saferpage.de/tests/o/csv",
                "markdown_url": "https://saferpage.de/tests/o/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-o.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/o",
                        "json_url": "https://saferpage.de/tests/o/json",
                        "csv_url": "https://saferpage.de/tests/o/csv",
                        "markdown_url": "https://saferpage.de/tests/o/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-o.xml"
                    }
                ]
            },
            {
                "letter": "p",
                "check_count": 7,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/p",
                "json_url": "https://saferpage.de/tests/p/json",
                "csv_url": "https://saferpage.de/tests/p/csv",
                "markdown_url": "https://saferpage.de/tests/p/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-p.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/p",
                        "json_url": "https://saferpage.de/tests/p/json",
                        "csv_url": "https://saferpage.de/tests/p/csv",
                        "markdown_url": "https://saferpage.de/tests/p/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-p.xml"
                    }
                ]
            },
            {
                "letter": "r",
                "check_count": 1,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/r",
                "json_url": "https://saferpage.de/tests/r/json",
                "csv_url": "https://saferpage.de/tests/r/csv",
                "markdown_url": "https://saferpage.de/tests/r/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-r.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/r",
                        "json_url": "https://saferpage.de/tests/r/json",
                        "csv_url": "https://saferpage.de/tests/r/csv",
                        "markdown_url": "https://saferpage.de/tests/r/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-r.xml"
                    }
                ]
            },
            {
                "letter": "s",
                "check_count": 20,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/s",
                "json_url": "https://saferpage.de/tests/s/json",
                "csv_url": "https://saferpage.de/tests/s/csv",
                "markdown_url": "https://saferpage.de/tests/s/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-s.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/s",
                        "json_url": "https://saferpage.de/tests/s/json",
                        "csv_url": "https://saferpage.de/tests/s/csv",
                        "markdown_url": "https://saferpage.de/tests/s/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-s.xml"
                    }
                ]
            },
            {
                "letter": "t",
                "check_count": 5,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/t",
                "json_url": "https://saferpage.de/tests/t/json",
                "csv_url": "https://saferpage.de/tests/t/csv",
                "markdown_url": "https://saferpage.de/tests/t/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-t.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/t",
                        "json_url": "https://saferpage.de/tests/t/json",
                        "csv_url": "https://saferpage.de/tests/t/csv",
                        "markdown_url": "https://saferpage.de/tests/t/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-t.xml"
                    }
                ]
            },
            {
                "letter": "u",
                "check_count": 1,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/u",
                "json_url": "https://saferpage.de/tests/u/json",
                "csv_url": "https://saferpage.de/tests/u/csv",
                "markdown_url": "https://saferpage.de/tests/u/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-u.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/u",
                        "json_url": "https://saferpage.de/tests/u/json",
                        "csv_url": "https://saferpage.de/tests/u/csv",
                        "markdown_url": "https://saferpage.de/tests/u/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-u.xml"
                    }
                ]
            },
            {
                "letter": "v",
                "check_count": 5,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/v",
                "json_url": "https://saferpage.de/tests/v/json",
                "csv_url": "https://saferpage.de/tests/v/csv",
                "markdown_url": "https://saferpage.de/tests/v/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-v.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/v",
                        "json_url": "https://saferpage.de/tests/v/json",
                        "csv_url": "https://saferpage.de/tests/v/csv",
                        "markdown_url": "https://saferpage.de/tests/v/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-v.xml"
                    }
                ]
            },
            {
                "letter": "w",
                "check_count": 1,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/w",
                "json_url": "https://saferpage.de/tests/w/json",
                "csv_url": "https://saferpage.de/tests/w/csv",
                "markdown_url": "https://saferpage.de/tests/w/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-w.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/w",
                        "json_url": "https://saferpage.de/tests/w/json",
                        "csv_url": "https://saferpage.de/tests/w/csv",
                        "markdown_url": "https://saferpage.de/tests/w/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-w.xml"
                    }
                ]
            },
            {
                "letter": "x",
                "check_count": 1,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/x",
                "json_url": "https://saferpage.de/tests/x/json",
                "csv_url": "https://saferpage.de/tests/x/csv",
                "markdown_url": "https://saferpage.de/tests/x/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-x.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/x",
                        "json_url": "https://saferpage.de/tests/x/json",
                        "csv_url": "https://saferpage.de/tests/x/csv",
                        "markdown_url": "https://saferpage.de/tests/x/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-x.xml"
                    }
                ]
            },
            {
                "letter": "z",
                "check_count": 1,
                "page_count": 1,
                "html_url": "https://saferpage.de/tests/z",
                "json_url": "https://saferpage.de/tests/z/json",
                "csv_url": "https://saferpage.de/tests/z/csv",
                "markdown_url": "https://saferpage.de/tests/z/md",
                "sitemap_url": "https://saferpage.de/sitemap-tests-z.xml",
                "pages": [
                    {
                        "page": 1,
                        "html_url": "https://saferpage.de/tests/z",
                        "json_url": "https://saferpage.de/tests/z/json",
                        "csv_url": "https://saferpage.de/tests/z/csv",
                        "markdown_url": "https://saferpage.de/tests/z/md",
                        "sitemap_url": "https://saferpage.de/sitemap-tests-z.xml"
                    }
                ]
            }
        ]
    },
    "preview_coverage": {
        "total": 1325,
        "preview_count": 1324,
        "missing_count": 1,
        "actionable_missing_count": 0,
        "unreachable_missing_count": 1,
        "renderer_failed_missing_count": 1,
        "legacy_size_count": 0,
        "preview_percent": 99.9,
        "source_counts": {
            "missing": 1,
            "page_preview": 1316,
            "screenshot_cache_current": 8
        },
        "missing_preview": [],
        "unreachable_missing_preview": [
            {
                "host": "dsv.de",
                "checked_at": "2026-06-12 09:10:27.690611+02",
                "report_url": "https://saferpage.de/dsv.de",
                "blocker": "Headless Chromium konnte im gespeicherten Lauf keine Seitenvorschau erzeugen.",
                "suggested_action": "Nicht als normalen Backfill-Task werten; Renderer-Grenze separat beobachten."
            }
        ],
        "renderer_failed_missing_preview": [
            {
                "host": "dsv.de",
                "checked_at": "2026-06-12 09:10:27.690611+02",
                "report_url": "https://saferpage.de/dsv.de",
                "blocker": "Headless Chromium konnte im gespeicherten Lauf keine Seitenvorschau erzeugen.",
                "suggested_action": "Renderer-Grenze dokumentieren; Zielserver/Bot-Erreichbarkeit prüfen und später erneut scannen."
            }
        ],
        "contract": {
            "width": 160,
            "height": 150,
            "fit": "contain",
            "source_capture": "full_page",
            "capture_version": "contain-v3-fullpage-to-160x150",
            "renderer": "playwright-chromium",
            "display_policy": "resize_contain_no_crop",
            "favicon_policy": "Favicon nur Zusatzsignal, nie Ersatz fuer Seitenvorschau."
        },
        "policy": "160x150-Seitenvorschau pro oeffentlichem Check; vollstaendig sichtbar skaliert; Full-Page-Screenshot als Quelle; Favicon nur als Zusatzsignal."
    },
    "preview_contract": {
        "width": 160,
        "height": 150,
        "fit": "contain",
        "source_capture": "full_page",
        "capture_version": "contain-v3-fullpage-to-160x150",
        "renderer": "playwright-chromium",
        "display_policy": "resize_contain_no_crop",
        "favicon_policy": "Favicon nur Zusatzsignal, nie Ersatz fuer Seitenvorschau."
    },
    "crawler_summary": {
        "german_count": 1223,
        "queue_count": 950,
        "visited_count": 1761,
        "error_count": 33,
        "last_run_refreshed": 0,
        "user_agent": "SaferPageCrawler/0.3 (+https://saferpage.de/bot; schedules passive DACH website checks; report examples: https://saferpage.de/tests)"
    },
    "links": {
        "html": "https://saferpage.de/tests/q",
        "json": "https://saferpage.de/tests/q/json",
        "csv": "https://saferpage.de/tests/q/csv",
        "markdown": "https://saferpage.de/tests/q/md",
        "sitemap": "https://saferpage.de/sitemap.xml",
        "crawler": "https://saferpage.de/crawler"
    },
    "index_quality_controls": [
        {
            "id": "direct_short_urls",
            "label": "Kurz-URLs führen direkt zum Domainreport",
            "status": "failed",
            "evidence": "visible_count=0, canonical_short_url_count=0, hash_report_link_count=0, php_report_link_count=0.",
            "user_message": "Ein Klick auf den Kurzreport öffnet direkt https://saferpage.de/{domain}; Platzhalter, Hash-Links und sichtbare .php-Links sind nicht Teil des Index.",
            "operator_action": "Routing, Canonical-URLs und Exportlinks prüfen, wenn ein Item nicht direkt auf den Kurzreport zeigt.",
            "claim_boundary": "Der Index bewertet nur gespeicherte öffentliche SaferPage-Reports und erzeugt keine Aussage über nicht geprüfte Unterseiten."
        },
        {
            "id": "preview_contract_160x150_full_page",
            "label": "Seitenvorschau zeigt die Website als kleines Full-Page-Screenshot",
            "status": "passed",
            "evidence": "contract=160x150, fit=contain, source_capture=full_page, preview_coverage_percent=99.9, actionable_missing=0, unreachable_missing=1, renderer_failed_missing=1, legacy_size_count=0.",
            "user_message": "Die Vorschau ist bewusst klein, aber vollständig sichtbar. Favicons sind nur Zusatzsignal zur URL, nicht Ersatz für die Seitenvorschau.",
            "operator_action": "Screenshot-Backfill für erreichbare Missing-Items ausführen; nicht erreichbare Zielserver getrennt ausweisen.",
            "claim_boundary": "Ein 160x150-Screenshot ist ein Orientierungssignal, kein visueller Vollaudit und kein Beleg für alle Unterseitenzustände."
        },
        {
            "id": "recent_and_az_discovery",
            "label": "Letzte Checks, A-Z und Sitemap machen geprüfte Seiten auffindbar",
            "status": "failed",
            "evidence": "visible_count=0, total_public_checks=1325, letter_bucket_count=25, total_pages=1.",
            "user_message": "Sie sehen die zuletzt geprüften Domains; alle gespeicherten Tests sind zusätzlich nach Anfangsbuchstaben und über die Sitemap erreichbar.",
            "operator_action": "Wenn neue Checks nicht erscheinen, Recent-Index, Letter-Buckets und Sitemap-Generierung prüfen.",
            "claim_boundary": "Der Betreiberindex enthält öffentliche, gespeicherte Checks; er ersetzt keine Vollabdeckung aller deutschen Websites."
        },
        {
            "id": "az_sitemap_discovery_manifest",
            "label": "Discovery-Manifest verlinkt Neueste-Seiten, A-Z-Seiten und Test-Sitemaps",
            "status": "failed",
            "evidence": "total_public_checks=1325, linked_check_count=1325, latest_page_url_count=7/1, letter_page_url_count=26, test_sitemap_url_count=26.",
            "user_message": "Alle gespeicherten Checks sind ueber Neueste-Pagination, A-Z-Seiten, JSON/CSV/Markdown-Exports und Test-Sitemaps auffindbar.",
            "operator_action": "Wenn Counts auseinanderlaufen, Letter-Counts, Pagination, Sitemap-Index und /tests-json-Manifest gemeinsam pruefen.",
            "claim_boundary": "Discovery bedeutet Auffindbarkeit gespeicherter oeffentlicher Checks, nicht Vollabdeckung aller Websites im deutschsprachigen Raum."
        },
        {
            "id": "crawler_identity_and_limits",
            "label": "Crawler ist als SaferPage-Crawler transparent ausgewiesen",
            "status": "passed",
            "evidence": "user_agent=SaferPageCrawler/0.3 (+https://saferpage.de/bot; schedules passive DACH website checks; report examples: https://saferpage.de/tests), german_count=1223, queue_count=950.",
            "user_message": "Sie können nachvollziehen, wie der SaferPage-Crawler Ihre Website anfragt: User-Agent, Transparenzseite und Beispielreports sind öffentlich benannt.",
            "operator_action": "User-Agent, /bot, /crawler und Queue-/Fehler-Metriken vor Skalierung prüfen.",
            "claim_boundary": "Crawler-Metriken zeigen Betriebssignale, aber keine Zustimmung des geprüften Betreibers und keine juristische Freigabe."
        },
        {
            "id": "operator_fix_paths",
            "label": "Betreiber bekommen direkt Fix-Guides und Datenschutz-/Security-Ansichten",
            "status": "failed",
            "evidence": "fix_guide_link_count=0, privacy_link_count=0, security_link_count=0, visible_count=0.",
            "user_message": "Für jeden geprüften Host erhalten Sie nicht nur den Score, sondern auch Datenschutzansicht, Sicherheitsansicht und konkrete Betreiber-Fix-Guides.",
            "operator_action": "Link-Routing für /datenschutz/{domain}, /sicherheit/{domain} und /fix-guides/{domain} prüfen.",
            "claim_boundary": "Fix-Guides sind Umsetzungshilfen aus passiven Signalen; Betreiberkontext und rechtliche Prüfung bleiben separat."
        },
        {
            "id": "operator_ticket_discovery_paths",
            "label": "Betreiber-Tickets sind pro geprüftem Eintrag direkt auffindbar",
            "status": "failed",
            "evidence": "ticket_link_count=0, delivery_link_count=0, visible_count=0.",
            "user_message": "Sie erhalten pro geprüftem Host exportierbare Betreiber-Tickets und den trockenen Delivery-Nachweis direkt am Eintrag.",
            "operator_action": "Routing für /fix-guides/{domain}/tickets, /tickets-json, /tickets-csv, /tickets-md und /tickets-delivery-json prüfen.",
            "claim_boundary": "Die HTML-Ticketübersicht ist Betreiber-Discovery und darf indexierbar sein; Maschinenexports bleiben noindex und gehören nicht als indexierbare URLs in die XML-Sitemap."
        },
        {
            "id": "public_summary_privacy_signal_wording",
            "label": "Index formuliert Ergebnisse als Datenschutz-Signale",
            "status": "failed",
            "evidence": "visible_count=0, raw_hard_warning_count=0, public_hard_warning_count=0, reframed_count=0, signal_wording_count=0.",
            "user_message": "Die Kurztexte benennen Datenschutz-Signale für Ihre Betreiberprüfung. Sie geben keine Nutzungsfreigabe, kein Nutzungsverbot und kein Rechtsurteil aus.",
            "operator_action": "Wenn harte Warntexte im Index erscheinen, Summary-Normalisierung und Report-Score-Mapping prüfen.",
            "claim_boundary": "Kurztexte verdichten passive Signale; die fachliche Einordnung steht im vollständigen Report und kann bei Consent-Walls, Paywalls oder Login-Strecken manuelle Prüfung brauchen."
        },
        {
            "id": "report_and_fix_statement_boundaries",
            "label": "Report- und Fix-Guide-Aussagegrenzen sind verlinkt",
            "status": "failed",
            "evidence": "visible_count=0, report_links=0, fix_guide_links=0.",
            "user_message": "Jeder A-Z-Eintrag führt Sie zum Report mit Aussage-Ampel und zu Fix-Guides, die automatisch belegte Evidence, manuelle Prüfung und nicht erlaubte Claims trennen.",
            "operator_action": "Wenn Einträge keinen Report- oder Fix-Guide-Link haben, Canonical-Report, /fix-guides/{domain} und die Sitemap-Samples prüfen.",
            "claim_boundary": "Aussage-Ampel und Fix-Guides sind Kommunikations- und Abnahmehilfen; sie ersetzen keine Rechtsberatung, kein Zertifikat und keine Betreiberfreigabe."
        },
        {
            "id": "public_no_secret_boundary",
            "label": "Öffentlicher Index bleibt no-secret und no-log",
            "status": "passed",
            "evidence": "exports=html,json,csv,markdown; private_logs=0; secrets=0; raw_har=0.",
            "user_message": "Sie sehen nur öffentliche Reportdaten, Vorschauen und Links. Private Besucherlogs, Secrets und Roh-HAR-Dateien werden nicht exportiert.",
            "operator_action": "Neue Felder vor Veröffentlichung auf Tokens, Rohpayloads, interne URLs und personenbezogene Logs prüfen.",
            "claim_boundary": "Öffentliche Nachweise sind absichtlich reduziert; detaillierte Betreiberunterlagen gehören in freigegebene Betreiberbereiche."
        },
        {
            "id": "automated_assessment_boundary",
            "label": "Automatische Bewertung erklärt ihre Grenzen",
            "status": "passed",
            "evidence": "scope=passive_startseite_plus_public_routes; limitations=consent_wall,paywall,forms,cookie_classification,operator_context.",
            "user_message": "Nutzen Sie automatische Checks als Orientierung. Consent-Walls, Paywalls, Formulare, notwendige Cookies und Betreiberkontext können manuelle Prüfung brauchen.",
            "operator_action": "Bei starken Marken, Verlagen, Login-Strecken oder Consent-Walls Reportgrenzen sichtbar lassen und False-Positive-Smokes prüfen.",
            "claim_boundary": "Der Score ist keine Rechtsberatung, kein Zertifikat und kein Ersatz für einen manuellen DSGVO-/Security-Audit."
        }
    ],
    "items": [],
    "disclaimer": "Der Testindex enthält nur öffentliche, passive SaferPage-Checks. Er exportiert keine privaten Besucherlogs, keine Secrets, keine Roh-HAR-Dateien und keine nicht freigegebenen Betreiberunterlagen."
}
