- Notification channels for routed operational alerts.
- Audit logs and polling for investigating operations and reconciling state.
Notification Channels
Create a channel, then bind it to the vaults that should send alerts through Vault Settings. These are upstream route references, not self-service automation requests; see Authentication.- Upkeep shortfall or activation loss.
- PPS staleness.
- Failed keeper runs.
- Session-key readiness changes.
- Emergency pause / unpause.
- Emergency liquidity exit arm / stop.
- Merkle generation or publish failure.
- Repeated OMS execution failure.
Audit Logs as an Event Stream
The authenticated audit endpoints record manager and configuration actions:
Rows use
id, created_at, action, resource_type, actor, and status, with optional resource_id, details, and correlation_id. Validate the deployed response envelope in your approved integration before reading rows or pagination metadata.
Use export for a point-in-time audit artifact, not as proof of transaction settlement.
Polling Pattern
- Fix
start_timeandend_timefor the scan, with an overlap for delayed arrivals. - Traverse all pages with
limitandoffsetwithin a bounded request budget. On any error, invalid response, or budget exhaustion, retain the previous checkpoint. - Deduplicate by event
idand process the complete window durably before advancing the watermark to the greatest observedcreated_at. An empty window leaves it unchanged; never advance to local wall-clock time after one page. - Periodically replay a wider window and reconcile against exports and current state.
created_at DESC, without a stable timestamp-plus-ID cursor or cross-page snapshot. Concurrent inserts, equal timestamps, and arrivals outside the overlap can still cause omissions; offset polling is not lossless ingestion.
State Polling Map
See Monitoring Vault State for field checks and unknown-state handling.
