主题
Invariants
以下不变量适用于所有符合 agent-service-spec v1 的实现:
- 每个 run
MUST绑定一个orgId与一个资源目标。 - 每个 run 在任一时间点
MUST至多有一个活动 attempt。 - 同一 run 内
event.sequenceMUST唯一且严格递增。 - 用户可见输出
MUST可由input + event log重建。 - cancel 对终态 run
MUST为幂等 no-op。 - projection
MUST NOT依赖单实例内存作为唯一事实源。 - runtime reconnect
MUST NOT导致重复RUN_STARTED。 - webhook 投递
MUST是可去重的至少一次语义。 - secrets
MUST NOT以明文形式写入公开读模型。 - stream resume
MUST能基于 cursor 恢复后续事件,而不是重新发送已确认事件。 - 每个 span
MUST只属于一个 trace,且根 span 满足rootSpanId == spanId。 - span 一旦终止
MUST NOT再被修改或重复导出为新版本。 - trace metadata
MUST NOT默认泄露 secret、token 或原始凭证。 - 远端传入的 trace context 如被接受,导出的 span
MUST保持同一traceId,除非显式启动新 trace。 - LLM 输入输出内容捕获
MUST受contentCaptureMode控制,并可区分none、redacted、span_events、external_blob等落点。