{
  "_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-0192",
    "kind": "work",
    "objective": "DECISION 5 (owner, final): flows v4 §10.3 — YES vocabulary, NO new engine",
    "detail": "Object predicates (IF customer.ltv > 500, IF stripe.subscription.status is active): approved as reads. If the noun has no verified read op, refuse the condition (same as an unreadable WHEN). Do not guess.\nAFTER <KEY> in flow text = existing event:on key=… in _lib/event_log.js. Alias only. Do not build a second trigger table.\nON CHANGE / UNTIL / ONCE per <noun> / NOT / EVERY: approved as text that compiles onto automations + WHEN + the idempotency that already exists.\nTyped args + per-flow account bindings: same two defects as the grammar (bindArgs flatten; runThroughDispatch drops account/device). Fix those first. Flows inherit the fix. Do not special-case flows.\n\nSource: owner message, 2026-09-11, verbatim below. Status: FINAL. Do not re-litigate. Implementation is NOT authorized by this row. If later told to build, the order is: (1) freeze v1 parse meanings, (2) typed JSON + account/device actually reaching dispatch, (3) credential from connection_id not only auth string, (4) v2 §17 projections, (5) v4 §4 additions, (6) flow predicates. Every step through scripts/ship.mjs; coding-law lease before the first code edit. Do not: rewrite the Tap & Go drop; put CLI in the drop; add OPENAI_* rows that skip the AI Gateway; invent misc git status; treat Code Mode as already shipped; run Appendix D again.",
    "state": "completed",
    "priority": 1,
    "revision": 5,
    "depends_on": [],
    "permitted_capabilities": [],
    "acceptance_tests": [
      {
        "type": "evidence_present",
        "id": "decision_written_to_spec",
        "field": "commit"
      },
      {
        "type": "evidence_present",
        "id": "decision_path",
        "field": "spec_path"
      }
    ],
    "required_evidence": [
      "commit",
      "spec_path"
    ],
    "parent_task": null,
    "supersedes": null,
    "failure": null,
    "failure_count": 0,
    "last_result": {
      "accepted": true,
      "tests_declared": 2,
      "tests_passed": 2,
      "tests_inherited_from": null,
      "results": [
        {
          "id": "decision_written_to_spec",
          "ok": true,
          "detail": "checked against required_evidence",
          "evidence_field": "commit"
        },
        {
          "id": "decision_path",
          "ok": true,
          "detail": "checked against required_evidence",
          "evidence_field": "spec_path"
        }
      ],
      "missing_evidence": []
    },
    "completed_at": "2026-09-11T14:19:56-07:00",
    "created_at": "2026-09-11T13:55:52-07:00",
    "updated_at": "2026-09-11T14:19:56-07:00",
    "audit": "/api/work/task/WT-0192/audit",
    "submit_to": "/api/work/task/WT-0192/submit"
  }
}