AI Agent Orchestration Platform  ·  View 20 of 32  ·  4 · Runtime

Human-in-the-Loop

How a run suspends for a human decision, and what happens when nobody answers.

Editable source SVG draw.io All views
Runtime Worker Policy Engine Approval Service Durable Orchestrator Teams via Graph Approver Audit Ledger 1. may I call this tool 2. approval required 3. raise request with evidence 4. record raised 5. suspend, await event 6. adaptive card to queue 7. notify approver role 8. approve or reject 9. verify role, not requester 10. record decision and actor 11. raise external event 12. resume from checkpoint 13. SLA expired, auto-reject 14. terminal state Human-in-the-Loop — Approving a Sensitive Action The approver cannot be the requester. An unanswered request auto-rejects at the configured SLA and the run ends cleanly. v 1.0 · owner Data & AI Global Practice · date 2026-08

Decisions

  • Suspension uses the orchestrator's external-event mechanism, so a waiting run consumes no compute and can wait for days
  • The approval requirement comes from policy and from the tool binding, never from the agent's own judgement
  • The approver cannot be the requester, and the check is enforced by the approval service rather than trusted to process

Service levels

  • Configurable SLA per approval type; the default is 4 business hours then auto-reject
  • Auto-reject is a clean terminal state with a recorded reason, not a timeout exception
  • Notification goes to a role-based queue, not an individual, so leave and handover do not stall a workflow

Risks

  • Approval fatigue makes approvals rubber stamps; the evidence pack shown with each request is deliberately compact and specific
  • Teams is a single notification channel; email and an in-console queue are required fallbacks before general availability