76 lines
8.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: 回放评估细纲质量
description: 编排细纲隔离回放:把参考作品冻结到 as_of 章号,跑三臂 planner、盲 detector 与双盲 judge,产出可审计的逐样本结果。需要验证知识或上下文方案对细纲质量是否有增益时使用;阻断未来信息、未授权来源和不可接受的候选流入生产。
disable-model-invocation: true
---
# 细纲回放编排
本 Skill 是**细纲侧**回放编排层,只做冻结、授权、防泄漏审计、三臂回放编排与安全报告。正文 A/B/C 回放归 `回放评估正文质量`;真实作品配置装配归 `准备正文回放数据`;探针刷新归 `验证角色运行能力`;评分归 `评估内容质量`;Gate 终态归 `判定质量是否合格`;角色调用归 `执行角色任务`;CAS/raw 证据归 `记录运行证据`;候选检测归 `核对内容一致性`;冻结快照与只读装载归 `固定任务上下文`。依赖箭头只向下,本 Skill 不自带这些实现。
冻结合同以 [父仓专题-03](../../../../../../../design-docs/专题-03-AI编排上下文与质量评测实现规范.md) 为唯一 owner,Gate 裁决以 [父仓专题-04](../../../../../../../design-docs/专题-04-生成质量门控与创作健康度设计方案.md) 为准,adapter 隔离以 [父仓专题-05](../../../../../../../design-docs/专题-05-AI统一交互协议与外部AgentAdapter设计.md) 为准。
## 输入
- `reference_work`:参考作品标识和版本。
- `as_of`:冻结章号,必须是正整数;所有历史证据只能来自绝对章号 `<= as_of`。
- `snapshot_version`:不可变的快照版本。
- 作品大纲窗口:使用 `from_order` / `to_order`,只允许完整窗口 `to_order <= as_of`。
- 实体卡和里程碑:必须带可验证的绝对章号;无明确上界的区间不进入快照。
- 来源合同:每个来源要有 `sourceId`、`sourceVersion`、用途授权快照和来源状态。
- 内容审计合同:`leakageAudit.targetFacts.forbiddenFacts` 必须登记目标章结构化事实及首见章号;审计结果只允许输出路径和哈希。
来源版本只认原文件证明链:`example_reference_work.source_file` 必须唯一匹配成功 import task 和未软删 knowledge document,三方文件名一致,文档 `file_hash` 为 64 位小写 SHA-256,且 import `command_id` 以该 hash 前 16 位开头。`sourceHash=sha256:<hash>`,`sourceVersion=raw-file-v1:sha256:<hash>`;作品 revision 和导入章数不得改变原文件版本。
真实参考作品配置由 `固定任务上下文/scripts/load_reference_work.py` 在 `REPEATABLE READ READ ONLY` 事务中从实验库组装;它只取作品元数据、窗级大纲、章级细纲摘要和预注册卡 ID 对应的候选卡历史。候选卡必须标记为 `eval_draft`,不能当作生产知识检索结果。
### 编排入口
- `scripts/run_replay.py --mode dry_run`:只执行授权、来源、冻结和三臂 manifest 预检,不调用模型;用于确认评测执行的前置条件。
- `scripts/run_replay.py --mode execute`:在全部前置门通过后,依次执行三臂 planner、整组 schema、逐臂盲 detector、两个独立盲 judge、rubric 校验、稳定性门和去盲汇总;`--output-dir` 必须位于仓库外的临时目录。
- `scripts/write_report.py`:从 `run_result.json` 生成独立严格 schema 的安全摘要,只接受受限标识符、枚举、数字、短安全摘要和 SHA-256;不读候选正文,也不把候选路径以外的原始响应写入报告。
- planner、detector、judge 统一经 `muse_role` 注入各自角色 prompt 与冻结输入;离线测试注入内存 fake,真实评测使用版本化模型治理策略。
- 三角色 profile 受 `--timeout-seconds` 限制,默认 300 秒;timeout 传到底层 HTTP 调用,任一超时按角色失败终态落盘,不得继续进入后续阶段或标记 `completed`。
## 冻结规则
1. 章号支持整数和数字字符串,拒绝布尔值、浮点猜测、空值和无法证明上界的字符串。
2. 里程碑按绝对章号过滤;未来条目、跨过 `as_of` 的区间和无章号条目进入 `omittedSources`,不改写成当前事实。
3. 窗级大纲按 `to_order` 过滤并按 `from_order` 排序;`window_no` 只是展示字段,不能作为冻结键。
4. 终态摘要、未来弧线、原始当前态等存储字段不能直接透传;只能保留安全历史并由后续消费方明确标记推导状态。
5. 任何目标章事实、目标实体清单或目标章标签不得参与规划器侧来源选择。
## 输出
输出是临时 `snapshot_manifest`:记录来源 ID/版本、SHA-256、字符数、字段裁剪、来源省略和快照版本,不保存原书正文。三臂的 manifest 除卡注入分区外必须字节一致;不一致时整组作废。
`run_replay.py` 会同时审计公共快照和三臂卡注入区。没有 `leakageAudit` 配置、发现未来章记录、目标事实完整匹配,或原子事件子句达到多强锚点与覆盖率门时,不生成 `snapshot_manifest`,也不进入 planner。
detector 输入输出均为 JSON;输入只有匿名候选 ID、候选和公共冻结到 `as_of` 的规划上下文,不含 arm 名、`cardInjection`、`cardManifest`、任何臂特有卡内容、目标章 proxy 或其他评委结果。卡注入合法性只由确定性预检负责。报告不合约属于系统失败,须在 judge 前失败关闭;合同合法的 `failed` / `needs_evidence` 属于候选质量信号,三臂均须保留候选与报告并继续盲评。
合法的非 `passed` 报告在安全 manifest 与 CAS 中只保存按臂分组的 `semantic-diagnostic-v1`:固定结果枚举、固定原因/区段枚举、调用次数和有界阻断计数。完整报告只留受控 raw 和编排器内存中的 Gate builder 输入;安全输出不得保存错误消息、正文、引文、事实文本、补证查询/原因、任何检测项 ID/字段路径、纠错草稿或模型原始字段。
两个 judge 使用不同 `judgeId` 和独立无会话进程。第二个 judge 的匿名候选顺序必须与第一个完全相反;任何 rubric 不合约标记 `judge_invalid`,任一同维差值大于 `0.5` 标记 `judge_unstable`,两者都不得标记 `completed`。只有三臂 schema 合法、detector 均产出合同合法报告、双 judge rubric 与稳定性门通过,才去盲生成逐维 `B-A` / `C-A` 差值矩阵并标记 `completed`。
## 数据边界
本 Skill 默认不写创作正文/规划表;真实配置经 `固定任务上下文` 的只读装载事务组装后以文件传入。完成态可写 `example_lesson`(效果信号);`--no-persist-lesson` 跳过。
真实角色调用的完整 prompt/response 只经 `记录运行证据` 写入受控 raw 表;仓外运行目录只保存 request/response 哈希与安全回执,不保存模型原始字段。生成候选和评审中间件仅留在显式指定的仓外临时运行目录,最终报告只允许评分、摘要、章节定位、失败类别和哈希。
禁止把完整 Prompt/Response、供应商原始响应、原书正文、完整目标细纲、token、密钥或未脱敏授权资料写入 Git 仓库或安全摘要。
## 红线
- 授权、来源版本、目标章禁读或内容级泄露检查任一失败,都必须 fail-closed,返回明确的阻断状态,不靠重试绕过。
- 真实作品运行必须绑定不可变授权快照,且 `allowedPurpose` 包含 `offline_evaluation`。缺记录、授权过期、用途不符或来源状态无效时保持 `blocked_authorization`,不得伪造为 `licensed`。
- 任一模型调用失败都不能跳过对应臂、复用部分结果或改写预注册输入;重跑必须重新执行完整样本合同。
- 任一样本发生系统失败、检测器不合约、盲评无效/不稳定、预算或证据持久化失败后,整轮已无法构建完整 Gate 输入,必须立即停止后续样本;不得继续调用模型消耗预算,也不得删除已经登记的诊断证据。
- 本 Skill 只做回放编排,**不产生也不改写 Gate 终态**;终态只能由 `判定质量是否合格` 产生,人工不得改写。
- `status=completed` 仅当三臂结果均 `ok` 且 judge 稳定;`assert_run_may_complete` 在写完成态前机械复核,禁止假绿。
## 复利合同
- 细纲/Writer 回放证据由 `回放评估正文质量` 与 `判定质量是否合格` 的 CAS/报告链承载;**本 Skill 默认 dry-run 编排不写 `example_run`**,避免与生产 `start_run` 双登记。
- **回写**:`status=completed` 后经 `propose_lesson_dedup` 登记 `example_lesson`(绑 `runId` 与评测稳定性摘要);`--no-persist-lesson` 跳过。Gate B 终态 lesson 仍由 `判定质量是否合格` 登记。