tascan_control_fanout
Control a running fan-out (POST /coord/fanouts/:id/control). pause holds every unclaimed seat and stops re-firing; resume releases them; cancel supersedes every unclaimed task and closes once quiet; close_barrier drops unsettled (or named exclude_seats) seats and forces the synth now; retry_synth mints a new synth revision from the stored inputs of the current synth when every failed run is input_ref_mismatch, refused otherwise (not_synthesizing, no_synth_task, no_failed_runs, not_input_ref_mismatch). No amend or answer yet. Every action first records a signed control completion as the system worker of this org, never as another org identity. idempotency_key replays the prior outcome (replayed true) and applies nothing twice; a replayed resume after a later pause stays paused. Refused fanout_closed once the roll-up has closed. Requires agent:dispatch:code.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | pause, resume, cancel, close_barrier or retry_synth. No amend, no answer (phase 1). | |
| reason | No | Optional free-text reason (<= 4000 chars), recorded on the control child's completion. | |
| fanout_id | Yes | Fan-out id (UUID) — the T_F root. | |
| exclude_seats | No | close_barrier only: 1-based seat numbers to drop from the barrier instead of waiting for them to settle. | |
| idempotency_key | No | Optional replay key (<= 200 chars). The same key returns the prior outcome (replayed:true) and applies nothing a second time. |