Parent epic: #236
Problem
Async clients must poll repeatedly; no push mechanism on terminal state.
Scope
- Add optional callback registration on
start_* (or server-level webhook config).
- Emit signed completion payload on
done/failed/cancelled.
- Add retry/backoff and dead-letter behavior.
Acceptance Criteria
- Clients can receive completion events without polling.
- Delivery retries and terminal failure behavior are deterministic.
- Security model documented (signature, replay window, auth token handling).
Non-goals
- Event bus integrations beyond webhook in first iteration.
Parent epic: #236
Problem
Async clients must poll repeatedly; no push mechanism on terminal state.
Scope
start_*(or server-level webhook config).done/failed/cancelled.Acceptance Criteria
Non-goals