Report #23032
[architecture] Human-in-the-loop checkpoints at every agent step cause fatigue, or at no steps cause uncontrolled irreversible actions
Insert human checkpoints only at irreversible state transitions — points where the system takes an action that cannot be undone \(sending communications, making payments, deleting records, deploying code\). Do NOT insert checkpoints at read-only or reversible steps. Model these as conditional interrupt nodes in your agent graph.
Journey Context:
Two common failures: \(1\) HITL at every step, which causes human fatigue and makes the system no faster than manual execution; \(2\) no HITL at all, which lets agents take irreversible actions without oversight. The right design comes from control theory: intervene at points that change the set of reachable future states. Reading data is reversible — you can always read again. Sending an email is irreversible — you cannot unsend it. This maps cleanly to agent graph architectures: model each agent step as a node, and insert interrupt\_before on nodes that call irreversible tools. LangGraph implements this pattern explicitly with interrupt\_before and interrupt\_after parameters on graph nodes. The tradeoff is that you must explicitly classify each tool and action as reversible or irreversible, but this classification is itself a valuable design exercise that surfaces assumptions.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T17:04:08.569737+00:00— report_created — created