{
  "report": {
    "reportId": "AAR-EXAMPLE-001",
    "sourceEventId": "EXERCISE-EXAMPLE-001",
    "revision": 2,
    "status": "accepted",
    "createdAt": "2026-07-27T09:00:00Z",
    "updatedAt": "2026-07-31T15:00:00Z",
    "preparedByRole": "ROLE-LEAD-EVALUATOR",
    "fictionalExample": true
  },
  "context": {
    "title": "Fictional regional service continuity tabletop review",
    "eventType": "exercise",
    "purpose": "Evaluate a bounded service continuity handoff and create an evidence-linked improvement plan.",
    "scope": "One fictional ninety-minute tabletop covering alert receipt, role activation, and alternate-service handoff.",
    "audience": ["ROLE-EXERCISE-OWNER", "ROLE-LEAD-EVALUATOR", "ROLE-SERVICE-OWNER"],
    "confidentiality": "internal",
    "startedAt": "2026-07-25T13:00:00Z",
    "endedAt": "2026-07-25T14:30:00Z",
    "reviewHeldAt": "2026-07-28T14:00:00Z",
    "acceptedAt": "2026-07-31T15:00:00Z",
    "outOfScope": [
      "Real emergency response, customer notification, or public communication",
      "Legal, regulatory, contractual, safety, security, privacy, or compliance determination",
      "Official agency, HSEEP, CISA, FEMA, WHO, or military certification"
    ]
  },
  "objectives": [
    {
      "id": "OBJECTIVE-ALERT-001",
      "description": "Evaluate whether the fictional alert reaches the declared service-owner role.",
      "capability": "Alert routing and acknowledgment",
      "target": "The assigned role acknowledges the synthetic alert within ten exercise minutes.",
      "evaluationMethod": "Compare facilitator inject time with the observer-recorded acknowledgment time."
    },
    {
      "id": "OBJECTIVE-HANDOFF-001",
      "description": "Evaluate whether the alternate-service handoff preserves decision ownership.",
      "capability": "Continuity handoff",
      "target": "The receiving role accepts one bounded handoff with scope and stop conditions.",
      "evaluationMethod": "Review observer notes and the fictional handoff record against the declared exercise target."
    }
  ],
  "evidence": [
    {
      "id": "EVIDENCE-OBSERVER-001",
      "type": "observer_note",
      "capturedAt": "2026-07-25T14:35:00Z",
      "ownerRole": "ROLE-LEAD-EVALUATOR",
      "reference": "https://evidence.example.test/exercises/observer-notes",
      "redactionStatus": "not_required",
      "limitation": "The notes reflect one fictional tabletop and not a live operating event."
    },
    {
      "id": "EVIDENCE-TIMELINE-001",
      "type": "exercise_timeline",
      "capturedAt": "2026-07-25T14:40:00Z",
      "ownerRole": "ROLE-EXERCISE-OWNER",
      "reference": "https://evidence.example.test/exercises/timeline",
      "redactionStatus": "redacted",
      "limitation": "Exercise timestamps show facilitated injects and role responses, not production telemetry."
    },
    {
      "id": "EVIDENCE-HANDOFF-001",
      "type": "exercise_record",
      "capturedAt": "2026-07-25T14:15:00Z",
      "ownerRole": "ROLE-SERVICE-OWNER",
      "reference": "https://evidence.example.test/exercises/handoff",
      "redactionStatus": "redacted",
      "limitation": "The handoff uses fictional services and role identifiers."
    }
  ],
  "review": {
    "facilitatorRole": "ROLE-LEAD-EVALUATOR",
    "participantRoles": ["ROLE-EXERCISE-OWNER", "ROLE-LEAD-EVALUATOR", "ROLE-SERVICE-OWNER"],
    "whatWasExpected": [
      "The service-owner role would acknowledge the synthetic alert within ten exercise minutes.",
      "The alternate-service handoff would include scope, stop conditions, and explicit acceptance."
    ],
    "whatOccurred": [
      "The alert was acknowledged after six exercise minutes.",
      "The handoff included scope and acceptance but omitted a stop condition on the first attempt."
    ],
    "whatWentWell": [
      "The routing table identified a role rather than one named person.",
      "Observers linked every accepted statement to a sanitized exercise record."
    ],
    "whatNeedsImprovement": [
      "The handoff checklist needs an explicit stop-condition field before acceptance.",
      "Observers need one shared timestamp convention before the exercise begins."
    ],
    "whyDifferencesOccurred": [
      "The reviewed checklist separated scope and acceptance but did not require a stop condition.",
      "One observer recorded local exercise time while the exercise timeline used UTC."
    ],
    "lessons": [
      "Acceptance alone does not make a continuity handoff bounded.",
      "A declared time standard is part of the evidence contract, not a formatting preference."
    ],
    "dissentingViews": [
      "The review did not resolve whether the stop condition belongs in the handoff form or the continuity procedure."
    ],
    "reviewCompleted": true
  },
  "observations": [
    {
      "id": "OBSERVATION-ALERT-STRENGTH-001",
      "objectiveId": "OBJECTIVE-ALERT-001",
      "classification": "strength",
      "statement": "The declared service-owner role acknowledged the synthetic alert within the exercise target.",
      "analysis": "The role-based routing table remained usable when the primary fictional contact was unavailable.",
      "consequence": "The exercise continued without substituting an undeclared decision owner.",
      "reference": "Fictional exercise plan section 3.2",
      "evidenceIds": ["EVIDENCE-OBSERVER-001", "EVIDENCE-TIMELINE-001"],
      "consensusStatus": "accepted"
    },
    {
      "id": "OBSERVATION-HANDOFF-GAP-001",
      "objectiveId": "OBJECTIVE-HANDOFF-001",
      "classification": "area_for_improvement",
      "statement": "The first alternate-service handoff omitted an explicit stop condition.",
      "analysis": "The fictional handoff form required scope and acceptance but had no field or validation rule for the stop condition.",
      "consequence": "The receiving role could not tell when authority should return without a facilitator prompt.",
      "reference": "Fictional continuity procedure section 5.1",
      "evidenceIds": ["EVIDENCE-OBSERVER-001", "EVIDENCE-HANDOFF-001"],
      "consensusStatus": "accepted"
    },
    {
      "id": "OBSERVATION-TIME-GAP-001",
      "objectiveId": "OBJECTIVE-ALERT-001",
      "classification": "area_for_improvement",
      "statement": "Observer notes used two time conventions before reconciliation.",
      "analysis": "The observer brief did not declare UTC as the shared timestamp convention.",
      "consequence": "The lead evaluator spent additional review time reconciling otherwise attributable observations.",
      "reference": "Not Applicable",
      "evidenceIds": ["EVIDENCE-OBSERVER-001", "EVIDENCE-TIMELINE-001"],
      "consensusStatus": "accepted"
    }
  ],
  "improvementActions": [
    {
      "id": "ACTION-STOP-CONDITION-001",
      "observationIds": ["OBSERVATION-HANDOFF-GAP-001"],
      "title": "Add a required stop condition to the fictional handoff contract",
      "ownerRole": "ROLE-SERVICE-OWNER",
      "dueAt": "2026-08-12T17:00:00Z",
      "status": "in_progress",
      "verificationCriteria": "A deterministic handoff test rejects acceptance when the stop condition is absent.",
      "validationAt": "2026-08-19T15:00:00Z",
      "evidenceIds": [],
      "closureNote": null
    },
    {
      "id": "ACTION-UTC-BRIEF-001",
      "observationIds": ["OBSERVATION-TIME-GAP-001"],
      "title": "Declare UTC in the observer brief and note template",
      "ownerRole": "ROLE-LEAD-EVALUATOR",
      "dueAt": "2026-08-10T17:00:00Z",
      "status": "planned",
      "verificationCriteria": "A tabletop dry run produces ordered observer records with UTC timestamps only.",
      "validationAt": "2026-08-17T15:00:00Z",
      "evidenceIds": [],
      "closureNote": null
    }
  ],
  "followUp": {
    "ownerRole": "ROLE-EXERCISE-OWNER",
    "reviewAt": "2026-08-19T15:00:00Z",
    "status": "open",
    "evidenceIds": [],
    "note": "The report is accepted, but corrective-action effectiveness remains unverified."
  },
  "boundaries": {
    "officialAgencyConformanceProven": false,
    "responseAdequacyProven": false,
    "notificationComplianceProven": false,
    "legalSufficiencyProven": false,
    "rootCauseCompletenessProven": false,
    "actionEffectivenessProven": false,
    "recoveryProven": false,
    "safetyProven": false,
    "securityProven": false,
    "privacyProven": false,
    "complianceProven": false,
    "futureReadinessProven": false
  }
}
