{
  "version": "0.2.1",
  "events": [
    {
      "id": "task_submitted",
      "description": "A task was accepted by the runtime scheduler.",
      "required_payload_keys": ["task_id", "prompt", "strategy", "agent_count"]
    },
    {
      "id": "task_started",
      "description": "Task execution started with a concrete set of selected agents.",
      "required_payload_keys": ["task_id", "selected_agent_ids", "resolved_mode"]
    },
    {
      "id": "agent_selected",
      "description": "One agent was selected for task execution.",
      "required_payload_keys": [
        "task_id",
        "agent_id",
        "agent_name",
        "rank",
        "relevance",
        "position",
        "capacity",
        "composite"
      ]
    },
    {
      "id": "agent_thought",
      "description": "One selected agent completed its thought for a task. Carries a truncated preview of the thought text (280 characters) so event consumers can observe agent output without fetching the full run.",
      "required_payload_keys": [
        "task_id",
        "agent_id",
        "agent_name",
        "perspective",
        "thought_preview"
      ]
    },
    {
      "id": "task_completed",
      "description": "A task completed successfully and produced a result.",
      "required_payload_keys": [
        "task_id",
        "contributing_agent_ids",
        "thought_count",
        "synthesis",
        "used_temporary_join"
      ]
    },
    {
      "id": "task_failed",
      "description": "A task could not be completed.",
      "required_payload_keys": ["task_id", "reason"]
    },
    {
      "id": "ordering_recomputed",
      "description": "The runtime recomputed deterministic lattice ordering.",
      "required_payload_keys": [
        "task_id",
        "ranked_agent_ids",
        "comparable_pairs_count",
        "incomparable_pairs_count"
      ]
    },
    {
      "id": "structural_recommendation_created",
      "description": "The runtime created a high-risk structural recommendation that requires approval.",
      "required_payload_keys": [
        "proposal_id",
        "kind",
        "risk_level",
        "approval_required",
        "candidate_agent_ids",
        "evidence"
      ]
    },
    {
      "id": "structural_recommendation_approved",
      "description": "An operator approved a structural recommendation.",
      "required_payload_keys": ["proposal_id", "final_status"]
    },
    {
      "id": "structural_recommendation_rejected",
      "description": "An operator rejected a structural recommendation.",
      "required_payload_keys": ["proposal_id", "final_status"]
    },
    {
      "id": "structural_recommendation_applied",
      "description": "An approved structural recommendation was applied to the lattice.",
      "required_payload_keys": ["proposal_id", "final_status", "applied_agent_id"]
    },
    {
      "id": "output_quality_warning",
      "description": "Synthesis output triggered a quality guard (for example fabricated citations on an unsourced run).",
      "required_payload_keys": ["task_id", "status", "warnings"]
    }
  ],
  "parity": {
    "required_event_ids": [
      "task_submitted",
      "task_started",
      "agent_selected",
      "agent_thought",
      "task_completed",
      "task_failed",
      "ordering_recomputed",
      "structural_recommendation_created",
      "structural_recommendation_approved",
      "structural_recommendation_rejected",
      "structural_recommendation_applied",
      "output_quality_warning"
    ],
    "expected_count": 12
  }
}
