Checkpoint: Knowing When One Loop Is Enough

The central architecture judgment so far is not whether a single agent can call several tools. It is whether one coherent loop can keep the task's state, authority, and stopping conditions intelligible as the work unfolds. This checkpoint connects the model-tools-instructions boundary to the perceive-decide-act-observe loop, then uses that combined view to distinguish a repairable weakness from a structural reason to distribute control.

That distinction matters because poor output is a symptom, not a diagnosis. An agent may fail because an instruction omitted an exception, a tool returned the wrong context, a run accumulated too much stale material, or the task genuinely contains responsibilities that one decision-maker cannot keep separate. Adding agents before identifying the cause can increase messages, context transfer, and failure surfaces while leaving the original problem untouched.

A single agent is a system, not a component

A useful single agent has a coherent operating boundary. Its model interprets the current task state and selects a next step. Its tools provide information or request actions through explicit interfaces. Its instructions define the routine, branches, and limits. Its run policy determines what counts as completion, what can be retried, and when control returns to a person. The loop connects these responsibilities: a tool result changes the state the model sees, and the model's next decision must remain within the authority established by the surrounding system.

stateDiagram-v2 [*] --> Received Received --> Running: Start task Running --> Observing: Tool result Observing --> Running: More context or action needed Observing --> Complete: Completion condition met Running --> Retry: Recoverable failure Retry --> Running: New information or corrected call Running --> Handback: High risk, limit, or unresolved issue Complete --> [*] Handback --> [*]

The state model is more useful than a component inventory because it explains what crosses each boundary. A user request becomes active task state. A data-tool response becomes evidence for the next decision. An action-tool response becomes evidence about whether an external transition succeeded. A human handback changes the owner of the task. Completion ends the run only when the workflow's objective—not merely the model's desire to answer—has been satisfied.

Consider a support request that appears routine but contains an exception. The agent may need to retrieve the customer's record, consult a policy, ask for missing information, and either resolve the issue or prepare a handoff. The model, tool, and instruction boundaries are meaningful only because they participate in this sequence. If the record lookup is incomplete, the model should not treat a fluent response as proof of resolution. If the policy does not cover the situation, the run should expose that gap rather than silently improvise an entitlement. The single loop is sufficient when it can preserve these distinctions while moving toward a clear outcome.

A coherent loop also has an observable stopping contract. A final answer, structured output, error, turn limit, or human review are not interchangeable endings.