Workflow sequence
- 01Receive reply event
- 02Cancel pending touches
- 03Classify reply
- 04Select owner
- 05Create CRM task
- 06Escalate missed SLA
Sequence definition
Use this definition as a starting point. Replace handlers with your HTTP workers, validate provider responses, and add credentials through the credential store rather than embedding secrets.
{
"id": "human_handoff_after_reply_v1",
"blocks": [
{ "id": "cancel_pending", "type": "step", "handler": "cancel_outreach" },
{ "id": "classify", "type": "step", "handler": "classify_reply" },
{ "id": "assign", "type": "step", "handler": "assign_owner" },
{ "id": "wait_for_owner", "type": "wait_for_signal", "signal": "owner_responded", "timeout": "PT4H" },
{ "id": "sla_gate", "type": "router", "routes": [{ "condition": "signal.received == false", "blocks": [{ "id": "escalate", "type": "step", "handler": "notify_manager" }] }] }
]
}Production controls to keep
✓ Stable idempotency keys around external writes
✓ Explicit validation before the success state
✓ Bounded retries with provider-aware backoff
✓ Searchable source and destination identifiers
✓ A named owner for exhausted retries
✓ A replay test using duplicate input