Opens research 039 (status: active). A short note to design from later, not a design. Do not merge without review.
The idea (the operator, 2026-10-08): a tool or seat verb declares in its manifest that calling it needs a person's approval.
Enforced in the mesh, not the MCP client: the tool runner or the controller refuses the call unless it carries a warrant from ADR 0259's flow (pull request 211). An agent may ask; it cannot act alone.
The ask carries what, why, the exact arguments and who asks; Approve or Decline at the approve assurance level; the call goes ahead once, with those arguments, before the warrant expires.
Candidates seen on 2026-10-08:zfs_snapshot, push, the bus's upgrade, mesh-delivery.release, plans go and stop, a secret's rotate, the places and accesses settings, the media library's share and mounts.
Bears on: ADR 0259, ADR 0266 (pull request 225), the record upgrade policy, the held delivery's release, issue 336 (pull request 228), the hand-act log.
Open questions: per tool or per argument; who may approve; replay and expiry; how a waiting call is shown; the MCP client while it waits; where it is answered before a verified channel exists (the desk answers only acknowledge); audit.
Checks run locally: records.py, index.py, cycle.py and words.py all pass (words.py without the catalogue's list).
Opens research 039 (status: active). A short note to design from later, not a design. Do not merge without review.
- **The idea (the operator, 2026-10-08):** a tool or seat verb declares in its manifest that calling it needs a person's approval.
- **Enforced in the mesh, not the MCP client:** the tool runner or the controller refuses the call unless it carries a warrant from ADR 0259's flow (pull request 211). An agent may ask; it cannot act alone.
- **The ask** carries what, why, the exact arguments and who asks; Approve or Decline at the `approve` assurance level; the call goes ahead once, with those arguments, before the warrant expires.
- **Candidates seen on 2026-10-08:** `zfs_snapshot`, `push`, the bus's upgrade, `mesh-delivery.release`, `plans` go and stop, a secret's `rotate`, the places and accesses settings, the media library's share and mounts.
- **Bears on:** ADR 0259, ADR 0266 (pull request 225), the `record` upgrade policy, the held delivery's release, issue 336 (pull request 228), the hand-act log.
- **Open questions:** per tool or per argument; who may approve; replay and expiry; how a waiting call is shown; the MCP client while it waits; where it is answered before a verified channel exists (the desk answers only acknowledge); audit.
Checks run locally: records.py, index.py, cycle.py and words.py all pass (words.py without the catalogue's list).
Deliverynovox/hq@ccb54450eabb — delivered since 2026-10-08T22:30:15Z
Delivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
2026-10-08 22:02 (new) → proposed (announced): novox/hq#233's head announced
2026-10-08 22:02 proposed → checked (checked): the verdict names this commit
2026-10-08 22:02 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
2026-10-08 22:30 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
2026-10-08 22:30 published → delivered (done): nothing for a walk to move
The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.
<!-- mesh-delivery:view -->
**Delivery** `novox/hq@ccb54450eabb` — **delivered** since 2026-10-08T22:30:15Z
**Delivery plan** — builds nothing: the change touches no module of the mesh's graph
**Transitions**
- 2026-10-08 22:02 (new) → proposed (announced): novox/hq#233's head announced
- 2026-10-08 22:02 proposed → checked (checked): the verdict names this commit
- 2026-10-08 22:02 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
- 2026-10-08 22:30 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
- 2026-10-08 22:30 published → delivered (done): nothing for a walk to move
The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Opens research 039 (status: active). A short note to design from later, not a design. Do not merge without review.
approveassurance level; the call goes ahead once, with those arguments, before the warrant expires.zfs_snapshot,push, the bus's upgrade,mesh-delivery.release,plansgo and stop, a secret'srotate, the places and accesses settings, the media library's share and mounts.recordupgrade policy, the held delivery's release, issue 336 (pull request 228), the hand-act log.Checks run locally: records.py, index.py, cycle.py and words.py all pass (words.py without the catalogue's list).
Delivery
novox/hq@ccb54450eabb— delivered since 2026-10-08T22:30:15ZDelivery plan — builds nothing: the change touches no module of the mesh's graph
Transitions
The commit's note under
refs/notes/mesh-plankeeps every transition:git log --notes=mesh-plan.