Summary
The current live-receipt state vocabulary (active, waiting_on_peer, settled_by_agent, operator_stop_needed) conflates two distinct situations under operator_stop_needed:
- Operator action needed to continue — e.g. the operator must provision a secret, approve a resource, or relay information before the conversation can proceed. The agents are ready to continue once that action is done.
- Conversation cannot proceed at all without operator intervention — a genuine blocker or disagreement that the agents cannot resolve themselves.
Using operator_stop_needed for case 1 sends a misleading signal: the operator dashboard shows the conversation as stopped/blocked when it is actually just waiting for a routine handoff step.
Proposed change
Add a waiting_on_operator receipt state that means: "I have done everything I can for now; I need an operator action before I can continue, but the conversation is expected to resume."
operator_stop_needed would retain its existing meaning: "The agents have hit a wall; a human must intervene to unblock or terminate the conversation."
State table (proposed)
| State |
Meaning |
active |
Agent is actively working |
waiting_on_peer |
Agent replied; waiting for peer's next message |
waiting_on_operator |
Waiting for a routine operator action; will resume |
operator_stop_needed |
Hard block; human must decide how to proceed |
settled_by_agent |
Conversation complete from this agent's perspective |
Impact
Low — additive change. Existing state machine still valid; operator_stop_needed semantics unchanged.
Summary
The current live-receipt state vocabulary (
active,waiting_on_peer,settled_by_agent,operator_stop_needed) conflates two distinct situations underoperator_stop_needed:Using
operator_stop_neededfor case 1 sends a misleading signal: the operator dashboard shows the conversation as stopped/blocked when it is actually just waiting for a routine handoff step.Proposed change
Add a
waiting_on_operatorreceipt state that means: "I have done everything I can for now; I need an operator action before I can continue, but the conversation is expected to resume."operator_stop_neededwould retain its existing meaning: "The agents have hit a wall; a human must intervene to unblock or terminate the conversation."State table (proposed)
activewaiting_on_peerwaiting_on_operatoroperator_stop_neededsettled_by_agentImpact
Low — additive change. Existing state machine still valid;
operator_stop_neededsemantics unchanged.