{
    "schema": "https://saferpage.de/schemas/security-feed-activation.v1",
    "generated_at": "2026-06-09T23:00:41+00:00",
    "domain": "abo.wuv.de",
    "available": true,
    "dry_run": true,
    "activation_ready": false,
    "summary": "abo.wuv.de: Security-Feed-Aktivierung mit 5 Gate(s), 4 blockiert, Delivery ohne Secret.",
    "metrics": {
        "gate_count": 5,
        "blocked_gate_count": 4,
        "connector_count": 2,
        "configured_connector_count": 0,
        "delivery_payload_template_count": 5
    },
    "activation_gates": [
        {
            "id": "feed_credentials",
            "label": "Produktive Feed-Credentials gesetzt",
            "status": "blocked",
            "evidence": "0/2 Connector(en) konfiguriert."
        },
        {
            "id": "schedule_ready",
            "label": "Geplanter Lauf bereit",
            "status": "blocked",
            "evidence": "abo.wuv.de: Security-Feed-Schedule mit 2 Connector-Job(s), 0 bereit, 2 Secret-Luecke(n)."
        },
        {
            "id": "storage_approved",
            "label": "Storage und Retention freigegeben",
            "status": "blocked",
            "evidence": "abo.wuv.de: Security-Feed-Storage-Plan mit 3 Speicherbereich(en), 5 Quellenpolicy(s), Freigabe offen."
        },
        {
            "id": "delivery_signature_secret",
            "label": "Signatursecret fuer Delivery gesetzt",
            "status": "blocked",
            "evidence": "Signatursecret fehlt; Payloads bleiben Dry-Run."
        },
        {
            "id": "operator_review",
            "label": "Operator-Review vor Publikation",
            "status": "passed",
            "evidence": "Import-Preview, Storage-Plan und Alert-Delivery erzwingen Review-/Publish-Gates."
        }
    ],
    "signed_delivery_preview": {
        "method": "POST",
        "event": "security.feed.activation",
        "content_type": "application/json",
        "headers": {
            "X-SaferPage-Event": "security.feed.activation",
            "X-SaferPage-Idempotency-Key": "sp-feed-32e9721548192cc1cc0f8c2c",
            "X-SaferPage-Signature": "sha256=<HMAC ueber Request-Body>",
            "X-SaferPage-Dry-Run": "true"
        },
        "payload": {
            "event": "security.feed.activation",
            "domain": "abo.wuv.de",
            "idempotency_key": "sp-feed-32e9721548192cc1cc0f8c2c",
            "activation_ready": false,
            "blocked_gate_count": 4,
            "storage_ready": false,
            "schedule_ready": false,
            "connector_count": 2,
            "configured_connector_count": 0,
            "evidence_url": "https://saferpage.de/sicherheit/abo.wuv.de/feed-activation-json",
            "security_profile_url": "https://saferpage.de/sicherheit/abo.wuv.de"
        },
        "signature_secret_ref": "SAFERPAGE_WEBHOOK_SECRET",
        "does_not_send": true
    },
    "retry_policy": {
        "max_attempts": 5,
        "backoff": "exponential: 1m, 5m, 15m, 1h, 6h",
        "dead_letter_after": "5 fehlgeschlagene Zustellversuche",
        "idempotency": "Empfaenger nutzt X-SaferPage-Idempotency-Key als External-ID."
    },
    "blocked_actions": [
        {
            "gate": "feed_credentials",
            "action": "SAFERPAGE_URLHAUS_AUTH_KEY und SAFERPAGE_GOOGLE_SAFE_BROWSING_API_KEY serverseitig setzen."
        },
        {
            "gate": "schedule_ready",
            "action": "Schedule-Preflight pruefen und Timer/Queue aktivieren."
        },
        {
            "gate": "storage_approved",
            "action": "Storage-Freigabe, Retention und Loeschjob vom Betreiber bestaetigen lassen."
        },
        {
            "gate": "delivery_signature_secret",
            "action": "Webhook-Signatursecret im Server-Environment setzen."
        }
    ],
    "links": {
        "json": "https://saferpage.de/sicherheit/abo.wuv.de/feed-activation-json",
        "csv": "https://saferpage.de/sicherheit/abo.wuv.de/feed-activation-csv",
        "markdown": "https://saferpage.de/sicherheit/abo.wuv.de/feed-activation-md",
        "live_connector": "https://saferpage.de/sicherheit/abo.wuv.de/feed-live-json",
        "schedule": "https://saferpage.de/sicherheit/abo.wuv.de/feed-schedule-json",
        "storage": "https://saferpage.de/sicherheit/abo.wuv.de/feed-storage-json",
        "import_preview": "https://saferpage.de/sicherheit/abo.wuv.de/feed-signale-json",
        "alert_delivery": "https://saferpage.de/sicherheit/abo.wuv.de/alerts-delivery-json",
        "integration_setup": "https://saferpage.de/integrationen/setup-json"
    },
    "disclaimer": "Dieses Aktivierungspaket sendet keine Payloads, fragt keine externen Feeds ab und speichert keine Treffer. Es zeigt nur, welche Gates produktive Aktivierung blockieren."
}
