{
    "schema": "https://saferpage.de/schemas/operator-remediation-ticket-delivery.v1",
    "generated_at": "2026-07-01T01:28:42+00:00",
    "domain": "zgap.de",
    "available": true,
    "scan": {
        "id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
        "checked_at": "2026-06-26 02:10:49.811438+02"
    },
    "summary": "Delivery-Paket für Nachweispositionen mit Webhook-, Slack-, Teams- und Jira-Payloads, HMAC-Receiver-Vertrag und Test-Fixture.",
    "dry_run": true,
    "does_not_send": true,
    "metrics": {
        "delivery_job_count": 36,
        "high_priority_count": 18,
        "channel_count": 4,
        "receiver_check_count": 6,
        "test_fixture_negative_count": 4
    },
    "signature_verification": {
        "algorithm": "HMAC-SHA256",
        "canonical_body": "Exakt canonical_webhook_body aus dem jeweiligen delivery_job signieren; keine Pretty-Print- oder Reordering-Variante verwenden.",
        "signature_secret_ref": "SAFERPAGE_OPERATOR_WEBHOOK_SECRET oder zielsystemspezifisches Secret im Secret Manager",
        "signature_header": "X-SaferPage-Signature",
        "signature_format": "sha256=<hex_hmac_sha256>",
        "body_sha256_header": "X-SaferPage-Body-SHA256",
        "idempotency_header": "X-SaferPage-Idempotency-Key",
        "receiver_must_check": [
            "HMAC über den exakten Request-Body stimmt mit X-SaferPage-Signature überein.",
            "SHA-256 des exakten Request-Body stimmt mit X-SaferPage-Body-SHA256 überein.",
            "X-SaferPage-Event ist operator.remediation.ticket_ready.",
            "X-SaferPage-Schema ist operator-remediation-ticket-delivery.v1.",
            "X-SaferPage-Idempotency-Key wurde für Domain, Scan und Nachweisposition noch nicht verarbeitet.",
            "Empfänger, Projekt, Queue und Verantwortlichkeit sind für diese Domain freigegeben."
        ],
        "failure_policy": "Bei fehlender Signatur, Body-Hash-Abweichung, Replay oder unbekanntem Zielsystem ablehnen, nicht teilweise verarbeiten und Auditlog ohne Secret-Werte schreiben."
    },
    "verification_test_fixture": {
        "public_test_secret": "saferpage_remediation_ticket_test_secret_do_not_use_in_production",
        "canonical_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"example.test\",\"scan_id\":\"scan_test_2026_06_09\",\"ticket_id\":\"remediation_test_ticket\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Datenschutz/IT\",\"sla\":\"7 Tage\",\"title\":\"Consent-Befund reproduzieren und beheben\",\"evidence\":\"Test-Fixture für Receiver-Implementierung.\",\"action\":\"Testpayload unverändert verifizieren, Idempotency-Key prüfen und danach verwerfen.\",\"acceptance_criteria\":[\"Signatur stimmt mit exakt diesem Body überein.\",\"Idempotency-Key wurde noch nicht verarbeitet.\",\"Event, Schema und Domain sind erlaubt.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/example.test\",\"rescan\":\"https://saferpage.de/scanbetrieb/example.test\",\"report\":\"https://saferpage.de/example.test\",\"fix_guides\":\"https://saferpage.de/fix-guides/example.test\"}}",
        "canonical_body_sha256": "d400aae00e8ca67a606bbe2cef89a666f79174ced28defbbc8f869ada9d24d8d",
        "expected_signature": "sha256=13333abfdcab2d8aa3a9f1824427a27dc193726ca5bd82791e40061cee97f56d",
        "expected_signature_header": "X-SaferPage-Signature: sha256=13333abfdcab2d8aa3a9f1824427a27dc193726ca5bd82791e40061cee97f56d",
        "idempotency_key": "sp-fix-test-fixture",
        "positive_test": "Empfänger akzeptiert den unveränderten canonical_body mit expected_signature und verwirft ihn danach als Testevent.",
        "negative_tests": [
            "Ein geändertes Byte im Body muss abgelehnt werden.",
            "Ein fehlender oder doppelter X-SaferPage-Idempotency-Key muss abgelehnt werden.",
            "Eine Signatur mit anderem Secret muss abgelehnt werden.",
            "Ein erneuter Request mit derselben Idempotency-Key/Event-Kombination darf nicht erneut verarbeitet werden."
        ],
        "sample_commands": [
            "printf %s \"$BODY\" | openssl dgst -sha256 -hmac \"saferpage_remediation_ticket_test_secret_do_not_use_in_production\" -binary | xxd -p -c 256",
            "printf %s \"$BODY\" | sha256sum",
            "curl -X POST -H \"Content-Type: application/json\" -H \"X-SaferPage-Event: operator.remediation.ticket_ready\" -H \"X-SaferPage-Signature: sha256=13333abfdcab2d8aa3a9f1824427a27dc193726ca5bd82791e40061cee97f56d\" --data \"$BODY\" https://receiver.example.test/saferpage"
        ]
    },
    "retry_policy": {
        "max_attempts": 3,
        "backoff_seconds": [
            300,
            1800,
            7200
        ],
        "dead_letter_queue": "privacyops.remediation_ticket.failed"
    },
    "delivery_jobs": [
        {
            "id": "sp-fix-34d2f9fe69943681c7de50a8",
            "ticket_id": "remediation_vendor_contract_transfer_fix",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Legal/Vendor-Verantwortung",
            "sla": "7 Tage",
            "summary": "[zgap.de] Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
            "description": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.",
            "idempotency_key": "sp-fix-34d2f9fe69943681c7de50a8",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-34d2f9fe69943681c7de50a8",
                "X-SaferPage-Body-SHA256": "ad8d934a753e94d00f6aeb2911b003f999f19615c2f8aa0e6e5343771a15d782",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_vendor_contract_transfer_fix",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Legal/Vendor-Verantwortung",
                "sla": "7 Tage",
                "title": "Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "evidence": "Vendor-Due-Diligence mit 1 Anbieter(n), 0 hohem Risiko, 1 AVV-/DPA-Prüfung(en) und 1 Transfer-/Jurisdiktionsfrage(n).",
                "action": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_vendor_contract_transfer_fix\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Legal/Vendor-Verantwortung\",\"sla\":\"7 Tage\",\"title\":\"Anbieterakten, AVV/DPA und Transfers priorisiert schließen\",\"evidence\":\"Vendor-Due-Diligence mit 1 Anbieter(n), 0 hohem Risiko, 1 AVV-/DPA-Prüfung(en) und 1 Transfer-/Jurisdiktionsfrage(n).\",\"action\":\"Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "ad8d934a753e94d00f6aeb2911b003f999f19615c2f8aa0e6e5343771a15d782",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Anbieterakten, AVV/DPA und Transfers priorisiert schließen*\nTop-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Legal/Vendor-Verantwortung · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Anbieterakten, AVV/DPA und Transfers priorisiert schließen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Legal/Vendor-Verantwortung"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Anbieterakten, AVV/DPA und Transfers priorisiert schließen",
                    "description": "Top-Anbieter mit Zweck, Rolle, AVV/DPA, TOMs, Subprozessoren und Transfergrundlage dokumentieren.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-a43282c32bbaa6776a48c2a0",
            "ticket_id": "remediation_button_name_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Buttons ohne erkennbaren Namen",
            "description": "Buttons mit sichtbarem Text oder aria-label beschriften.",
            "idempotency_key": "sp-fix-a43282c32bbaa6776a48c2a0",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-a43282c32bbaa6776a48c2a0",
                "X-SaferPage-Body-SHA256": "84c117dde311cd811ac01cfcd722d8bb1bad196d056d6e1d346647e8183dfd52",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_button_name_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Buttons ohne erkennbaren Namen",
                "evidence": "",
                "action": "Buttons mit sichtbarem Text oder aria-label beschriften.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_button_name_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Buttons ohne erkennbaren Namen\",\"evidence\":\"\",\"action\":\"Buttons mit sichtbarem Text oder aria-label beschriften.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "84c117dde311cd811ac01cfcd722d8bb1bad196d056d6e1d346647e8183dfd52",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Buttons ohne erkennbaren Namen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Buttons ohne erkennbaren Namen*\nButtons mit sichtbarem Text oder aria-label beschriften."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Buttons ohne erkennbaren Namen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Buttons ohne erkennbaren Namen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Buttons mit sichtbarem Text oder aria-label beschriften."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Buttons ohne erkennbaren Namen",
                    "description": "Buttons mit sichtbarem Text oder aria-label beschriften.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-fe6665e3902acba1d5f165bf",
            "ticket_id": "remediation_consent_banner_dark_pattern_risk",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Consent-Banner mit Dark-Pattern-/UX-Risiko",
            "description": "Ablehnen, Einstellungen und Akzeptieren gleichwertig anbieten und Reject technisch wirksam machen.",
            "idempotency_key": "sp-fix-fe6665e3902acba1d5f165bf",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-fe6665e3902acba1d5f165bf",
                "X-SaferPage-Body-SHA256": "67510ce596a097e4df0b9497c008b8441d5f34bc3cd4fad4d04c81c7a90f8bcd",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_consent_banner_dark_pattern_risk",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Consent-Banner mit Dark-Pattern-/UX-Risiko",
                "evidence": "",
                "action": "Ablehnen, Einstellungen und Akzeptieren gleichwertig anbieten und Reject technisch wirksam machen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_consent_banner_dark_pattern_risk\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Consent-Banner mit Dark-Pattern-/UX-Risiko\",\"evidence\":\"\",\"action\":\"Ablehnen, Einstellungen und Akzeptieren gleichwertig anbieten und Reject technisch wirksam machen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "67510ce596a097e4df0b9497c008b8441d5f34bc3cd4fad4d04c81c7a90f8bcd",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Consent-Banner mit Dark-Pattern-/UX-Risiko",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Consent-Banner mit Dark-Pattern-/UX-Risiko*\nAblehnen, Einstellungen und Akzeptieren gleichwertig anbieten und Reject technisch wirksam machen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Consent-Banner mit Dark-Pattern-/UX-Risiko",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Consent-Banner mit Dark-Pattern-/UX-Risiko"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Ablehnen, Einstellungen und Akzeptieren gleichwertig anbieten und Reject technisch wirksam machen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Consent-Banner mit Dark-Pattern-/UX-Risiko",
                    "description": "Ablehnen, Einstellungen und Akzeptieren gleichwertig anbieten und Reject technisch wirksam machen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-5be19bb691e5e3795061874d",
            "ticket_id": "remediation_consent_state_reject_evidence_failed",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus",
            "description": "Reject-Zustand gegen Cookies, Storage und Drittanbieter prüfen; nicht notwendige Signale nach Ablehnen blockieren.",
            "idempotency_key": "sp-fix-5be19bb691e5e3795061874d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-5be19bb691e5e3795061874d",
                "X-SaferPage-Body-SHA256": "af1d221cbb7b85c0a73103de950458562710d4b29e616ff49873bcbecb09a698",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_consent_state_reject_evidence_failed",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus",
                "evidence": "",
                "action": "Reject-Zustand gegen Cookies, Storage und Drittanbieter prüfen; nicht notwendige Signale nach Ablehnen blockieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_consent_state_reject_evidence_failed\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus\",\"evidence\":\"\",\"action\":\"Reject-Zustand gegen Cookies, Storage und Drittanbieter prüfen; nicht notwendige Signale nach Ablehnen blockieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "af1d221cbb7b85c0a73103de950458562710d4b29e616ff49873bcbecb09a698",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus*\nReject-Zustand gegen Cookies, Storage und Drittanbieter prüfen; nicht notwendige Signale nach Ablehnen blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Reject-Zustand gegen Cookies, Storage und Drittanbieter prüfen; nicht notwendige Signale nach Ablehnen blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Consent-Zustand: Ablehnen löst weiterhin Datenschutz-Signale aus",
                    "description": "Reject-Zustand gegen Cookies, Storage und Drittanbieter prüfen; nicht notwendige Signale nach Ablehnen blockieren.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-067d19582facad65dbbdf02a",
            "ticket_id": "remediation_missing_csp",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Content-Security-Policy fehlt",
            "description": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-067d19582facad65dbbdf02a",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-067d19582facad65dbbdf02a",
                "X-SaferPage-Body-SHA256": "86d335da98acd18d2b94d368baa041555087ea6e131767c95c3475995ea3994b",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_csp",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Content-Security-Policy fehlt",
                "evidence": "",
                "action": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_csp\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Content-Security-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `content-security-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "86d335da98acd18d2b94d368baa041555087ea6e131767c95c3475995ea3994b",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Content-Security-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Content-Security-Policy fehlt*\nHeader `content-security-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Content-Security-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Content-Security-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `content-security-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Content-Security-Policy fehlt",
                    "description": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-b40abc6b3e4618f1d55a4796",
            "ticket_id": "remediation_consent_no_reject_option",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Cookie-Hinweis ohne klare Ablehnen-Option",
            "description": "Ablehnen sollte genauso leicht auffindbar sein wie Akzeptieren.",
            "idempotency_key": "sp-fix-b40abc6b3e4618f1d55a4796",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-b40abc6b3e4618f1d55a4796",
                "X-SaferPage-Body-SHA256": "69650ec354a7eb9fc272fd81206a4ddf3bea6468da1e27ca4e8be23d977beb9d",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_consent_no_reject_option",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Cookie-Hinweis ohne klare Ablehnen-Option",
                "evidence": "",
                "action": "Ablehnen sollte genauso leicht auffindbar sein wie Akzeptieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_consent_no_reject_option\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Cookie-Hinweis ohne klare Ablehnen-Option\",\"evidence\":\"\",\"action\":\"Ablehnen sollte genauso leicht auffindbar sein wie Akzeptieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "69650ec354a7eb9fc272fd81206a4ddf3bea6468da1e27ca4e8be23d977beb9d",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Cookie-Hinweis ohne klare Ablehnen-Option",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cookie-Hinweis ohne klare Ablehnen-Option*\nAblehnen sollte genauso leicht auffindbar sein wie Akzeptieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Cookie-Hinweis ohne klare Ablehnen-Option",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cookie-Hinweis ohne klare Ablehnen-Option"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Ablehnen sollte genauso leicht auffindbar sein wie Akzeptieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cookie-Hinweis ohne klare Ablehnen-Option",
                    "description": "Ablehnen sollte genauso leicht auffindbar sein wie Akzeptieren.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e77b2b108951543fa47f683c",
            "ticket_id": "remediation_privacy_policy_tracking_disclosure_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
            "description": "Cookie-, Tracking-, Web-Storage- und Drittanbieter-Hinweise mit der tatsächlichen Technik aus dem Scan abgleichen.",
            "idempotency_key": "sp-fix-e77b2b108951543fa47f683c",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e77b2b108951543fa47f683c",
                "X-SaferPage-Body-SHA256": "f00b5bc289fcd24c41ebf8cb304c5b312fc11698fdb803b22bf096f0a06c95db",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_privacy_policy_tracking_disclosure_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
                "evidence": "",
                "action": "Cookie-, Tracking-, Web-Storage- und Drittanbieter-Hinweise mit der tatsächlichen Technik aus dem Scan abgleichen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_privacy_policy_tracking_disclosure_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt\",\"evidence\":\"\",\"action\":\"Cookie-, Tracking-, Web-Storage- und Drittanbieter-Hinweise mit der tatsächlichen Technik aus dem Scan abgleichen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutzerklaerung-verbessern\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "f00b5bc289fcd24c41ebf8cb304c5b312fc11698fdb803b22bf096f0a06c95db",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt*\nCookie-, Tracking-, Web-Storage- und Drittanbieter-Hinweise mit der tatsächlichen Technik aus dem Scan abgleichen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Cookie-, Tracking-, Web-Storage- und Drittanbieter-Hinweise mit der tatsächlichen Technik aus dem Scan abgleichen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
                    "description": "Cookie-, Tracking-, Web-Storage- und Drittanbieter-Hinweise mit der tatsächlichen Technik aus dem Scan abgleichen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/datenschutzerklaerung-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-beeaee1facfcd341c296ce73",
            "ticket_id": "remediation_module_privacy_consent",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Datenschutz, Cookies & Consent",
            "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
            "idempotency_key": "sp-fix-beeaee1facfcd341c296ce73",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-beeaee1facfcd341c296ce73",
                "X-SaferPage-Body-SHA256": "4a61b2571c0d78628561ffd3cda27c35cd072f81ef1d2f83f4644ceb5f44455b",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_module_privacy_consent",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Datenschutz, Cookies & Consent",
                "evidence": "0 Tracking-Script(s), 1 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: nein, Consent-Audit: 78.",
                "action": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_module_privacy_consent\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Datenschutz, Cookies & Consent\",\"evidence\":\"0 Tracking-Script(s), 1 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: nein, Consent-Audit: 78.\",\"action\":\"Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "4a61b2571c0d78628561ffd3cda27c35cd072f81ef1d2f83f4644ceb5f44455b",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Datenschutz, Cookies & Consent",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Datenschutz, Cookies & Consent*\nTracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Datenschutz, Cookies & Consent",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Datenschutz, Cookies & Consent"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Datenschutz, Cookies & Consent",
                    "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-5be88cef4716c3ddb3ece54f",
            "ticket_id": "remediation_privacy_policy_required_items_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
            "description": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.",
            "idempotency_key": "sp-fix-5be88cef4716c3ddb3ece54f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-5be88cef4716c3ddb3ece54f",
                "X-SaferPage-Body-SHA256": "ecc6a96606d56a924dc7d2e42dc935575c6c73b84dc1c51e0e8a8f5e59d2ff37",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_privacy_policy_required_items_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                "evidence": "",
                "action": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_privacy_policy_required_items_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab\",\"evidence\":\"\",\"action\":\"Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutzerklaerung-verbessern\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "ecc6a96606d56a924dc7d2e42dc935575c6c73b84dc1c51e0e8a8f5e59d2ff37",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab*\nVerantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
                    "description": "Verantwortlicher, Zwecke, Rechtsgrundlagen, Rechte, Speicherfristen, Empfänger, Cookies/Tracking und Widerruf strukturiert ergänzen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/datenschutzerklaerung-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e12566f603c455d7b87cef78",
            "ticket_id": "remediation_missing_hsts",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] HSTS fehlt",
            "description": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-e12566f603c455d7b87cef78",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e12566f603c455d7b87cef78",
                "X-SaferPage-Body-SHA256": "1233181cac28a2959d452531f812d2e6e2d234faf1c508ec47cb4e078fc2eae7",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_hsts",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "HSTS fehlt",
                "evidence": "",
                "action": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_hsts\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"HSTS fehlt\",\"evidence\":\"\",\"action\":\"Header `strict-transport-security` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "1233181cac28a2959d452531f812d2e6e2d234faf1c508ec47cb4e078fc2eae7",
            "slack_payload": {
                "text": "[HOCH] zgap.de: HSTS fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*HSTS fehlt*\nHeader `strict-transport-security` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: HSTS fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "HSTS fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] HSTS fehlt",
                    "description": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d593a036e076220fc6885c30",
            "ticket_id": "remediation_pre_consent_nonessential_cookies",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Möglicherweise nicht notwendige Cookies vor Einwilligung",
            "description": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
            "idempotency_key": "sp-fix-d593a036e076220fc6885c30",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d593a036e076220fc6885c30",
                "X-SaferPage-Body-SHA256": "9f7a05f24174112baba5fd5c6cdbba010568752816b5fb5bb165915ec98ce7a2",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_pre_consent_nonessential_cookies",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "evidence": "",
                "action": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_pre_consent_nonessential_cookies\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Möglicherweise nicht notwendige Cookies vor Einwilligung\",\"evidence\":\"\",\"action\":\"Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "9f7a05f24174112baba5fd5c6cdbba010568752816b5fb5bb165915ec98ce7a2",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Möglicherweise nicht notwendige Cookies vor Einwilligung*\nPrüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Möglicherweise nicht notwendige Cookies vor Einwilligung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Möglicherweise nicht notwendige Cookies vor Einwilligung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Möglicherweise nicht notwendige Cookies vor Einwilligung",
                    "description": "Prüfen, ob diese Cookies technisch notwendig sind oder erst nach Einwilligung gesetzt werden dürfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-b51e1b9277666d952a54ab59",
            "ticket_id": "remediation_post_reject_new_cookies",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Neue Cookies nach Ablehnen erkannt",
            "description": "Nach Ablehnen keine neuen nicht notwendigen Cookies setzen; technisch notwendige Cookies sauber erklären.",
            "idempotency_key": "sp-fix-b51e1b9277666d952a54ab59",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-b51e1b9277666d952a54ab59",
                "X-SaferPage-Body-SHA256": "43953070899b3a5aab14415cf1a7596087c66bdef96eb2ed234e455ae27bc32e",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_post_reject_new_cookies",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Neue Cookies nach Ablehnen erkannt",
                "evidence": "",
                "action": "Nach Ablehnen keine neuen nicht notwendigen Cookies setzen; technisch notwendige Cookies sauber erklären.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_post_reject_new_cookies\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Neue Cookies nach Ablehnen erkannt\",\"evidence\":\"\",\"action\":\"Nach Ablehnen keine neuen nicht notwendigen Cookies setzen; technisch notwendige Cookies sauber erklären.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "43953070899b3a5aab14415cf1a7596087c66bdef96eb2ed234e455ae27bc32e",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Neue Cookies nach Ablehnen erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Neue Cookies nach Ablehnen erkannt*\nNach Ablehnen keine neuen nicht notwendigen Cookies setzen; technisch notwendige Cookies sauber erklären."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Neue Cookies nach Ablehnen erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Neue Cookies nach Ablehnen erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Nach Ablehnen keine neuen nicht notwendigen Cookies setzen; technisch notwendige Cookies sauber erklären."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Neue Cookies nach Ablehnen erkannt",
                    "description": "Nach Ablehnen keine neuen nicht notwendigen Cookies setzen; technisch notwendige Cookies sauber erklären.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-927f44a1f5c7357bdf878532",
            "ticket_id": "remediation_security_header_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "IT/Security",
            "sla": "7 Tage",
            "summary": "[zgap.de] Security-Header, Referrer-Policy und Browser-Schutz setzen",
            "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
            "idempotency_key": "sp-fix-927f44a1f5c7357bdf878532",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-927f44a1f5c7357bdf878532",
                "X-SaferPage-Body-SHA256": "9b16b5a56cc28b8be54c5d12a9e5334c90aa8b052984fecd64160a430b3442ec",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_security_header_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "IT/Security",
                "sla": "7 Tage",
                "title": "Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "evidence": "0 von 9 wichtigen Security-Headern vorhanden, 0 korrekt bewertet. Keine Content-Security-Policy gefunden.",
                "action": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_security_header_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"IT/Security\",\"sla\":\"7 Tage\",\"title\":\"Security-Header, Referrer-Policy und Browser-Schutz setzen\",\"evidence\":\"0 von 9 wichtigen Security-Headern vorhanden, 0 korrekt bewertet. Keine Content-Security-Policy gefunden.\",\"action\":\"Befund mit Hintergrundseite einordnen und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "9b16b5a56cc28b8be54c5d12a9e5334c90aa8b052984fecd64160a430b3442ec",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Security-Header, Referrer-Policy und Browser-Schutz setzen*\nBefund mit Hintergrundseite einordnen und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: IT/Security · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Security-Header, Referrer-Policy und Browser-Schutz setzen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Security-Header, Referrer-Policy und Browser-Schutz setzen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Hintergrundseite einordnen und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "IT/Security"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Security-Header, Referrer-Policy und Browser-Schutz setzen",
                    "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-26e32385363b6b4023e1c3f4",
            "ticket_id": "remediation_module_security_tls",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Sicherheit, TLS & Header",
            "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
            "idempotency_key": "sp-fix-26e32385363b6b4023e1c3f4",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-26e32385363b6b4023e1c3f4",
                "X-SaferPage-Body-SHA256": "5a450b689ab1d3772c80791bb25f361cb9c7a2eafa6aa21a9b07fb285881aa73",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_module_security_tls",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Sicherheit, TLS & Header",
                "evidence": "1 Infrastruktur-Hinweis(e), Security-Header: 0/9 vorhanden, 9 fehlen, externe Skript-Hosts: 0.",
                "action": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_module_security_tls\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Sicherheit, TLS & Header\",\"evidence\":\"1 Infrastruktur-Hinweis(e), Security-Header: 0/9 vorhanden, 9 fehlen, externe Skript-Hosts: 0.\",\"action\":\"HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "5a450b689ab1d3772c80791bb25f361cb9c7a2eafa6aa21a9b07fb285881aa73",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Sicherheit, TLS & Header",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Sicherheit, TLS & Header*\nHTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Sicherheit, TLS & Header",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Sicherheit, TLS & Header"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Sicherheit, TLS & Header",
                    "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-0de04a46b4061e0c6776b314",
            "ticket_id": "remediation_hidden_text",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Versteckter Text erkannt",
            "description": "Prüfen, ob Text absichtlich vor Nutzern verborgen, aber für Suchmaschinen platziert wird.",
            "idempotency_key": "sp-fix-0de04a46b4061e0c6776b314",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-0de04a46b4061e0c6776b314",
                "X-SaferPage-Body-SHA256": "b1d5708a550969e660bc673481d8f685261efd86a4afae93fc97258611857d2d",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_hidden_text",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Versteckter Text erkannt",
                "evidence": "",
                "action": "Prüfen, ob Text absichtlich vor Nutzern verborgen, aber für Suchmaschinen platziert wird.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_hidden_text\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Versteckter Text erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob Text absichtlich vor Nutzern verborgen, aber für Suchmaschinen platziert wird.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "b1d5708a550969e660bc673481d8f685261efd86a4afae93fc97258611857d2d",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Versteckter Text erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Versteckter Text erkannt*\nPrüfen, ob Text absichtlich vor Nutzern verborgen, aber für Suchmaschinen platziert wird."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Versteckter Text erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Versteckter Text erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob Text absichtlich vor Nutzern verborgen, aber für Suchmaschinen platziert wird."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Versteckter Text erkannt",
                    "description": "Prüfen, ob Text absichtlich vor Nutzern verborgen, aber für Suchmaschinen platziert wird.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-8853c0cdc444414334ec3a1f",
            "ticket_id": "remediation_important_pages_not_discovered",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
            "description": "Datenschutz und Impressum sollten von der Startseite aus klar erreichbar sein.",
            "idempotency_key": "sp-fix-8853c0cdc444414334ec3a1f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-8853c0cdc444414334ec3a1f",
                "X-SaferPage-Body-SHA256": "21a2a2b73f9dc9c1bf6a8a80ee69255bbc09bc5797c284a689e808c9447511cb",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_important_pages_not_discovered",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
                "evidence": "",
                "action": "Datenschutz und Impressum sollten von der Startseite aus klar erreichbar sein.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_important_pages_not_discovered\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden\",\"evidence\":\"\",\"action\":\"Datenschutz und Impressum sollten von der Startseite aus klar erreichbar sein.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "21a2a2b73f9dc9c1bf6a8a80ee69255bbc09bc5797c284a689e808c9447511cb",
            "slack_payload": {
                "text": "[HOCH] zgap.de: Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden*\nDatenschutz und Impressum sollten von der Startseite aus klar erreichbar sein."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Datenschutz und Impressum sollten von der Startseite aus klar erreichbar sein."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
                    "description": "Datenschutz und Impressum sollten von der Startseite aus klar erreichbar sein.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-f3276a54912ec41257f05050",
            "ticket_id": "remediation_missing_x_content_type_options",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] X-Content-Type-Options fehlt",
            "description": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-f3276a54912ec41257f05050",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-f3276a54912ec41257f05050",
                "X-SaferPage-Body-SHA256": "44a5923366610e22f5a2499ab101d6b0dfbe1b74d09ac6f05a3e0f2600cf84e7",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_x_content_type_options",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "X-Content-Type-Options fehlt",
                "evidence": "",
                "action": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_x_content_type_options\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"X-Content-Type-Options fehlt\",\"evidence\":\"\",\"action\":\"Header `x-content-type-options` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "44a5923366610e22f5a2499ab101d6b0dfbe1b74d09ac6f05a3e0f2600cf84e7",
            "slack_payload": {
                "text": "[HOCH] zgap.de: X-Content-Type-Options fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*X-Content-Type-Options fehlt*\nHeader `x-content-type-options` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: X-Content-Type-Options fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "X-Content-Type-Options fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] X-Content-Type-Options fehlt",
                    "description": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-f4f8eb02aa2a3f84a891e029",
            "ticket_id": "remediation_missing_x_frame_options",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[zgap.de] X-Frame-Options fehlt",
            "description": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-f4f8eb02aa2a3f84a891e029",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-f4f8eb02aa2a3f84a891e029",
                "X-SaferPage-Body-SHA256": "e9221f841b36fb69253bbda39dc5477655781a09c02a7af609828cc4519e264f",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_x_frame_options",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "X-Frame-Options fehlt",
                "evidence": "",
                "action": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_x_frame_options\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"X-Frame-Options fehlt\",\"evidence\":\"\",\"action\":\"Header `x-frame-options` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "e9221f841b36fb69253bbda39dc5477655781a09c02a7af609828cc4519e264f",
            "slack_payload": {
                "text": "[HOCH] zgap.de: X-Frame-Options fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*X-Frame-Options fehlt*\nHeader `x-frame-options` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 7 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] zgap.de: X-Frame-Options fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "X-Frame-Options fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `x-frame-options` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] X-Frame-Options fehlt",
                    "description": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-0c86c91379ce209b25267273",
            "ticket_id": "mapping_cookie_310ceb7e3b89a566504f88fcc6fe57ab",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[zgap.de] 310ceb7e3b89a566504f88fcc6fe57ab",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-0c86c91379ce209b25267273",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-0c86c91379ce209b25267273",
                "X-SaferPage-Body-SHA256": "94b5085f67b8e0fcebfc884b463c5b5c53d21a02dab3bd815a85cfc9bc14cdae",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "mapping_cookie_310ceb7e3b89a566504f88fcc6fe57ab",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "310ceb7e3b89a566504f88fcc6fe57ab",
                "evidence": "zgap.de",
                "action": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen",
                    "evidence": "https://saferpage.de/cookies/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"mapping_cookie_310ceb7e3b89a566504f88fcc6fe57ab\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"310ceb7e3b89a566504f88fcc6fe57ab\",\"evidence\":\"zgap.de\",\"action\":\"Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\",\"evidence\":\"https://saferpage.de/cookies/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "94b5085f67b8e0fcebfc884b463c5b5c53d21a02dab3bd815a85cfc9bc14cdae",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: 310ceb7e3b89a566504f88fcc6fe57ab",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*310ceb7e3b89a566504f88fcc6fe57ab*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/cookies/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: 310ceb7e3b89a566504f88fcc6fe57ab",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "310ceb7e3b89a566504f88fcc6fe57ab"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] 310ceb7e3b89a566504f88fcc6fe57ab",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/zgap.de\nHintergrundseite: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-22262c45cb233bb7a7300605",
            "ticket_id": "remediation_module_accessibility_usability",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[zgap.de] Barrierefreiheit & Usability",
            "description": "Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen.",
            "idempotency_key": "sp-fix-22262c45cb233bb7a7300605",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-22262c45cb233bb7a7300605",
                "X-SaferPage-Body-SHA256": "c049ee953d28607e8de00c507526c01347b073a78f7abc3ee1632da9ca5155b6",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_module_accessibility_usability",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Barrierefreiheit & Usability",
                "evidence": "45 Bild(er) ohne alt, 0 Formularfeld(er) ohne Beschriftung, 1 Button(s) ohne Namen.",
                "action": "Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_module_accessibility_usability\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Barrierefreiheit & Usability\",\"evidence\":\"45 Bild(er) ohne alt, 0 Formularfeld(er) ohne Beschriftung, 1 Button(s) ohne Namen.\",\"action\":\"Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "c049ee953d28607e8de00c507526c01347b073a78f7abc3ee1632da9ca5155b6",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: Barrierefreiheit & Usability",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Barrierefreiheit & Usability*\nAlt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: Barrierefreiheit & Usability",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Barrierefreiheit & Usability"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Barrierefreiheit & Usability",
                    "description": "Alt-Texte, Formularlabels, Button-Namen, lang-Attribut und Überschriftenstruktur für Nutzer und Screenreader prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-64816365d867d83a4c7731a4",
            "ticket_id": "remediation_accessibility_gap",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "UX/IT",
            "sla": "30 Tage",
            "summary": "[zgap.de] Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
            "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
            "idempotency_key": "sp-fix-64816365d867d83a4c7731a4",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-64816365d867d83a4c7731a4",
                "X-SaferPage-Body-SHA256": "85c93dd0f1de7392b9931816604e278c9ceed368288380f34022ccecc03350e7",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_accessibility_gap",
                "priority": "mittel",
                "severity": "warning",
                "owner": "UX/IT",
                "sla": "30 Tage",
                "title": "Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
                "evidence": "63 Bild(er), 0 Formularfeld(er), 1 Button(s) im passiven HTML-Sample auf Basis-Barrierefreiheit geprüft.",
                "action": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_accessibility_gap\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"UX/IT\",\"sla\":\"30 Tage\",\"title\":\"Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen\",\"evidence\":\"63 Bild(er), 0 Formularfeld(er), 1 Button(s) im passiven HTML-Sample auf Basis-Barrierefreiheit geprüft.\",\"action\":\"Befund mit Hintergrundseite einordnen und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "85c93dd0f1de7392b9931816604e278c9ceed368288380f34022ccecc03350e7",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen*\nBefund mit Hintergrundseite einordnen und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: UX/IT · Zielzeit: 30 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Hintergrundseite einordnen und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "UX/IT"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cookie-Banner, Formulare und mobile Nutzung barriereärmer machen",
                    "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-28ecc1a8b378f7ba30580a8e",
            "ticket_id": "remediation_module_site_coverage",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[zgap.de] Seitenabdeckung & Crawl",
            "description": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.",
            "idempotency_key": "sp-fix-28ecc1a8b378f7ba30580a8e",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-28ecc1a8b378f7ba30580a8e",
                "X-SaferPage-Body-SHA256": "da2aa9f06a51731f5ad464f03e75f24fee0018e1dac56999b4690f98f5c6d14f",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_module_site_coverage",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Seitenabdeckung & Crawl",
                "evidence": "30 interne Linkziele erkannt, 4 priorisierte Unterseite(n) abgerufen.",
                "action": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_module_site_coverage\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Seitenabdeckung & Crawl\",\"evidence\":\"30 interne Linkziele erkannt, 4 priorisierte Unterseite(n) abgerufen.\",\"action\":\"Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "da2aa9f06a51731f5ad464f03e75f24fee0018e1dac56999b4690f98f5c6d14f",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: Seitenabdeckung & Crawl",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Seitenabdeckung & Crawl*\nDatenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: Seitenabdeckung & Crawl",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Seitenabdeckung & Crawl"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Seitenabdeckung & Crawl",
                    "description": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-3bce63a7b8f018f96f862f78",
            "ticket_id": "remediation_coverage_gap",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Webbetrieb/SEO",
            "sla": "30 Tage",
            "summary": "[zgap.de] Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
            "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
            "idempotency_key": "sp-fix-3bce63a7b8f018f96f862f78",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-3bce63a7b8f018f96f862f78",
                "X-SaferPage-Body-SHA256": "f20504b64f6bdbd0c17972ede24c63b5c2708a35054b112917360e1c971bf539",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_coverage_gap",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Webbetrieb/SEO",
                "sla": "30 Tage",
                "title": "Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                "evidence": "30 interne Linkziele erkannt (0 aus Sitemap), 4 priorisierte Unterseite(n) zusätzlich abgerufen.",
                "action": "Befund mit Hintergrundseite einordnen und danach erneut scannen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_coverage_gap\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Webbetrieb/SEO\",\"sla\":\"30 Tage\",\"title\":\"Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken\",\"evidence\":\"30 interne Linkziele erkannt (0 aus Sitemap), 4 priorisierte Unterseite(n) zusätzlich abgerufen.\",\"action\":\"Befund mit Hintergrundseite einordnen und danach erneut scannen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "f20504b64f6bdbd0c17972ede24c63b5c2708a35054b112917360e1c971bf539",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken*\nBefund mit Hintergrundseite einordnen und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Webbetrieb/SEO · Zielzeit: 30 Tage · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Hintergrundseite einordnen und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Webbetrieb/SEO"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                    "description": "Befund mit Hintergrundseite einordnen und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-aea235601a11dca4b7a6bb70",
            "ticket_id": "mapping_vendor_ionos-0c175908c.sendserver.email",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[zgap.de] ionos-0c175908c.sendserver.email",
            "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
            "idempotency_key": "sp-fix-aea235601a11dca4b7a6bb70",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-aea235601a11dca4b7a6bb70",
                "X-SaferPage-Body-SHA256": "c87a8f81d49916828f1e992cb06564556f2e5130fe5236b6f48228b83e2af710",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "mapping_vendor_ionos-0c175908c.sendserver.email",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "ionos-0c175908c.sendserver.email",
                "evidence": "Sonstige",
                "action": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren",
                    "evidence": "https://saferpage.de/anbieter/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"mapping_vendor_ionos-0c175908c.sendserver.email\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"ionos-0c175908c.sendserver.email\",\"evidence\":\"Sonstige\",\"action\":\"Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\",\"evidence\":\"https://saferpage.de/anbieter/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "c87a8f81d49916828f1e992cb06564556f2e5130fe5236b6f48228b83e2af710",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: ionos-0c175908c.sendserver.email",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*ionos-0c175908c.sendserver.email*\nZweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/anbieter/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: ionos-0c175908c.sendserver.email",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "ionos-0c175908c.sendserver.email"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] ionos-0c175908c.sendserver.email",
                    "description": "Zweck, Rolle, AVV/DPA, Region, Transfer und Consent-Kategorie bestätigen.\n\nNachweis: https://saferpage.de/anbieter/zgap.de\nHintergrundseite: https://saferpage.de/guides/drittanbieter-datenschutz-erklaeren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-20d1518fb72cfa0f57c6c00e",
            "ticket_id": "mapping_request_ionos-0c175908c.sendserver.email",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[zgap.de] ionos-0c175908c.sendserver.email",
            "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
            "idempotency_key": "sp-fix-20d1518fb72cfa0f57c6c00e",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-20d1518fb72cfa0f57c6c00e",
                "X-SaferPage-Body-SHA256": "623b9356f0a977ea310e0efb3c00aecbef44d3de7f8629a3cc91eb65a8a12510",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "mapping_request_ionos-0c175908c.sendserver.email",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "ionos-0c175908c.sendserver.email",
                "evidence": "other",
                "action": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.",
                "acceptance_criteria": [
                    "Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.",
                    "Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.",
                    "Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen",
                    "evidence": "https://saferpage.de/anbieter/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"mapping_request_ionos-0c175908c.sendserver.email\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"ionos-0c175908c.sendserver.email\",\"evidence\":\"other\",\"action\":\"Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\",\"acceptance_criteria\":[\"Dienst ist einer Servicekarte mit Anbieter, Zweck und Kategorie zugeordnet.\",\"Consent-Banner, Datenschutzhinweis und Anbieterregister verwenden dieselbe Bezeichnung.\",\"Re-Scan zeigt keine unbekannte oder ungeklärte Tracking-Auslösung.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\",\"evidence\":\"https://saferpage.de/anbieter/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "623b9356f0a977ea310e0efb3c00aecbef44d3de7f8629a3cc91eb65a8a12510",
            "slack_payload": {
                "text": "[MITTEL] zgap.de: ionos-0c175908c.sendserver.email",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*ionos-0c175908c.sendserver.email*\nRequest einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Marketing/IT/Datenschutz · Zielzeit: 30 Tage · https://saferpage.de/anbieter/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] zgap.de: ionos-0c175908c.sendserver.email",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "ionos-0c175908c.sendserver.email"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] ionos-0c175908c.sendserver.email",
                    "description": "Request einem Dienst, Zweck und Consent-Zustand zuordnen oder blockieren.\n\nNachweis: https://saferpage.de/anbieter/zgap.de\nHintergrundseite: https://saferpage.de/guides/servicekarte-und-anbieterinventar-aufbauen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-860df2ef4eecc2e533a56242",
            "ticket_id": "remediation_unknown_vendor_jurisdiction",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Anbieter-Jurisdiktion nicht klar ableitbar",
            "description": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.",
            "idempotency_key": "sp-fix-860df2ef4eecc2e533a56242",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-860df2ef4eecc2e533a56242",
                "X-SaferPage-Body-SHA256": "15c35af21e8cc73ff0098c7fc49c3ad00d41180e2500dab8f6467f04213493bc",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_unknown_vendor_jurisdiction",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Anbieter-Jurisdiktion nicht klar ableitbar",
                "evidence": "",
                "action": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_unknown_vendor_jurisdiction\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Anbieter-Jurisdiktion nicht klar ableitbar\",\"evidence\":\"\",\"action\":\"Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "15c35af21e8cc73ff0098c7fc49c3ad00d41180e2500dab8f6467f04213493bc",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Anbieter-Jurisdiktion nicht klar ableitbar",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Anbieter-Jurisdiktion nicht klar ableitbar*\nUnklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Anbieter-Jurisdiktion nicht klar ableitbar",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Anbieter-Jurisdiktion nicht klar ableitbar"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Anbieter-Jurisdiktion nicht klar ableitbar",
                    "description": "Unklare Drittanbieter in Anbieterinventar, AVV-Prozess und Datenschutzerklärung nachrecherchieren.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/drittlandtransfer-und-anbieter-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-f24015b5e8d97f3c1e4137a6",
            "ticket_id": "remediation_image_alt_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Bilder ohne Alternativtext",
            "description": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.",
            "idempotency_key": "sp-fix-f24015b5e8d97f3c1e4137a6",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-f24015b5e8d97f3c1e4137a6",
                "X-SaferPage-Body-SHA256": "c5c8932d360c45389c53a3d2343b6fcfbaf7eb9f9122d9a0b65a84645f072207",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_image_alt_missing",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Bilder ohne Alternativtext",
                "evidence": "",
                "action": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_image_alt_missing\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Bilder ohne Alternativtext\",\"evidence\":\"\",\"action\":\"Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "c5c8932d360c45389c53a3d2343b6fcfbaf7eb9f9122d9a0b65a84645f072207",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Bilder ohne Alternativtext",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Bilder ohne Alternativtext*\nInhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Bilder ohne Alternativtext",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Bilder ohne Alternativtext"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Bilder ohne Alternativtext",
                    "description": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-8ce9ac3e82d7b9d5880bb3c7",
            "ticket_id": "remediation_cookie_missing_samesite",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Cookie ohne SameSite-Attribut",
            "description": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.",
            "idempotency_key": "sp-fix-8ce9ac3e82d7b9d5880bb3c7",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-8ce9ac3e82d7b9d5880bb3c7",
                "X-SaferPage-Body-SHA256": "6547116b38db13d3a795b88f19825f936b68d3c237c583d293993117710be007",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_cookie_missing_samesite",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cookie ohne SameSite-Attribut",
                "evidence": "",
                "action": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/cookies-sicher-konfigurieren",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_cookie_missing_samesite\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cookie ohne SameSite-Attribut\",\"evidence\":\"\",\"action\":\"SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/cookies-sicher-konfigurieren\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "6547116b38db13d3a795b88f19825f936b68d3c237c583d293993117710be007",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Cookie ohne SameSite-Attribut",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cookie ohne SameSite-Attribut*\nSameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Cookie ohne SameSite-Attribut",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cookie ohne SameSite-Attribut"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cookie ohne SameSite-Attribut",
                    "description": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/cookies-sicher-konfigurieren\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d5f1cac3e945e5edacf3a4ca",
            "ticket_id": "remediation_missing_cross_origin_embedder_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Cross-Origin-Embedder-Policy fehlt",
            "description": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-d5f1cac3e945e5edacf3a4ca",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d5f1cac3e945e5edacf3a4ca",
                "X-SaferPage-Body-SHA256": "5d3a62bfe80e6e9fbe7e4fa33c86326df86aa1b3468db20a5fd0262c34ff18d3",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_cross_origin_embedder_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cross-Origin-Embedder-Policy fehlt",
                "evidence": "",
                "action": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_cross_origin_embedder_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cross-Origin-Embedder-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "5d3a62bfe80e6e9fbe7e4fa33c86326df86aa1b3468db20a5fd0262c34ff18d3",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Cross-Origin-Embedder-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cross-Origin-Embedder-Policy fehlt*\nHeader `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Cross-Origin-Embedder-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cross-Origin-Embedder-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cross-Origin-Embedder-Policy fehlt",
                    "description": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-4c18a2d67f70b68dcf62a378",
            "ticket_id": "remediation_missing_cross_origin_opener_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Cross-Origin-Opener-Policy fehlt",
            "description": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-4c18a2d67f70b68dcf62a378",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-4c18a2d67f70b68dcf62a378",
                "X-SaferPage-Body-SHA256": "b9f9ec5c4bd3b109cc2ff3eecd56685c1c88c58fff7d5c434a2c9e00f011d4c0",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_cross_origin_opener_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cross-Origin-Opener-Policy fehlt",
                "evidence": "",
                "action": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_cross_origin_opener_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cross-Origin-Opener-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "b9f9ec5c4bd3b109cc2ff3eecd56685c1c88c58fff7d5c434a2c9e00f011d4c0",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Cross-Origin-Opener-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cross-Origin-Opener-Policy fehlt*\nHeader `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Cross-Origin-Opener-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cross-Origin-Opener-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cross-Origin-Opener-Policy fehlt",
                    "description": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-dbf4d53e3a5a837f93d13469",
            "ticket_id": "remediation_missing_cross_origin_resource_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Cross-Origin-Resource-Policy fehlt",
            "description": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-dbf4d53e3a5a837f93d13469",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-dbf4d53e3a5a837f93d13469",
                "X-SaferPage-Body-SHA256": "fe376179272d9cc53b75ba229a2c31a01a4e9a9090cd1583fad227076818ff8a",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_cross_origin_resource_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Cross-Origin-Resource-Policy fehlt",
                "evidence": "",
                "action": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_cross_origin_resource_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Cross-Origin-Resource-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "fe376179272d9cc53b75ba229a2c31a01a4e9a9090cd1583fad227076818ff8a",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Cross-Origin-Resource-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Cross-Origin-Resource-Policy fehlt*\nHeader `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Cross-Origin-Resource-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Cross-Origin-Resource-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Cross-Origin-Resource-Policy fehlt",
                    "description": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e12ffee79d64ae45eec4d67c",
            "ticket_id": "remediation_privacy_policy_dpo_contact_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
            "description": "Betreiber sollten einen Datenschutzkontakt nennen oder nachvollziehbar erklären, wie Datenschutzanfragen gestellt werden können.",
            "idempotency_key": "sp-fix-e12ffee79d64ae45eec4d67c",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e12ffee79d64ae45eec4d67c",
                "X-SaferPage-Body-SHA256": "44fc437f6d7be8eee7c9668a145e5a97b5e68f55dc0f89399048c8acc1578202",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_privacy_policy_dpo_contact_missing",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
                "evidence": "",
                "action": "Betreiber sollten einen Datenschutzkontakt nennen oder nachvollziehbar erklären, wie Datenschutzanfragen gestellt werden können.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/datenschutzerklaerung-verbessern",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_privacy_policy_dpo_contact_missing\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt\",\"evidence\":\"\",\"action\":\"Betreiber sollten einen Datenschutzkontakt nennen oder nachvollziehbar erklären, wie Datenschutzanfragen gestellt werden können.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/datenschutzerklaerung-verbessern\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "44fc437f6d7be8eee7c9668a145e5a97b5e68f55dc0f89399048c8acc1578202",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt*\nBetreiber sollten einen Datenschutzkontakt nennen oder nachvollziehbar erklären, wie Datenschutzanfragen gestellt werden können."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Betreiber sollten einen Datenschutzkontakt nennen oder nachvollziehbar erklären, wie Datenschutzanfragen gestellt werden können."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
                    "description": "Betreiber sollten einen Datenschutzkontakt nennen oder nachvollziehbar erklären, wie Datenschutzanfragen gestellt werden können.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/datenschutzerklaerung-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-7a85cdf34c332b1831516155",
            "ticket_id": "remediation_missing_permissions_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Permissions-Policy fehlt",
            "description": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-7a85cdf34c332b1831516155",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-7a85cdf34c332b1831516155",
                "X-SaferPage-Body-SHA256": "73f66f91752a9d92d38505058c62175da3694260a23b6e3c00b8abf611492783",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_permissions_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Permissions-Policy fehlt",
                "evidence": "",
                "action": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_permissions_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Permissions-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `permissions-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "73f66f91752a9d92d38505058c62175da3694260a23b6e3c00b8abf611492783",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Permissions-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Permissions-Policy fehlt*\nHeader `permissions-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Permissions-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Permissions-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `permissions-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Permissions-Policy fehlt",
                    "description": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-7a4363eb21da21b3a8c3d43b",
            "ticket_id": "remediation_missing_referrer_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Referrer-Policy fehlt",
            "description": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-7a4363eb21da21b3a8c3d43b",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-7a4363eb21da21b3a8c3d43b",
                "X-SaferPage-Body-SHA256": "2d79d1ba1a5038734e5ae5f7c709ead9562f67fe8a3d940aff96d11d00e4da92",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_missing_referrer_policy",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Referrer-Policy fehlt",
                "evidence": "",
                "action": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/security-header-setzen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_missing_referrer_policy\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Referrer-Policy fehlt\",\"evidence\":\"\",\"action\":\"Header `referrer-policy` setzen und nach Deployment erneut prüfen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/security-header-setzen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "2d79d1ba1a5038734e5ae5f7c709ead9562f67fe8a3d940aff96d11d00e4da92",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Referrer-Policy fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Referrer-Policy fehlt*\nHeader `referrer-policy` setzen und nach Deployment erneut prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Referrer-Policy fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Referrer-Policy fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Header `referrer-policy` setzen und nach Deployment erneut prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Referrer-Policy fehlt",
                    "description": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-a490d498aa5a2c36d45be898",
            "ticket_id": "remediation_browser_keystroke_listener_signals",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Viele Tastatur-/Eingabe-Listener im Browser erkannt",
            "description": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
            "idempotency_key": "sp-fix-a490d498aa5a2c36d45be898",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-a490d498aa5a2c36d45be898",
                "X-SaferPage-Body-SHA256": "d4a606b6525f97f341c14b304773178674ae40967fc383af069237ee227f345c",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_browser_keystroke_listener_signals",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "evidence": "",
                "action": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_browser_keystroke_listener_signals\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Viele Tastatur-/Eingabe-Listener im Browser erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "d4a606b6525f97f341c14b304773178674ae40967fc383af069237ee227f345c",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Viele Tastatur-/Eingabe-Listener im Browser erkannt*\nPrüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Viele Tastatur-/Eingabe-Listener im Browser erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Viele Tastatur-/Eingabe-Listener im Browser erkannt",
                    "description": "Prüfen, ob Eingaben für Analytics, Session-Replay oder Debugging erfasst werden; sensible Felder konsequent ausschließen.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/session-replay-und-fingerprinting-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-8903e25f1d227f175ac357b8",
            "ticket_id": "remediation_too_many_render_blocking_assets",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[zgap.de] Viele potenziell blockierende Assets",
            "description": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.",
            "idempotency_key": "sp-fix-8903e25f1d227f175ac357b8",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-8903e25f1d227f175ac357b8",
                "X-SaferPage-Body-SHA256": "e3f8d6c7529b13b366f6c7446356991504c2f5b3a09fc3fce42470d8c7695d3f",
                "X-SaferPage-Signature": "sha256=<HMAC über canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "zgap.de",
                "scan_id": "8502a891-a88f-4b12-ae39-cd493d6dffce",
                "ticket_id": "remediation_too_many_render_blocking_assets",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Viele potenziell blockierende Assets",
                "evidence": "",
                "action": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.",
                "acceptance_criteria": [
                    "Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.",
                    "Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.",
                    "Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe."
                ],
                "links": {
                    "guide": "https://saferpage.de/guides/performance-und-mobile-usability-verbessern",
                    "evidence": "https://saferpage.de/befunde/zgap.de",
                    "rescan": "https://saferpage.de/scanbetrieb/zgap.de",
                    "report": "https://saferpage.de/zgap.de",
                    "fix_guides": "https://saferpage.de/fix-guides/zgap.de"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"zgap.de\",\"scan_id\":\"8502a891-a88f-4b12-ae39-cd493d6dffce\",\"ticket_id\":\"remediation_too_many_render_blocking_assets\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Viele potenziell blockierende Assets\",\"evidence\":\"\",\"action\":\"Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.\",\"acceptance_criteria\":[\"Der konkrete SaferPage-Befund ist im Re-Scan behoben oder nachvollziehbar herabgestuft.\",\"Datenschutzhinweis, Consent-Oberfläche und beobachtete Technik widersprechen sich nicht mehr.\",\"Exportpaket enthält Scan-ID, Zeitstempel, betroffene Tabellen und Betreiber-Freigabe.\"],\"links\":{\"guide\":\"https://saferpage.de/guides/performance-und-mobile-usability-verbessern\",\"evidence\":\"https://saferpage.de/befunde/zgap.de\",\"rescan\":\"https://saferpage.de/scanbetrieb/zgap.de\",\"report\":\"https://saferpage.de/zgap.de\",\"fix_guides\":\"https://saferpage.de/fix-guides/zgap.de\"}}",
            "canonical_body_sha256": "e3f8d6c7529b13b366f6c7446356991504c2f5b3a09fc3fce42470d8c7695d3f",
            "slack_payload": {
                "text": "[NIEDRIG] zgap.de: Viele potenziell blockierende Assets",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Viele potenziell blockierende Assets*\nSkripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Verantwortlich: Website-Betrieb/Datenschutz · Zielzeit: quartalsweise · https://saferpage.de/befunde/zgap.de"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] zgap.de: Viele potenziell blockierende Assets",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Viele potenziell blockierende Assets"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "zgap.de"
                                        },
                                        {
                                            "title": "Verantwortlich",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "Zielzeit",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[zgap.de] Viele potenziell blockierende Assets",
                    "description": "Skripte/CSS bündeln, defer/async nutzen und kritisches CSS priorisieren.\n\nNachweis: https://saferpage.de/befunde/zgap.de\nHintergrundseite: https://saferpage.de/guides/performance-und-mobile-usability-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/zgap.de",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        }
    ],
    "links": {
        "fix_guides": "https://saferpage.de/fix-guides/zgap.de",
        "tickets_json": "https://saferpage.de/fix-guides/zgap.de/tickets-json",
        "json": "https://saferpage.de/fix-guides/zgap.de/tickets-delivery-json",
        "csv": "https://saferpage.de/fix-guides/zgap.de/tickets-delivery-csv"
    },
    "disclaimer": "Payload-Vorlagen ohne aktive Zustellung und ohne echte Secrets. Betreiber müssen Zielsysteme, Authentifizierung, HMAC-Secret, Projekte, Empfänger und Freigaben selbst konfigurieren."
}
