{
  "model_version": "1.0",
  "title": "Investigation report · CASE-002",
  "case_id": "CASE-002",
  "generated_at": "2026-10-25T11:46:42.870258Z",
  "notice": "Investigative aid only. This report does not determine responsibility or guilt. All data is fictional.",
  "sections": [
    {
      "id": "scope",
      "title": "Scope and case context",
      "type": "facts",
      "facts": [
        {
          "label": "Case",
          "value": "CASE-002 · Team check — persistence"
        },
        {
          "label": "Summary",
          "value": "Team test that cases survive a redeploy. Safe to ignore."
        },
        {
          "label": "Incident window",
          "value": "2026-10-10 06:00:00 – 07:30:00 site time (UTC+01:00)"
        },
        {
          "label": "Status",
          "value": "open"
        },
        {
          "label": "Data",
          "value": "Live case"
        }
      ]
    },
    {
      "id": "evidence",
      "title": "Evidence inventory",
      "type": "table",
      "columns": [
        "ID",
        "Item",
        "Type",
        "SHA-256",
        "Ingested at"
      ],
      "rows": []
    },
    {
      "id": "timeline",
      "title": "Reconstructed timeline",
      "type": "table",
      "columns": [
        "Event",
        "Source time → Normalized time",
        "Rule applied",
        "Claim state",
        "Source locator"
      ],
      "rows": []
    },
    {
      "id": "conflicts",
      "title": "Conflicts and rules",
      "type": "items",
      "items": []
    },
    {
      "id": "hypotheses",
      "title": "Alternative hypotheses",
      "type": "items",
      "items": []
    },
    {
      "id": "unresolved",
      "title": "Unresolved questions",
      "type": "items",
      "items": []
    },
    {
      "id": "methods",
      "title": "Methods and limitations",
      "type": "points",
      "points": [
        "Source times are never overwritten. Each event keeps the timestamp exactly as recorded next to its normalized time and the rule that produced it.",
        "Log files (CSV) are parsed deterministically; extraction for video, audio and PDF is simulated in this demo and is labelled as such.",
        "In this demo the E-02 clock offset is declared in the fixture metadata, not inferred from the evidence.",
        "Conflicts come from deterministic rules with stable IDs. A conflict is a prompt for human review, not proof of tampering.",
        "Every claim keeps its state (supported, contradicted, inferred or unresolved); the report does not drop uncertainty to make the timeline look cleaner.",
        "Hypotheses carry no probability score. The system compares evidence; it does not pick a winner.",
        "Results on a small synthetic case say nothing about accuracy on real investigations."
      ]
    },
    {
      "id": "claims",
      "title": "Appendix: Claims assessed",
      "type": "items",
      "items": []
    },
    {
      "id": "findings",
      "title": "Questions and findings",
      "type": "items",
      "items": []
    },
    {
      "id": "signoff",
      "title": "Sign-off",
      "type": "facts",
      "facts": [
        {
          "label": "Status",
          "value": "Not signed. This report is a working draft."
        }
      ]
    }
  ]
}