...123 where the quote occurs
- If nothing fits: "codes": []
- Output MUST be exactly ONE JSON object. No extra text, no markdown.

JSON SCHEMA:
{{
  "block_id": "{block_id}",
  "codes": [
    {{"code":"...", "quote":"...", "line":"L0123"}}
  ]
}}

CODEBOOK v2.0:
{codebook_text}

TEXT BLOCK (line-numbered):
{numbered}
""".strip()

    resp = call_ollama_generate(args.ollama_url, args.model, prompt, args...