Workflow Intent Chain Events
Workflow intent emits chain events for declaration, amendment, enforcement, completion, and drift transitions. These events are part of Keel’s tamper-evident, externally anchored, independently witnessed evidence record.
| Event type | When it is recorded | Webhook delivery |
|---|---|---|
workflow_intent.declared | POST /v1/workflows accepts a declaration. | Yes |
workflow_intent.rejected | POST /v1/workflows rejects a declaration, such as when declared projected cost exceeds a cap. | Yes |
workflow_intent.amended | POST /v1/workflows/{workflow_id}/amend records an amendment. | Yes |
workflow_intent.exceeded | A workflow reaches max_calls and a governed request is denied with workflow_intent.max_calls_exceeded. | Yes |
workflow_intent.completed | A workflow is explicitly completed or auto-expired. | Yes |
workflow_intent.drift_detected | Actual calls cross above expected_calls while still below max_calls. | No |
workflow_intent.drift_detected is excluded from webhook delivery. It remains available through compliance exports and dashboard views, but it does not fire a webhook because it is informational and can be noisy for high-volume workflows.
Drift event discipline
Drift is recorded at threshold transitions:
- once when actual calls move from at or below
expected_callsto aboveexpected_calls - again only if an amendment raises
expected_callsand actual calls later cross the new threshold
Keel does not emit workflow_intent.drift_detected for every call above the expected baseline.
Related pages
Last updated on Edit this page on GitHub