可验证输出怎么写进产品?证据包、回放与失败分层(不等于监控用户)
Intdone evidence 合规收口:证据包、只读回放、失败分层;可验证交付面向任务与制品,≠监控用户。
摘要(结论先行)
7 条要点;与下方 ipedia-meta 中 summary 数组逐字一致。
- 可验证输出指:对外或对内声称「已完成/已合规/已测试通过」时,能出示与声明绑定的可复核材料(制品、日志、测试报告、配置快照),而非仅自然语言结论。
- 证据包(evidence pack)是面向单次交付或一次运行的最小材料集合:通常含 run_id、输入/输出制品哈希、验收脚本结果、关键配置版本与时间戳;面向任务与制品,不面向用户人格画像。
- 回放(replay)指在受控条件下用保存的输入与版本复现关键步骤,用于审计与 RCA;只读回放不等于对用户行为的持续监控或背调。
- 失败分层将失败分为可重试、须人工(human_gate)、须拒答(refuse)等类;与 INT-1 预留字段衔接,避免所有错误混为同一文案或同一告警。
- 与 HDGP 输出侧治理的关系:治理管声明、留痕与可审计交付;INT-3 管证据包字段、回放边界与失败分层在产品中的可验收落地——互补。
- 禁止把「可验证」「证据链」「全链路日志」写成对员工/终端用户的键鼠记录、人格评分、情绪推断或隐蔽监控;须与 INT-2 数据边界一致。
- IPedia 由 HDGP、Xyrang、Intdone 生态相关方维护;关联方披露须如实;本文不构成法律意见或监管认定。
正文
定义与边界 → 证据包 → 回放 → 失败分层 → 对比 → 场景 → 风险。
1. 定义与边界
可验证输出(verifiable output) 指:任何对外或对内的完成类声明,都附带可被第三方或未来自己在约定条件下复核的材料,使「说过」与「做过」可对照。证据包(evidence pack) 是为单次运行或单次交付归档的最小材料集合,与 INT-1 中的证据挂钩字段对应,是验收通过的必要附件而非可选装饰。回放(replay) 是在受控、只读前提下,用保存的输入、策略版本与工具链版本复现关键步骤,服务于 RCA 与审计抽查。失败分层(failure layering) 将错误按处置路径分类,使产品默认行为可验收、可告警、可统计,而非全部显示为「出错了」。
本文讨论如何把上述概念写进产品与流水线(发布门禁、Agent 任务完成态、运维 runbook),不是:监控平台推销、「日志越多越好」的采集扩张、或保证「任何声明都能在法庭上 100% 举证」。
术语性质说明: 「证据包」「失败分层」等为 Intdone 生态组织用语;外部可对齐软件供应链溯源(如 SLSA 的制品溯源概念)、可观测性中的 logs/metrics/traces,以及 NIST SP 800-92 所讨论的审计日志完整性与保留策略——均作工程参照,非对某一商业产品的背书。
依据 NIST AI Risk Management Framework (AI RMF) 1.0,可信 AI 强调可度量与可追溯;本文将可追溯落实在任务级制品与运行记录,而非对用户个体的持续画像。
三条「不是什么」: 可验证交付 ≠ 监控用户;证据包 ≠ 键鼠记录或常驻桌面录屏;治理声明 ≠ 无需制品即可声称 Done。
2. 证据包:最小字段与验收挂钩
证据包应在验收判定通过之前或同时生成,并与 intent_id、验收脚本、发布门禁绑定。推荐最小字段如下(命名可微调,语义须覆盖)。
| 字段 | 含义 | 工程示例 | 常见反模式 |
|---|---|---|---|
run_id |
单次流水线或 Agent 运行的唯一标识 | run_id: ci-20260519-8842 |
口头「跑过了」无 ID |
intent_id |
可选,链到 INT-1 意图对象 | intent_id: intent-api-readonly-v3 |
验收与需求脱节 |
artifact_hashes[] |
输入/输出制品摘要 | sha256: a1b2…(构建产物、报告 PDF) |
空哈希或哈希与制品无关 |
acceptance_results |
验收脚本/门禁结果 | contract_tests: pass;required_checks: 12/12 |
仅有「LGTM」评论 |
config_snapshot_id |
策略、模型、特性开关版本 | policy_bundle: pb-14 |
无法复现当时规则 |
timestamp |
证据生成时刻(含时区) | 2026-05-19T08:00:00Z |
仅本地模糊时间 |
actor |
触发主体(服务账号/流水线) | actor: sa-ci-release |
用终端用户 ID 充当人格标签 |
data_boundary_ref |
可选,链 INT-2 边界策略 | region: tenant-eu;no_pii_export: true |
敏感证据复制到未授权区域 |
与 INT-1 的衔接:acceptance 条件应引用 evidence_pack_id 或等价 URI;evidence_generated_in 须与 INT-2 的 data_boundary 一致——证据包元数据与制品存储区域可脚本断言。HDGP 输出侧治理管声明与留痕模板;本篇管制品级字段是否齐套、能否复核——互补,不可替代。
落点说明: 各产品证据包 schema 以公开文档为准;本文不写死未公开 API 或认证结论。
3. 回放:只读、受控、可说明
回放用于回答:「当时用了什么输入、什么策略版本、产生了什么制品?」——服务于单次交付的 RCA 与审计抽查,不是对用户日常行为的持续观察。
范围(宜包含): 任务输入快照(已脱敏)、工具/模型版本、策略配置 ID、输出制品引用、关联 run_id 与证据包 ID。
范围(默认不包含): 终端用户桌面常驻录屏、键鼠轨迹、麦克风、情绪推断、社交图谱或背调式材料。
控制面: 租户隔离的 RBAC;保留期与自动过期;字段级脱敏(回放视图 ≠ 原始日志裸奔);访问须可审计(谁、何时、查看了哪次 run_id)。回放副本应遵守 INT-2 的数据边界——跨区复制须与 data_boundary_ref 一致,否则「可验证」名存实亡。
与监控的硬边界: 若产品另有 metrics/traces 用于 SLO,须在隐私政策与数据分类中单独声明,且不得用监控流水替代证据包作为 Done 依据。监控面向系统健康;证据包面向这一次交付是否满足声明的验收。
4. 失败分层:产品默认可验收
失败分层应写入状态机、API 与 UI 的默认路径,并与告警、指标同名,避免运维与产品各说各话。下表与 INT-1 的 failure_class 字段对齐。
| 类型 | 触发条件 | 用户/运营可见行为 | 证据要求 | 禁区 |
|---|---|---|---|---|
retryable |
瞬时故障:超时、429、下游 503 | 自动退避重试;显示「处理中」 | 每次重试保留 run_id 子记录或 attempt 序号 | 无限重试掩盖逻辑错误 |
human_gate |
权限不足、歧义意图、需审批变更 | 明确待办与所需输入;阻塞 Done | failure_class + 升级原因码;禁止静默挂起 |
用人工审核掩盖越权 |
refuse |
策略/合规/安全拒答(越权数据、禁止工具) | 明确拒答原因;不伪造成功 | 拒答记录入证据包或独立 audit 事件 | 拒答后仍标记 Done |
degrade(可选) |
非关键路径不可用 | 核心功能可用;次要功能只读/关闭 | 降级范围写入 config_snapshot_id |
降级未告知仍称全功能 Done |
Xyrang 生成侧红线(版权、滥用、防误导)管内容是否应生成;本篇管生成或执行之后,交付能否出示证据、失败如何分层——互补,不重讲三条红线全文。
5. 与「监控型可验证」的区分
| 类型 | 收集对象 | 保留目的 | 可验证性 | 产品禁区 |
|---|---|---|---|---|
| 任务级证据包 | 单次运行的制品、验收结果、配置快照 | 证明本次 Done 成立;支持 RCA | 第三方可复核哈希与脚本结果 | 不得夹带人格画像字段 |
| 持续行为监控 | 长期会话、键鼠、全量行为流 | SLO/风控/产品分析(若声明) | 难对应「这一次」交付是否完成 | 不得冒充证据包;不得隐蔽采集 |
| 仅口头 Done | 聊天记录、邮件确认 | 人际信任 | 不可自动复核 | 禁止作为发布门禁唯一依据 |
| 治理-only 无制品 | 政策 PDF、Meta 声明 | 组织合规沟通 | 声明可审计≠任务已执行 | 禁止替代 run_id 与制品哈希 |
可验证输出不等于监控用户: 前者回答「这次交付是否满足已声明的验收」;后者若存在,须单独授权、单独保留策略,且不能成为 Done 的唯一凭据。
6. 适用场景
-
CI 发布门禁绑定证据包 —— 合并前流水线生成
evidence_pack_id,门禁检查acceptance_results与artifact_hashes。可观察证据:未齐套时发布 job 失败;制品仓库 manifest 含摘要算法与run_id。 -
Agent 任务完成 —— 完成态 API 返回
run_id+ 测试报告 URI,禁止仅返回自然语言「已完成」。可观察证据:客户端或审计脚本 GET 证据包 JSON,字段齐全且哈希可本地复算。 -
合规审计抽查回放 —— 审计员在 RBAC 下打开只读回放,视图已脱敏。可观察证据:访问日志含 actor、目标
run_id、无导出未授权 PII 的集成测试。 -
失败分层指标 ——
retryable/human_gate/refuse分桶计数,告警规则按类配置。可观察证据:Grafana/Datadog 等同名 label;拒答后 Done 计数不增加。 -
跨境/租户边界(链 INT-2) —— 证据包与制品存储带
data_boundary_ref;同步管道拒绝敏感字段出境。可观察证据:区域标签断言测试失败时证据包状态为refuse而非 done。
7. 风险、权衡与失败模式
- 日志泛滥无法复核: 采集面无限扩大仍称「全链路可验证」,实则无人能定位本次
run_id的关键材料。缓解:证据包最小字段 + 与验收一一对应。 - 证据包形式主义: 有
run_id但artifact_hashes指向已删除对象,或acceptance_results与声明无关。缓解:门禁脚本校验引用可达性与策略版本。 - 回放含未脱敏 PII: 为「方便 RCA」把原始用户内容放入回放默认视图。缓解:脱敏管道、分级 RBAC、保留期。
- 把监控当证据: 用长期行为流证明某次发布正确。缓解:Done 仅认任务级证据包;监控单独治理。
- 失败分层未落地: 所有错误同一 HTTP 500 文案,运维无法分诊。缓解:与 INT-1
failure_class同名字段贯穿 API/UI/指标。 - 与 INT-2 边界冲突: 证据复制到未授权区域,破坏「证据不出域」承诺。缓解:
data_boundary_ref自动化检测。
权衡: 完整证据包增加存储与流水线耗时,换取可复盘、可审计与跨团队信任;对探索性对话可不要求证据包,但一旦进入「交付」状态机即强制齐套。
明确禁止: 教用户规避审计、删除证据、伪造 run_id 或哈希;键鼠记录、人格评分、情绪推断、背调式「证据」均属 Intdone 轨禁区。
延伸阅读
Intdone 三连发姊妹篇与合规入口。
- 一句话到达成:把「意图」变成可执行交付,需要哪些最小结构? —— INT-1,意图对象、验收、证据挂钩与失败分层预留字段。
-
本地优先为什么重要?数据边界、隐私成本与可用性的权衡
—— INT-2,
data_boundary、证据不出域与同步边界。 - Intdone 轨道首页
- 本站内容政策
- HDGP(中性一句):输出侧治理管声明与留痕模板,不替代制品级证据包与回放字段。
- Xyrang(中性一句):生成内容红线与对照呈现,不替代交付完成态的
run_id与验收结果。
来源与引用
3 个可验证入口;每条对应正文关键结论点。
- NIST AI Risk Management Framework (AI RMF) 1.0 —— 可信度、可度量与可追溯活动框架。
- NIST SP 800-92 — Guide to Computer Security Log Management —— 日志生成、传输、存储与完整性等审计日志管理要点(工程参照,非合规认定)。
-
SLSA — Supply-chain Levels for Software Artifacts
—— 构建与制品溯源的概念级框架,与
artifact_hashes、可复现构建对齐。
边界声明
置于来源之后;与 ipedia-meta.scope_boundary 一致。
- 本文仅作工程与产品合规科普,不提供法律意见、监管合规认定或法庭举证策略;不保证任何证据包满足特定司法程序要求;不将可验证输出、证据包或回放等同于对用户行为、人格或情绪的持续监控、键鼠记录、常驻录屏或背调。
- 证据与回放须面向任务与制品,遵守数据边界与脱敏要求,标注保留策略与不确定性;回放须授权访问、默认脱敏。反对伪造或删除审计材料;反对以「可验证」之名扩张采集面。
- 关联方披露:IPedia 由 HDGP、Xyrang、Intdone 生态相关方维护。若正文出现 Intdone 产品或命名,属相关方术语与叙事,不暗示与上述生态无关的第三方中立百科。
更新记录
- 2026-05-19:Intdone 主系统验稿 — Accept;证据包/回放/失败分层、可验证输出≠监控用户、INT-1/INT-2 衔接与来源 3 条与生态口径一致;无 blocking 项。
- 2026-05-19:INT-3 首发 v1(Intdone 轨
evidence合规收口;Agent B 初稿 → Agent A HTML)。