{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "urn:awoooi:security-mirror-event-v1",
  "title": "AWOOOI Security Supply Chain Mirror Event (v1)",
  "description": "AwoooP mirror-only 消費 Security Supply Chain contracts 時使用的統一事件 envelope。此契約不授權任何 runtime execution。",
  "type": "object",
  "required": [
    "schema_version",
    "event_id",
    "emitted_at",
    "source_contract",
    "source_snapshot_path",
    "mirror_mode",
    "destinations",
    "execution_authorized",
    "action_buttons_allowed",
    "redaction_status",
    "risk",
    "summary",
    "payload_summary",
    "evidence_refs",
    "blocked_actions"
  ],
  "properties": {
    "schema_version": {
      "const": "security_mirror_event_v1"
    },
    "event_id": {
      "type": "string",
      "minLength": 1
    },
    "emitted_at": {
      "type": "string",
      "format": "date-time"
    },
    "source_contract": {
      "type": "string",
      "minLength": 1
    },
    "source_snapshot_path": {
      "type": "string",
      "minLength": 1
    },
    "mirror_mode": {
      "type": "string",
      "enum": ["mirror_only", "read_only_policy", "suggest_only", "approval_only"]
    },
    "destinations": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string",
        "enum": [
          "operator_console",
          "runtime_state",
          "channel_event",
          "audit_evidence",
          "approval_queue"
        ]
      },
      "uniqueItems": true
    },
    "execution_authorized": {
      "type": "boolean",
      "const": false
    },
    "action_buttons_allowed": {
      "type": "boolean",
      "const": false
    },
    "redaction_status": {
      "type": "string",
      "enum": ["redacted", "metadata_only", "no_sensitive_payload_expected"]
    },
    "risk": {
      "type": "string",
      "enum": ["LOW", "MEDIUM", "HIGH", "CRITICAL"]
    },
    "summary": {
      "type": "string",
      "minLength": 1
    },
    "payload_summary": {
      "type": "object",
      "additionalProperties": {
        "type": ["string", "number", "integer", "boolean"]
      }
    },
    "evidence_refs": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "blocked_actions": {
      "type": "array",
      "minItems": 1,
      "items": {
        "type": "string"
      },
      "uniqueItems": true
    },
    "labels": {
      "type": "object",
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "additionalProperties": false
}
