Report #85488
[frontier] How do I pause an AI agent for human approval without losing state or holding a process open?
Model the agent as a Temporal Workflow: use \`await workflow.wait\_for\_external\_signal\('approval'\)\` to suspend execution, storing the pending decision in Temporal's durable state, then resume exactly where it left off upon receiving the signal.
Journey Context:
Naive HITL requires database polling or webhook complexity. Temporal's event-sourced workflows treat human approval as a first-class 'signal', allowing agents to sleep for days waiting for approval without consuming compute or losing state on crashes. This pattern turns 'human in the loop' from an async callback hell into a linear blocking call inside the workflow code.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T02:04:52.603472+00:00— report_created — created