AGENTS.md
+14 −3
https://raw.githubusercontent.com/harflow-dev/HarflowMCP/HEAD/AGENTS.md
− 1. **Only `_monitor` publishes a terminal status and sets `Task.done`**, after process exit and− workflow resumes never consume.− - Lock order: session lock (or the `continuation-<root>` chain lock), then `<id>.lock` and+ 1. **Only `_monitor` publishes observed terminal settlement and sets `Task.done`**, after process exit and+ The narrow exception is `task_recovery.recover`: after durable matching owner and agent generations+ are confirmed dead under session/launch/task locks, it may CAS an unchanged running record to+ failed with an unobserved outcome and separate `interruption` evidence. It never sets `Task.done`,+ invents exit/drain evidence, emits completion notifications or schedules continuation.+ workflow resumes never consume. The separately negotiated+ `conversation_delivery_v1` ledger has a narrow exception: its settlement owner+ may issue one claimed message as a `queue_drain` response in the same native+ conversation. That route never consumes this legacy follow-up ledger and never+ substitutes a Fresh automatic continuation. Persist its destination before+ issuance; native acceptance alone is not consumption, and unknown delivery+ never authorizes replay.+ - Lock order: session lock (or the `continuation-<root>` chain lock), then the nonblocking `<id>.launch.lock`, `<id>.lock` and+ Migration work: see [docs/migration-plan.md](docs/migration-plan.md).