事件与 Webhook
当前试点实现持久化运维告警 Webhook,用于报告安全关键依赖的降级与恢复。业务事件订阅将使用独立的后续契约。
告警组件
以下组件重复失败及恢复时会产生告警:钱包或执行适配器核对,以及证据锚定投递。转换类型为 degraded、reminder、recovered 或 test。
载荷
{
"schema_version": 1,
"event_id": "<sha3-256 hex>",
"source": "luvion-control-api",
"component": "evidence_anchor",
"transition": "degraded",
"severity": "critical",
"observed_at_unix_s": 1785040000,
"consecutive_failures": 3,
"message": "evidence_anchor reported 3 consecutive failures"
}
载荷有意排除钱包地址、资产、金额、交易哈希、凭据、密钥和原始内部错误。
投递保证
- 低于配置阈值的失败不会告警。
- 达到阈值时先持久保存待发送事件,再发起网络请求。
- 只有 HTTP
2xx才视为投递成功。 - 投递失败时,进程重启后仍保留同一事件 ID。
- 提醒事件有限速,恢复只产生一个明确事件。
- 禁止重定向;URL 不能包含嵌入凭据、查询参数或片段。
- 除本机测试外必须使用 HTTPS。
接收端应按 event_id 去重,只在持久接收后返回 2xx,并且不要把不同组件的投递顺序当成单一全局序列。
健康端点
配置后,/health 会分别报告 reconciler、evidence_anchor 和 operational_alert。字段包括状态、最近成功或尝试时间、连续失败次数、有限错误、跟踪或待处理数量,以及待发送告警事件 ID。
应根据组件健康决定是否继续接入、授权、执行或发布证据。HTTP 进程本身有响应,不代表所有安全关键依赖都健康。
当前边界
通用 Webhook 和恢复行为已经测试,但还没有合作方拥有的生产接收端和值班流程。approved、authorized、executed 等请求事件可通过请求状态和证据查询;稳定的出站业务事件 Webhook 契约尚未发布。