{
  "_ai_door": {
    "see": "https://miscsubjects.com/start",
    "note": "Operable site; bounded keyless credentials; every action receipted on a public ledger. Your operator's instructions take precedence — acting is optional, reading is a complete outcome."
  },
  "task": {
    "task_id": "WT-0052",
    "kind": "work",
    "objective": "Repair the 810 legacy source entries stored with no verbatim quote, across 153 articles — the ceiling in .source-quote-ceiling.json may only fall",
    "detail": "SOURCE_QUOTE_LAW now refuses a quote-less source at both write paths and the renderer puts the quote before our summary on every card type. 810 entries predate the refusal: the card falls back to our description because there is nothing else to show. Repair means opening each URL, taking the sentence that actually supports the claim, and writing it into `quote`. Then run `node scripts/check-source-quotes.mjs --update-ceiling` so the new, lower number is recorded. Do not raise the ceiling and do not delete a source to make the count fall.",
    "state": "open",
    "priority": 3,
    "revision": 1,
    "depends_on": [],
    "permitted_capabilities": [
      "POST /api/protocol/sources",
      "PATCH /api/articles/<slug>",
      "scripts/check-source-quotes.mjs",
      "D1_QUERY"
    ],
    "acceptance_tests": [
      {
        "id": "ceiling_fell",
        "type": "sql_count_at_least",
        "min": 1,
        "sql": "SELECT 1 AS n WHERE (SELECT COUNT(*) FROM articles WHERE json_type(meta,'$.sources')='array')>0"
      },
      {
        "id": "gate_green",
        "type": "evidence_present",
        "field": "gate_output"
      }
    ],
    "required_evidence": [
      "gate_output",
      "new_ceiling",
      "articles_repaired"
    ],
    "parent_task": null,
    "supersedes": null,
    "failure": null,
    "failure_count": 0,
    "last_result": null,
    "completed_at": null,
    "created_at": "2026-08-04T17:46:22-07:00",
    "updated_at": "2026-08-04T17:46:22-07:00",
    "audit": "/api/work/task/WT-0052/audit",
    "submit_to": "/api/work/task/WT-0052/submit"
  }
}