{
  "chunks": [
    {
      "content": "Risk: Timber may arrive late. Decision: Keep a backup supplier.",
      "source": "project-brief.md",
      "line_start": 7,
      "line_end": 7,
      "relevance_score": 2.0,
      "haystack": "code"
    },
    {
      "content": "Risk: Rain may delay planting. Decision: Reserve a covered area.",
      "source": "project-brief.md",
      "line_start": 10,
      "line_end": 10,
      "relevance_score": 2.0,
      "haystack": "code"
    },
    {
      "content": "Risk: Volunteers may cancel. Decision: Keep a reserve list.",
      "source": "project-brief.md",
      "line_start": 13,
      "line_end": 13,
      "relevance_score": 2.0,
      "haystack": "code"
    }
  ],
  "answer": null,
  "concepts": [
    {
      "id": 0,
      "name": "concern",
      "display_value": null,
      "score": 1.0
    },
    {
      "id": 0,
      "name": "risk",
      "display_value": null,
      "score": 1.0
    }
  ],
  "sufficiency": "SearchOnly",
  "sufficiency_explanation": "Found 3 chunks but diversity 1 < 2; returning search results only (pass --answer or --force-rlm to synthesise).",
  "stats": {
    "search_latency_ms": 14,
    "rlm_latency_ms": null,
    "chunks_returned": 3,
    "kg_hits": 2
  }
}
