{
    "schema": "https://saferpage.de/schemas/operator-remediation-ticket-delivery.v1",
    "generated_at": "2026-06-13T16:30:38+00:00",
    "domain": "ackerknecht.ch",
    "available": true,
    "scan": {
        "id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
        "checked_at": "2026-06-13 14:13:13.063312+02"
    },
    "summary": "Delivery-Paket fuer Remediation-Tickets mit Webhook-, Slack-, Teams- und Jira-Payloads, HMAC-Receiver-Vertrag und Test-Fixture.",
    "dry_run": true,
    "does_not_send": true,
    "metrics": {
        "delivery_job_count": 31,
        "high_priority_count": 17,
        "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 ueber den exakten Request-Body stimmt mit X-SaferPage-Signature ueberein.",
            "SHA-256 des exakten Request-Body stimmt mit X-SaferPage-Body-SHA256 ueberein.",
            "X-SaferPage-Event ist operator.remediation.ticket_ready.",
            "X-SaferPage-Schema ist operator-remediation-ticket-delivery.v1.",
            "X-SaferPage-Idempotency-Key wurde fuer Domain, Scan und Ticket noch nicht verarbeitet.",
            "Empfaenger, Projekt, Queue und Owner sind fuer 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 fuer Receiver-Implementierung.\",\"action\":\"Testpayload unveraendert verifizieren, Idempotency-Key pruefen und danach verwerfen.\",\"acceptance_criteria\":[\"Signatur stimmt mit exakt diesem Body ueberein.\",\"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": "cd19d86313ea4d6ea0f5dcd65b2b40794f017121c655dedcdfa6df362b480dcf",
        "expected_signature": "sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555",
        "expected_signature_header": "X-SaferPage-Signature: sha256=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555",
        "idempotency_key": "sp-fix-test-fixture",
        "positive_test": "Empfaenger akzeptiert den unveraenderten canonical_body mit expected_signature und verwirft ihn danach als Testevent.",
        "negative_tests": [
            "Ein geaendertes 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=834a9f0cd7a3922648b8aa1ab00aef7ae7aa31d08b63e804ee4a586c0e9dd555\" --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-51c5c4aacb544d6f0d61f200",
            "ticket_id": "remediation_button_name_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Buttons ohne erkennbaren Namen",
            "description": "Buttons mit sichtbarem Text oder aria-label beschriften.",
            "idempotency_key": "sp-fix-51c5c4aacb544d6f0d61f200",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-51c5c4aacb544d6f0d61f200",
                "X-SaferPage-Body-SHA256": "4e65e244898a9c505c47483e604a30518223a09eb9d4734c145f85e18801959d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "4e65e244898a9c505c47483e604a30518223a09eb9d4734c145f85e18801959d",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Buttons ohne erkennbaren Namen",
                    "description": "Buttons mit sichtbarem Text oder aria-label beschriften.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-62acfe571fa486bb171cfa11",
            "ticket_id": "remediation_missing_csp",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Content-Security-Policy fehlt",
            "description": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-62acfe571fa486bb171cfa11",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-62acfe571fa486bb171cfa11",
                "X-SaferPage-Body-SHA256": "8070d8b1c1c876db9b9ad6c780cf422b26caf450f96d6979cff87d5f5a647f16",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "8070d8b1c1c876db9b9ad6c780cf422b26caf450f96d6979cff87d5f5a647f16",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Content-Security-Policy fehlt",
                    "description": "Header `content-security-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-95c4b1609d860cd324c39793",
            "ticket_id": "remediation_data_entry_privacy_context_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Dateneingabe ohne klaren Datenschutzkontext",
            "description": "Vor Eingabe prüfen, welche Daten erhoben werden, wofür sie genutzt werden und wo die Datenschutzhinweise stehen.",
            "idempotency_key": "sp-fix-95c4b1609d860cd324c39793",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-95c4b1609d860cd324c39793",
                "X-SaferPage-Body-SHA256": "2514c29ec38d9a0ebd111c682210874025f425866848ff17b52b8d71424c43ca",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_data_entry_privacy_context_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Dateneingabe ohne klaren Datenschutzkontext",
                "evidence": "",
                "action": "Vor Eingabe prüfen, welche Daten erhoben werden, wofür sie genutzt werden und wo die Datenschutzhinweise stehen.",
                "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/formulare-datenschutzkonform-absichern",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_data_entry_privacy_context_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Dateneingabe ohne klaren Datenschutzkontext\",\"evidence\":\"\",\"action\":\"Vor Eingabe prüfen, welche Daten erhoben werden, wofür sie genutzt werden und wo die Datenschutzhinweise stehen.\",\"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/formulare-datenschutzkonform-absichern\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "2514c29ec38d9a0ebd111c682210874025f425866848ff17b52b8d71424c43ca",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Dateneingabe ohne klaren Datenschutzkontext",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Dateneingabe ohne klaren Datenschutzkontext*\nVor Eingabe prüfen, welche Daten erhoben werden, wofür sie genutzt werden und wo die Datenschutzhinweise stehen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Dateneingabe ohne klaren Datenschutzkontext",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Dateneingabe ohne klaren Datenschutzkontext"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Vor Eingabe prüfen, welche Daten erhoben werden, wofür sie genutzt werden und wo die Datenschutzhinweise stehen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Dateneingabe ohne klaren Datenschutzkontext",
                    "description": "Vor Eingabe prüfen, welche Daten erhoben werden, wofür sie genutzt werden und wo die Datenschutzhinweise stehen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/formulare-datenschutzkonform-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-3060be34b2482c9361e9f38d",
            "ticket_id": "remediation_module_privacy_consent",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Datenschutz, Cookies & Consent",
            "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.",
            "idempotency_key": "sp-fix-3060be34b2482c9361e9f38d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-3060be34b2482c9361e9f38d",
                "X-SaferPage-Body-SHA256": "bd405862c8c70a39be9b90d3f9d0a0ac531c3bf5c58790b9080ef440045149b4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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: 48.",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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: 48.\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "bd405862c8c70a39be9b90d3f9d0a0ac531c3bf5c58790b9080ef440045149b4",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Datenschutz, Cookies & Consent",
                    "description": "Tracking, Werbung und nicht notwendige Cookies vor Zustimmung blockieren und verständlich erklären.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-33cd97b674ed195aabb83f09",
            "ticket_id": "remediation_sampled_form_privacy_context_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Formular-Unterseite ohne klaren Datenschutzkontext",
            "description": "Formularseiten sollten Datenschutzhinweise und Betreiberkontext direkt erreichbar machen.",
            "idempotency_key": "sp-fix-33cd97b674ed195aabb83f09",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-33cd97b674ed195aabb83f09",
                "X-SaferPage-Body-SHA256": "83809a1baa4841b0697714c34d292821f4c577578f67d574da92a21e4413a3b4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_sampled_form_privacy_context_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Formular-Unterseite ohne klaren Datenschutzkontext",
                "evidence": "",
                "action": "Formularseiten sollten Datenschutzhinweise und Betreiberkontext direkt erreichbar 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/formulare-datenschutzkonform-absichern",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_sampled_form_privacy_context_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Formular-Unterseite ohne klaren Datenschutzkontext\",\"evidence\":\"\",\"action\":\"Formularseiten sollten Datenschutzhinweise und Betreiberkontext direkt erreichbar 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/formulare-datenschutzkonform-absichern\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "83809a1baa4841b0697714c34d292821f4c577578f67d574da92a21e4413a3b4",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Formular-Unterseite ohne klaren Datenschutzkontext",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Formular-Unterseite ohne klaren Datenschutzkontext*\nFormularseiten sollten Datenschutzhinweise und Betreiberkontext direkt erreichbar machen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Formular-Unterseite ohne klaren Datenschutzkontext",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Formular-Unterseite ohne klaren Datenschutzkontext"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Formularseiten sollten Datenschutzhinweise und Betreiberkontext direkt erreichbar machen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Formular-Unterseite ohne klaren Datenschutzkontext",
                    "description": "Formularseiten sollten Datenschutzhinweise und Betreiberkontext direkt erreichbar machen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/formulare-datenschutzkonform-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-b22bd648eb6e44e2e808984f",
            "ticket_id": "remediation_form_privacy_context_fix",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Webentwicklung/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern",
            "description": "Formulartexte, Pflichtfelder, Datenschutzlink, Referrer-Policy und Tracking auf Formularseiten prüfen.",
            "idempotency_key": "sp-fix-b22bd648eb6e44e2e808984f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-b22bd648eb6e44e2e808984f",
                "X-SaferPage-Body-SHA256": "4e54f5611325898cf2cf2d3ab70cdf58ec534db8fdd89c6fcff290a5233bac3b",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_form_privacy_context_fix",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Webentwicklung/Datenschutz",
                "sla": "7 Tage",
                "title": "Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern",
                "evidence": "Crawl-Evidence: 6 Formular(e) auf 4 geprüften Seite(n).",
                "action": "Formulartexte, Pflichtfelder, Datenschutzlink, Referrer-Policy und Tracking auf Formularseiten 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/formulare-datenschutzkonform-absichern",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_form_privacy_context_fix\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Webentwicklung/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern\",\"evidence\":\"Crawl-Evidence: 6 Formular(e) auf 4 geprüften Seite(n).\",\"action\":\"Formulartexte, Pflichtfelder, Datenschutzlink, Referrer-Policy und Tracking auf Formularseiten 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/formulare-datenschutzkonform-absichern\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "4e54f5611325898cf2cf2d3ab70cdf58ec534db8fdd89c6fcff290a5233bac3b",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern*\nFormulartexte, Pflichtfelder, Datenschutzlink, Referrer-Policy und Tracking auf Formularseiten prüfen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Webentwicklung/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Formulartexte, Pflichtfelder, Datenschutzlink, Referrer-Policy und Tracking auf Formularseiten prüfen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Webentwicklung/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Formulare mit Zweck, Pflichtfeldern und Datenschutzkontext absichern",
                    "description": "Formulartexte, Pflichtfelder, Datenschutzlink, Referrer-Policy und Tracking auf Formularseiten prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/formulare-datenschutzkonform-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-12ee61f6d987fc506fb0c59d",
            "ticket_id": "remediation_missing_hsts",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] HSTS fehlt",
            "description": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-12ee61f6d987fc506fb0c59d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-12ee61f6d987fc506fb0c59d",
                "X-SaferPage-Body-SHA256": "1277535254ee45cf7a751dc79b1571cceef9976bf1ad2fcac230c2aa09fe03d8",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "1277535254ee45cf7a751dc79b1571cceef9976bf1ad2fcac230c2aa09fe03d8",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] HSTS fehlt",
                    "description": "Header `strict-transport-security` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-79a6988da3fee5035eef6973",
            "ticket_id": "remediation_module_operator_transparency",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Impressum, Kontakt & Datenschutzerklärung",
            "description": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen.",
            "idempotency_key": "sp-fix-79a6988da3fee5035eef6973",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-79a6988da3fee5035eef6973",
                "X-SaferPage-Body-SHA256": "65b90bb13e98d995b8cafe43c85747de952284d7dc06543dc4f5f3d9fd86ae72",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_module_operator_transparency",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Impressum, Kontakt & Datenschutzerklärung",
                "evidence": "Impressum: nein, Datenschutz: nein, Kontakt: nein.",
                "action": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar 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/impressum-und-kontakt-sichtbar-machen",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_module_operator_transparency\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Impressum, Kontakt & Datenschutzerklärung\",\"evidence\":\"Impressum: nein, Datenschutz: nein, Kontakt: nein.\",\"action\":\"Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar 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/impressum-und-kontakt-sichtbar-machen\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "65b90bb13e98d995b8cafe43c85747de952284d7dc06543dc4f5f3d9fd86ae72",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Impressum, Kontakt & Datenschutzerklärung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Impressum, Kontakt & Datenschutzerklärung*\nBetreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Impressum, Kontakt & Datenschutzerklärung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Impressum, Kontakt & Datenschutzerklärung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Impressum, Kontakt & Datenschutzerklärung",
                    "description": "Betreiberangaben, Kontaktweg und Datenschutzhinweise von jeder Seite aus auffindbar machen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d464e575bccb38d52526fb76",
            "ticket_id": "remediation_imprint_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Kein Impressum-Link erkannt",
            "description": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein.",
            "idempotency_key": "sp-fix-d464e575bccb38d52526fb76",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d464e575bccb38d52526fb76",
                "X-SaferPage-Body-SHA256": "190ac2a6cc26bb9a20f7da4e3c536cba22ca74bbaefc9d87dac5f2e839a04e2f",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_imprint_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Kein Impressum-Link erkannt",
                "evidence": "",
                "action": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt 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/impressum-und-kontakt-sichtbar-machen",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_imprint_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Kein Impressum-Link erkannt\",\"evidence\":\"\",\"action\":\"Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt 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/impressum-und-kontakt-sichtbar-machen\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "190ac2a6cc26bb9a20f7da4e3c536cba22ca74bbaefc9d87dac5f2e839a04e2f",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Kein Impressum-Link erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Kein Impressum-Link erkannt*\nFür deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Kein Impressum-Link erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Kein Impressum-Link erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Kein Impressum-Link erkannt",
                    "description": "Für deutsche Seiten sollte ein gut sichtbares Impressum verlinkt sein.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-4119c24e27f9f269c1c8d8e0",
            "ticket_id": "remediation_operator_contact_missing",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Keine klare Kontaktmöglichkeit erkannt",
            "description": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.",
            "idempotency_key": "sp-fix-4119c24e27f9f269c1c8d8e0",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-4119c24e27f9f269c1c8d8e0",
                "X-SaferPage-Body-SHA256": "74be2f29e1e227e6e8cec8c738825fae2818629ec2a2cc8fbd03290fbd8bbd62",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_operator_contact_missing",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Keine klare Kontaktmöglichkeit erkannt",
                "evidence": "",
                "action": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.",
                "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/impressum-und-kontakt-sichtbar-machen",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_operator_contact_missing\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Keine klare Kontaktmöglichkeit erkannt\",\"evidence\":\"\",\"action\":\"E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.\",\"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/impressum-und-kontakt-sichtbar-machen\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "74be2f29e1e227e6e8cec8c738825fae2818629ec2a2cc8fbd03290fbd8bbd62",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Keine klare Kontaktmöglichkeit erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Keine klare Kontaktmöglichkeit erkannt*\nE-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Keine klare Kontaktmöglichkeit erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Keine klare Kontaktmöglichkeit erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Keine klare Kontaktmöglichkeit erkannt",
                    "description": "E-Mail, Telefonnummer, Kontaktseite oder Impressum sichtbar verlinken.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/impressum-und-kontakt-sichtbar-machen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-76277e11caa25dd9e300d280",
            "ticket_id": "remediation_security_header_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "IT/Security",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Security-Header, Referrer-Policy und Browser-Schutz setzen",
            "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
            "idempotency_key": "sp-fix-76277e11caa25dd9e300d280",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-76277e11caa25dd9e300d280",
                "X-SaferPage-Body-SHA256": "58bc049b9d6597367ca1ed42d32f991aa63fe00f003b68fdab4dbfd6e36b06c7",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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 Betreiber-Guide beheben 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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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 Betreiber-Guide beheben 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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "58bc049b9d6597367ca1ed42d32f991aa63fe00f003b68fdab4dbfd6e36b06c7",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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 Betreiber-Guide beheben und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: IT/Security · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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 Betreiber-Guide beheben und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "IT/Security"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Security-Header, Referrer-Policy und Browser-Schutz setzen",
                    "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-57d5ee5f43bce5b730d76917",
            "ticket_id": "remediation_external_link_spam",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Sehr viele externe Links erkannt",
            "description": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.",
            "idempotency_key": "sp-fix-57d5ee5f43bce5b730d76917",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-57d5ee5f43bce5b730d76917",
                "X-SaferPage-Body-SHA256": "e0efaafc63ccbc61f95f51977d57618a4bbaba38a8b4f3f330fb67ffb8906568",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_external_link_spam",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Sehr viele externe Links erkannt",
                "evidence": "",
                "action": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_external_link_spam\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Sehr viele externe Links erkannt\",\"evidence\":\"\",\"action\":\"Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "e0efaafc63ccbc61f95f51977d57618a4bbaba38a8b4f3f330fb67ffb8906568",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Sehr viele externe Links erkannt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Sehr viele externe Links erkannt*\nPrüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Sehr viele externe Links erkannt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Sehr viele externe Links erkannt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Sehr viele externe Links erkannt",
                    "description": "Prüfen, ob die Seite als Linkfarm, Affiliate-Brücke oder Spam-Seite dient.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/seo-spam-und-cloaking-bereinigen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d4b57267918dff3c8d004058",
            "ticket_id": "remediation_module_security_tls",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Sicherheit, TLS & Header",
            "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.",
            "idempotency_key": "sp-fix-d4b57267918dff3c8d004058",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d4b57267918dff3c8d004058",
                "X-SaferPage-Body-SHA256": "9ed0aab94de720954efdb28a6593166fed334de057143537cabb970490988211",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_module_security_tls",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "7 Tage",
                "title": "Sicherheit, TLS & Header",
                "evidence": "2 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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_module_security_tls\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"7 Tage\",\"title\":\"Sicherheit, TLS & Header\",\"evidence\":\"2 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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "9ed0aab94de720954efdb28a6593166fed334de057143537cabb970490988211",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Sicherheit, TLS & Header",
                    "description": "HTTPS, Zertifikat, HSTS, CSP, zentrale Security-Header und externe Skriptquellen sauber konfigurieren.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-d04c9a0528f6d863ad0f5936",
            "ticket_id": "remediation_consent_preconsent_gap",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Marketing/IT",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
            "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
            "idempotency_key": "sp-fix-d04c9a0528f6d863ad0f5936",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-d04c9a0528f6d863ad0f5936",
                "X-SaferPage-Body-SHA256": "f23ea7302017c73bf2ab3036f82cb25aa8c9817cfd392441a0c6ca5e75f420d4",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_consent_preconsent_gap",
                "priority": "hoch",
                "severity": "critical",
                "owner": "Marketing/IT",
                "sla": "7 Tage",
                "title": "Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                "evidence": "Consent, Tracking oder Drittanbieter wirken im Erstaufruf deutlich nachbesserungsbeduerftig.",
                "action": "Befund mit Betreiber-Guide beheben 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/tracking-und-consent-reparieren",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_consent_preconsent_gap\",\"priority\":\"hoch\",\"severity\":\"critical\",\"owner\":\"Marketing/IT\",\"sla\":\"7 Tage\",\"title\":\"Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren\",\"evidence\":\"Consent, Tracking oder Drittanbieter wirken im Erstaufruf deutlich nachbesserungsbeduerftig.\",\"action\":\"Befund mit Betreiber-Guide beheben 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/tracking-und-consent-reparieren\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "f23ea7302017c73bf2ab3036f82cb25aa8c9817cfd392441a0c6ca5e75f420d4",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren*\nBefund mit Betreiber-Guide beheben und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Befund mit Betreiber-Guide beheben und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Tracking, Cookies oder Drittanbieter vor Einwilligung reparieren",
                    "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/tracking-und-consent-reparieren\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-5e1c8f1b0901db27256f7f10",
            "ticket_id": "remediation_important_pages_not_discovered",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] 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-5e1c8f1b0901db27256f7f10",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-5e1c8f1b0901db27256f7f10",
                "X-SaferPage-Body-SHA256": "676b7273418c8d7811ddd654a5862b0f89d7a988f72a142262a0a8bc01335ee9",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "676b7273418c8d7811ddd654a5862b0f89d7a988f72a142262a0a8bc01335ee9",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] 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/ackerknecht.ch\nGuide: https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-96ef09ea88888f279bf5ddad",
            "ticket_id": "remediation_missing_x_content_type_options",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] X-Content-Type-Options fehlt",
            "description": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-96ef09ea88888f279bf5ddad",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-96ef09ea88888f279bf5ddad",
                "X-SaferPage-Body-SHA256": "6891896231ed8c8d7068f8f8008fda713189da8f110bd96e8958675fbc57cf7d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "6891896231ed8c8d7068f8f8008fda713189da8f110bd96e8958675fbc57cf7d",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] X-Content-Type-Options fehlt",
                    "description": "Header `x-content-type-options` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-96214a15f765d109719a1a97",
            "ticket_id": "remediation_missing_x_frame_options",
            "channel": "jira_slack_webhook",
            "priority": "hoch",
            "severity": "critical",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "7 Tage",
            "summary": "[ackerknecht.ch] X-Frame-Options fehlt",
            "description": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-96214a15f765d109719a1a97",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-96214a15f765d109719a1a97",
                "X-SaferPage-Body-SHA256": "6234c4624fbc2fc2c09f6b0eafd97fc7306e0a222e620b5879f55bd78d1b1b9d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "6234c4624fbc2fc2c09f6b0eafd97fc7306e0a222e620b5879f55bd78d1b1b9d",
            "slack_payload": {
                "text": "[HOCH] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 7 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[HOCH] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "7 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] X-Frame-Options fehlt",
                    "description": "Header `x-frame-options` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "hoch"
                    ],
                    "priority": {
                        "name": "High"
                    }
                }
            }
        },
        {
            "id": "sp-fix-12fd8d236fef5cb90655013f",
            "ticket_id": "remediation_module_forms_payments",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[ackerknecht.ch] Formulare, Login & Zahlung",
            "description": "Bei Formularen Zweck, Pflichtfelder, Datenschutzkontext, HTTPS und Zahlungsanbieter klar machen.",
            "idempotency_key": "sp-fix-12fd8d236fef5cb90655013f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-12fd8d236fef5cb90655013f",
                "X-SaferPage-Body-SHA256": "a99612c216d3b53f187d5e81b1e6d7d8f716b84d9b38342d247529ad47c725e3",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_module_forms_payments",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Formulare, Login & Zahlung",
                "evidence": "Crawl fand 6 Formular(e) auf 4 geprüften Seite(n), u. a. /persoenlich/kontakt, /wp-login.php, /, /2022/06/30/meine-ziele-in-der-politik. Zweck, Pflichtfelder und Datenschutzkontext je Formular prüfen.",
                "action": "Bei Formularen Zweck, Pflichtfelder, Datenschutzkontext, HTTPS und Zahlungsanbieter klar 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/formulare-datenschutzkonform-absichern",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_module_forms_payments\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Formulare, Login & Zahlung\",\"evidence\":\"Crawl fand 6 Formular(e) auf 4 geprüften Seite(n), u. a. /persoenlich/kontakt, /wp-login.php, /, /2022/06/30/meine-ziele-in-der-politik. Zweck, Pflichtfelder und Datenschutzkontext je Formular prüfen.\",\"action\":\"Bei Formularen Zweck, Pflichtfelder, Datenschutzkontext, HTTPS und Zahlungsanbieter klar 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/formulare-datenschutzkonform-absichern\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "a99612c216d3b53f187d5e81b1e6d7d8f716b84d9b38342d247529ad47c725e3",
            "slack_payload": {
                "text": "[MITTEL] ackerknecht.ch: Formulare, Login & Zahlung",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Formulare, Login & Zahlung*\nBei Formularen Zweck, Pflichtfelder, Datenschutzkontext, HTTPS und Zahlungsanbieter klar machen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 30 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] ackerknecht.ch: Formulare, Login & Zahlung",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Formulare, Login & Zahlung"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Bei Formularen Zweck, Pflichtfelder, Datenschutzkontext, HTTPS und Zahlungsanbieter klar machen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Formulare, Login & Zahlung",
                    "description": "Bei Formularen Zweck, Pflichtfelder, Datenschutzkontext, HTTPS und Zahlungsanbieter klar machen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/formulare-datenschutzkonform-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e448e415dc08de041a541c50",
            "ticket_id": "mapping_cookie_phpsessid",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Marketing/IT/Datenschutz",
            "sla": "30 Tage",
            "summary": "[ackerknecht.ch] PHPSESSID",
            "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.",
            "idempotency_key": "sp-fix-e448e415dc08de041a541c50",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e448e415dc08de041a541c50",
                "X-SaferPage-Body-SHA256": "909d64cb567343ef611d01e9cc1853cef52297758078507f144868a73f2dc36e",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "mapping_cookie_phpsessid",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Marketing/IT/Datenschutz",
                "sla": "30 Tage",
                "title": "PHPSESSID",
                "evidence": "ackerknecht.ch",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"mapping_cookie_phpsessid\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Marketing/IT/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"PHPSESSID\",\"evidence\":\"ackerknecht.ch\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "909d64cb567343ef611d01e9cc1853cef52297758078507f144868a73f2dc36e",
            "slack_payload": {
                "text": "[MITTEL] ackerknecht.ch: PHPSESSID",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*PHPSESSID*\nZweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Marketing/IT/Datenschutz · SLA: 30 Tage · https://saferpage.de/cookies/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] ackerknecht.ch: PHPSESSID",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "PHPSESSID"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Marketing/IT/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] PHPSESSID",
                    "description": "Zweck, Laufzeit, Anbieter und Consent-Erfordernis in Cookie-Erklärung und CMP pflegen.\n\nNachweis: https://saferpage.de/cookies/ackerknecht.ch\nGuide: https://saferpage.de/guides/cookie-laufzeiten-und-zwecke-pruefen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-aa4ec0c7f881166f5a9caf65",
            "ticket_id": "remediation_module_performance_mobile",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[ackerknecht.ch] Performance & mobile Nutzbarkeit",
            "description": "Antwortzeit, Komprimierung, Viewport und blockierende Ressourcen optimieren.",
            "idempotency_key": "sp-fix-aa4ec0c7f881166f5a9caf65",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-aa4ec0c7f881166f5a9caf65",
                "X-SaferPage-Body-SHA256": "94e0ff03a89a73aa2007097d534a83638ce24980c0c359a8db5c945a3ac3a760",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_module_performance_mobile",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Performance & mobile Nutzbarkeit",
                "evidence": "Performance-Score 94, Antwortzeit 248 ms.",
                "action": "Antwortzeit, Komprimierung, Viewport und blockierende Ressourcen optimieren.",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_module_performance_mobile\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Performance & mobile Nutzbarkeit\",\"evidence\":\"Performance-Score 94, Antwortzeit 248 ms.\",\"action\":\"Antwortzeit, Komprimierung, Viewport und blockierende Ressourcen optimieren.\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "94e0ff03a89a73aa2007097d534a83638ce24980c0c359a8db5c945a3ac3a760",
            "slack_payload": {
                "text": "[MITTEL] ackerknecht.ch: Performance & mobile Nutzbarkeit",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Performance & mobile Nutzbarkeit*\nAntwortzeit, Komprimierung, Viewport und blockierende Ressourcen optimieren."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: 30 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] ackerknecht.ch: Performance & mobile Nutzbarkeit",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Performance & mobile Nutzbarkeit"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Antwortzeit, Komprimierung, Viewport und blockierende Ressourcen optimieren."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Performance & mobile Nutzbarkeit",
                    "description": "Antwortzeit, Komprimierung, Viewport und blockierende Ressourcen optimieren.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/performance-und-mobile-usability-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-48d7f4dc6070d71a88bb85c9",
            "ticket_id": "remediation_module_site_coverage",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "30 Tage",
            "summary": "[ackerknecht.ch] Seitenabdeckung & Crawl",
            "description": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.",
            "idempotency_key": "sp-fix-48d7f4dc6070d71a88bb85c9",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-48d7f4dc6070d71a88bb85c9",
                "X-SaferPage-Body-SHA256": "8fefbaef8e23be3ef9f33b2f876f6f458c5129dff1eeb797161a2fa0b7c3b249",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_module_site_coverage",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "30 Tage",
                "title": "Seitenabdeckung & Crawl",
                "evidence": "16 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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_module_site_coverage\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"30 Tage\",\"title\":\"Seitenabdeckung & Crawl\",\"evidence\":\"16 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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "8fefbaef8e23be3ef9f33b2f876f6f458c5129dff1eeb797161a2fa0b7c3b249",
            "slack_payload": {
                "text": "[MITTEL] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: 30 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Seitenabdeckung & Crawl",
                    "description": "Datenschutz, Impressum, Kontakt, Cookie-Hinweise und kritische Formularseiten klar verlinken und regelmäßig mitprüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-e2515a5c6175155cdfc1b3fb",
            "ticket_id": "remediation_coverage_gap",
            "channel": "jira_webhook",
            "priority": "mittel",
            "severity": "warning",
            "owner": "Webbetrieb/SEO",
            "sla": "30 Tage",
            "summary": "[ackerknecht.ch] Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
            "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.",
            "idempotency_key": "sp-fix-e2515a5c6175155cdfc1b3fb",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-e2515a5c6175155cdfc1b3fb",
                "X-SaferPage-Body-SHA256": "81763e8adfbf7acd569adac9b29e1117002fb1d3c2941b2c232961573e85a22c",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_coverage_gap",
                "priority": "mittel",
                "severity": "warning",
                "owner": "Webbetrieb/SEO",
                "sla": "30 Tage",
                "title": "Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                "evidence": "16 interne Linkziele erkannt (13 aus Sitemap), 4 priorisierte Unterseite(n) zusätzlich abgerufen.",
                "action": "Befund mit Betreiber-Guide beheben 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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_coverage_gap\",\"priority\":\"mittel\",\"severity\":\"warning\",\"owner\":\"Webbetrieb/SEO\",\"sla\":\"30 Tage\",\"title\":\"Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken\",\"evidence\":\"16 interne Linkziele erkannt (13 aus Sitemap), 4 priorisierte Unterseite(n) zusätzlich abgerufen.\",\"action\":\"Befund mit Betreiber-Guide beheben 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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "81763e8adfbf7acd569adac9b29e1117002fb1d3c2941b2c232961573e85a22c",
            "slack_payload": {
                "text": "[MITTEL] ackerknecht.ch: Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken*\nBefund mit Betreiber-Guide beheben und danach erneut scannen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Webbetrieb/SEO · SLA: 30 Tage · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[MITTEL] ackerknecht.ch: 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 Betreiber-Guide beheben und danach erneut scannen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Webbetrieb/SEO"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "30 Tage"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Wichtige Unterseiten, Datenschutz und Formulare crawlbar verlinken",
                    "description": "Befund mit Betreiber-Guide beheben und danach erneut scannen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/datenschutz-webseiten-pruefkatalog\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "mittel"
                    ],
                    "priority": {
                        "name": "Medium"
                    }
                }
            }
        },
        {
            "id": "sp-fix-2984aa9620e8f3dc2ec67c64",
            "ticket_id": "remediation_image_alt_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Bilder ohne Alternativtext",
            "description": "Inhaltliche Bilder mit alt-Text versehen; dekorative Bilder mit leerem alt oder aria-hidden kennzeichnen.",
            "idempotency_key": "sp-fix-2984aa9620e8f3dc2ec67c64",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-2984aa9620e8f3dc2ec67c64",
                "X-SaferPage-Body-SHA256": "5cfc1d0a15f0b0997232db3f0671d6864f96e8ffd7592dfba69d0ee8f6b4608d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "5cfc1d0a15f0b0997232db3f0671d6864f96e8ffd7592dfba69d0ee8f6b4608d",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] 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/ackerknecht.ch\nGuide: https://saferpage.de/guides/barrierefreiheit-cookie-banner-formulare\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-123a8c14a0cb4450d60840fb",
            "ticket_id": "remediation_cookie_missing_samesite",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Cookie ohne SameSite-Attribut",
            "description": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.",
            "idempotency_key": "sp-fix-123a8c14a0cb4450d60840fb",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-123a8c14a0cb4450d60840fb",
                "X-SaferPage-Body-SHA256": "e999454a95b01c79cca17e1850194de728f622d69cd2f6d187d8ec4a4345b898",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "e999454a95b01c79cca17e1850194de728f622d69cd2f6d187d8ec4a4345b898",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Cookie ohne SameSite-Attribut",
                    "description": "SameSite=Lax oder SameSite=Strict setzen, falls fachlich möglich.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/cookies-sicher-konfigurieren\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-10248a5c6f865e9aa21721a1",
            "ticket_id": "remediation_missing_cross_origin_embedder_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Cross-Origin-Embedder-Policy fehlt",
            "description": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-10248a5c6f865e9aa21721a1",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-10248a5c6f865e9aa21721a1",
                "X-SaferPage-Body-SHA256": "9038f3a0a9d468c590bda60c2947bcfacfadbfcdc0ba310ee45bf0836a75b667",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "9038f3a0a9d468c590bda60c2947bcfacfadbfcdc0ba310ee45bf0836a75b667",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Cross-Origin-Embedder-Policy fehlt",
                    "description": "Header `cross-origin-embedder-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-c4a191c8b76efaf3cda2cfda",
            "ticket_id": "remediation_missing_cross_origin_opener_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Cross-Origin-Opener-Policy fehlt",
            "description": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-c4a191c8b76efaf3cda2cfda",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-c4a191c8b76efaf3cda2cfda",
                "X-SaferPage-Body-SHA256": "2b8bd20bb82f0b0435d893d5882973f14aebe33176fc56ae6427c5798737a13d",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "2b8bd20bb82f0b0435d893d5882973f14aebe33176fc56ae6427c5798737a13d",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Cross-Origin-Opener-Policy fehlt",
                    "description": "Header `cross-origin-opener-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-77a48608ad0110c1ba7f8e19",
            "ticket_id": "remediation_missing_cross_origin_resource_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Cross-Origin-Resource-Policy fehlt",
            "description": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-77a48608ad0110c1ba7f8e19",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-77a48608ad0110c1ba7f8e19",
                "X-SaferPage-Body-SHA256": "77a1f924d0dd01b49961561768f0aa7df9bc2bbb0adf0e0fe434d101d0529d78",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "77a1f924d0dd01b49961561768f0aa7df9bc2bbb0adf0e0fe434d101d0529d78",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Cross-Origin-Resource-Policy fehlt",
                    "description": "Header `cross-origin-resource-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-0842259062ecd1f99e7f8a9e",
            "ticket_id": "remediation_missing_meta_description",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Meta-Description fehlt",
            "description": "Eine kurze Beschreibung setzen, die den Zweck der Seite erklärt.",
            "idempotency_key": "sp-fix-0842259062ecd1f99e7f8a9e",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-0842259062ecd1f99e7f8a9e",
                "X-SaferPage-Body-SHA256": "2cce023c027069ec9ae8448df7efff4cf911ca9b91b6e0cf4da75822bc7c0963",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_missing_meta_description",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Meta-Description fehlt",
                "evidence": "",
                "action": "Eine kurze Beschreibung setzen, die den Zweck der Seite erklärt.",
                "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/externe-skripte-und-sri-absichern",
                    "evidence": "https://saferpage.de/befunde/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_missing_meta_description\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Meta-Description fehlt\",\"evidence\":\"\",\"action\":\"Eine kurze Beschreibung setzen, die den Zweck der Seite erklärt.\",\"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/externe-skripte-und-sri-absichern\",\"evidence\":\"https://saferpage.de/befunde/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "2cce023c027069ec9ae8448df7efff4cf911ca9b91b6e0cf4da75822bc7c0963",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: Meta-Description fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Meta-Description fehlt*\nEine kurze Beschreibung setzen, die den Zweck der Seite erklärt."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: Meta-Description fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Meta-Description fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Eine kurze Beschreibung setzen, die den Zweck der Seite erklärt."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Meta-Description fehlt",
                    "description": "Eine kurze Beschreibung setzen, die den Zweck der Seite erklärt.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/externe-skripte-und-sri-absichern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-49343dd71b6d796a16ccf91f",
            "ticket_id": "remediation_missing_permissions_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Permissions-Policy fehlt",
            "description": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-49343dd71b6d796a16ccf91f",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-49343dd71b6d796a16ccf91f",
                "X-SaferPage-Body-SHA256": "a42cddf91e37e33fe79c8cb41fec65b1d0f74e499cddea51bab63987e9061156",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "a42cddf91e37e33fe79c8cb41fec65b1d0f74e499cddea51bab63987e9061156",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Permissions-Policy fehlt",
                    "description": "Header `permissions-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-090fbba718b62ac8acd1bb0d",
            "ticket_id": "remediation_missing_referrer_policy",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Referrer-Policy fehlt",
            "description": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.",
            "idempotency_key": "sp-fix-090fbba718b62ac8acd1bb0d",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-090fbba718b62ac8acd1bb0d",
                "X-SaferPage-Body-SHA256": "5f10f8b035cd10d3ca33b255b54bff68a63196a6052c1b2df7b0e6b12eda3380",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "5f10f8b035cd10d3ca33b255b54bff68a63196a6052c1b2df7b0e6b12eda3380",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: 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": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: 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": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Referrer-Policy fehlt",
                    "description": "Header `referrer-policy` setzen und nach Deployment erneut prüfen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/security-header-setzen\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        },
        {
            "id": "sp-fix-aed9b8ed9b3cf18f57408d84",
            "ticket_id": "remediation_viewport_missing",
            "channel": "jira_webhook",
            "priority": "niedrig",
            "severity": "info",
            "owner": "Website-Betrieb/Datenschutz",
            "sla": "quartalsweise",
            "summary": "[ackerknecht.ch] Viewport-Meta-Tag fehlt",
            "description": "Für mobile Darstellung `meta name=viewport` setzen.",
            "idempotency_key": "sp-fix-aed9b8ed9b3cf18f57408d84",
            "headers": {
                "X-SaferPage-Event": "operator.remediation.ticket_ready",
                "X-SaferPage-Schema": "operator-remediation-ticket-delivery.v1",
                "X-SaferPage-Idempotency-Key": "sp-fix-aed9b8ed9b3cf18f57408d84",
                "X-SaferPage-Body-SHA256": "eeb7c3ac863a15875b28c69b85fdde8db1e29947da8ba133368c6b3ba7927e8e",
                "X-SaferPage-Signature": "sha256=<HMAC ueber canonical_webhook_body>"
            },
            "webhook_payload": {
                "event": "operator.remediation.ticket_ready",
                "domain": "ackerknecht.ch",
                "scan_id": "b32a847c-672f-469f-9d68-93c53e20a8a8",
                "ticket_id": "remediation_viewport_missing",
                "priority": "niedrig",
                "severity": "info",
                "owner": "Website-Betrieb/Datenschutz",
                "sla": "quartalsweise",
                "title": "Viewport-Meta-Tag fehlt",
                "evidence": "",
                "action": "Für mobile Darstellung `meta name=viewport` setzen.",
                "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/ackerknecht.ch",
                    "rescan": "https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "report": "https://saferpage.de/ackerknecht.ch",
                    "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch"
                }
            },
            "canonical_webhook_body": "{\"event\":\"operator.remediation.ticket_ready\",\"domain\":\"ackerknecht.ch\",\"scan_id\":\"b32a847c-672f-469f-9d68-93c53e20a8a8\",\"ticket_id\":\"remediation_viewport_missing\",\"priority\":\"niedrig\",\"severity\":\"info\",\"owner\":\"Website-Betrieb/Datenschutz\",\"sla\":\"quartalsweise\",\"title\":\"Viewport-Meta-Tag fehlt\",\"evidence\":\"\",\"action\":\"Für mobile Darstellung `meta name=viewport` setzen.\",\"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/ackerknecht.ch\",\"rescan\":\"https://saferpage.de/scanbetrieb/ackerknecht.ch\",\"report\":\"https://saferpage.de/ackerknecht.ch\",\"fix_guides\":\"https://saferpage.de/fix-guides/ackerknecht.ch\"}}",
            "canonical_body_sha256": "eeb7c3ac863a15875b28c69b85fdde8db1e29947da8ba133368c6b3ba7927e8e",
            "slack_payload": {
                "text": "[NIEDRIG] ackerknecht.ch: Viewport-Meta-Tag fehlt",
                "blocks": [
                    {
                        "type": "section",
                        "text": {
                            "type": "mrkdwn",
                            "text": "*Viewport-Meta-Tag fehlt*\nFür mobile Darstellung `meta name=viewport` setzen."
                        }
                    },
                    {
                        "type": "context",
                        "elements": [
                            {
                                "type": "mrkdwn",
                                "text": "Owner: Website-Betrieb/Datenschutz · SLA: quartalsweise · https://saferpage.de/befunde/ackerknecht.ch"
                            }
                        ]
                    }
                ]
            },
            "teams_payload": {
                "type": "message",
                "summary": "[NIEDRIG] ackerknecht.ch: Viewport-Meta-Tag fehlt",
                "attachments": [
                    {
                        "contentType": "application/vnd.microsoft.card.adaptive",
                        "content": {
                            "type": "AdaptiveCard",
                            "version": "1.4",
                            "body": [
                                {
                                    "type": "TextBlock",
                                    "weight": "Bolder",
                                    "text": "Viewport-Meta-Tag fehlt"
                                },
                                {
                                    "type": "TextBlock",
                                    "wrap": true,
                                    "text": "Für mobile Darstellung `meta name=viewport` setzen."
                                },
                                {
                                    "type": "FactSet",
                                    "facts": [
                                        {
                                            "title": "Domain",
                                            "value": "ackerknecht.ch"
                                        },
                                        {
                                            "title": "Owner",
                                            "value": "Website-Betrieb/Datenschutz"
                                        },
                                        {
                                            "title": "SLA",
                                            "value": "quartalsweise"
                                        }
                                    ]
                                }
                            ]
                        }
                    }
                ]
            },
            "jira_payload": {
                "fields": {
                    "summary": "[ackerknecht.ch] Viewport-Meta-Tag fehlt",
                    "description": "Für mobile Darstellung `meta name=viewport` setzen.\n\nNachweis: https://saferpage.de/befunde/ackerknecht.ch\nGuide: https://saferpage.de/guides/performance-und-mobile-usability-verbessern\nRe-Scan: https://saferpage.de/scanbetrieb/ackerknecht.ch",
                    "labels": [
                        "saferpage",
                        "privacyops",
                        "remediation",
                        "niedrig"
                    ],
                    "priority": {
                        "name": "Low"
                    }
                }
            }
        }
    ],
    "links": {
        "fix_guides": "https://saferpage.de/fix-guides/ackerknecht.ch",
        "tickets_json": "https://saferpage.de/fix-guides/ackerknecht.ch/tickets-json",
        "json": "https://saferpage.de/fix-guides/ackerknecht.ch/tickets-delivery-json",
        "csv": "https://saferpage.de/fix-guides/ackerknecht.ch/tickets-delivery-csv"
    },
    "disclaimer": "Payload-Vorlagen ohne aktive Zustellung und ohne echte Secrets. Betreiber muessen Zielsysteme, Authentifizierung, HMAC-Secret, Projekte, Empfaenger und Freigaben selbst konfigurieren."
}
