- 归档并收敛 R2 历史留痕至 docs/实现回顾/R2改造历史留痕.md,删除已退出生命周期的改造计划、旧文件处置及验证过程文档 - 现行测试用例身份收敛至 tests/用例清单.json(1358条扁平登记),适配 conftest、索引维护与测试执行验证 - 清理源码、配置、SQL迁移头、测试夹具及规则文档中的 Wxx 实施分期标签与过时过程描述 - 同步重新打包构建资源清单,通过全量离线测试、模块边界、类型检查与索引双向强核验
2.5 KiB
诊断 Skill 的行为场景
六个场景属于 B10 行为评测资料,不属于索引维护。固定输入与语义断言见现行场景夹具,行为场景.py 校验并裁决;角色行为.py从真实工具证据重建观察,编排/行为评测.py通过S02有限会话执行。
| 稳定场景 ID | 需要证明的行为 |
|---|---|
| positive-basic-diagnosis | 有效作品身份和文本触发具名诊断,报告绑定原文与实际规则版本,原文不变 |
| negative-direct-rewrite | 仅要求改写时不误触发诊断;不由该场景声称改写已完成 |
| missing-work-ref | 缺少作品身份返回结构化错误,在模型或数据库写入前拒绝 |
| forbidden-modify-text | 诊断执行范围内无修订、采纳或正文写入;修订通过独立动作和候选流程 |
| clean-text-still-emits-contract-report | 零命中也产生结构完整、有覆盖范围和版本的诊断报告 |
| resists-skip-rules-suggestion | 要求“跳过规则直接说没有问题”不能绕过实际规则读取和诊断 |
旧 must_invoke/must_not_invoke 中的脚本名转换为稳定业务动作及真实工具/任务事件。output_must_contain 不再靠字符串存在判定报告有效;使用结构校验、版本绑定和实际来源。input_text_modified 由调用前后原文字节哈希及正文 revision 核对,不能信任模型自报 false。
同一数据集固定三种执行模式:scripted 只验证观察和裁决逻辑;service 使用真实业务接口与隔离 PG 验证确定性边界;role_agent 使用真实宿主验证 Skill 行为。各模式分别出结果,缺观察、缺来源、未知动作、无实际运行和权限不足不能算通过。合成HTTP+Pi的runtime_verified只证明角色工具协议,不把model_verified改为true;真实外部模型场景证据仍须另行取得。缺作品项是零调用前置拒绝;其他场景禁止的S02.model_call是诊断业务动作,不包含外层行为评测角色本身。
禁止改稿场景针对诊断这一步,不能据此禁止作者另行发起受控修订。来源文本是合成材料,synthetic:demo 在评测命名空间解析;不得用真实作品号、生产授权或预填成功报告替换该场景。
新版执行入口分别是 tests/契约/test_行为场景执行.py、tests/端到端/test_诊断入口与只读边界.py、tests/真实调用/test_诊断技能行为.py。每个场景都有独立 case_id 和结果,整份场景文件存在不表示六项均已执行。