原始 Skill 权威锁
1. 何时使用
只要本轮选择或调用了其他 Skill,就同时使用本锁一次;不要递归调用本锁。
简单问答、单步解释和不生成文件的只读分析只在对话内核验。只有任务同时满足“多步骤”和“会创建、修改、导出或交付产物”时,才在当前任务根创建 .skill-contract/contract.json。
本锁不改变系统、开发者和用户指令的优先级,只约束 Skill 工作流内部如何保持原始要求的权威。
2. 唯一权威来源
在任务动作前,由主执行者完整读取每个已选 Skill 的 SKILL.md,并完整读取其中明确标为必读、强制或 required 的全部参考文件。读到文件结尾,记录绝对路径和 SHA-256;不要用代理总结、旧任务记忆、节选或测试代替本次读取。
原始 SKILL.md 与这些强制参考是 Skill 要求的唯一权威来源。下列材料一律是 record_only:
- 合同、计划、摘要、任务清单、检查表和
artifact.md; - 索引、映射、阶段包、迁移记录和审查报告;
- 测试、夹具、错误码、测试名称和通过数量;
- 从模板、旧项目、旧对话或历史任务复制出的材料。
派生材料只能定位或记录原文已经存在的要求,不能新增、删除、合并、弱化、改写或替代要求。派生材料与原文冲突时,立即以原文为准,并使冲突材料及其下游证据失效。
authority-index.json 若被某个原始 Skill 引用,只能作为定位工具;没有索引也不能阻止正常工作或交付。无论有没有索引,每个阶段和最终审计都要回到原始来源。
3. 当前任务范围
输入、输出和工作路径只从本轮用户明确授权的当前任务根解析。不要沿用旧题目、旧合同、历史输出或其他工作区路径。
把用户明确排除的路径记入排除项;不要读取、递归枚举、全文搜索、预览、哈希扫描、缓存恢复或让代理转读这些路径。
合同记录实际观察的路径。任务根、授权根、排除项、输入清单或交付目标变化后,先重新核验范围,再继续工作。
4. 原文要求台账
对每条适用或可能适用的原始要求建立点对点记录:
- 唯一要求编号;
- 原始来源路径、来源哈希和精确原文锚点;
- 锚点原文与锚点哈希;
- 负责落实的阶段;
applicable、not_applicable或pending;- 直接依赖关系和当前证据编号。
解释可以放在 non_authoritative_note,但验证器不得从备注、计划、清单或测试中创造要求。
适用性必须依据原始条件和当前任务事实。事实不足时保持 pending,不得猜成适用或不适用。需要用户确认且会改变模型、写作或交付结果时,在专业表述之外增加一段通俗说明,再取得当前任务中的确认。
条件不适用不等于跳过。例如:只有在题目存在附件数据且原始 Skill 要求检查相应数据问题时,才进行数据检查或清洗;没有附件时,不要编造“数据清洗”章节、过程或数据血缘,并保留“无附件”和“正式产物未虚构清洗”的两类证据。
5. 证据回执
中央锁只登记四类通用回执:
automated_check:原始 Skill 规定或允许的专业命令、测试或审计;artifact_inspection:对实际产物的结构、渲染、语义或内容检查;user_decision:原始 Skill 或任务明确要求的用户裁决;negative_branch:不适用事实与对应负面义务检查。
每份回执都必须绑定要求编号、当前来源哈希、实际目标路径、目标哈希、检查记录路径、记录哈希和结论。负分支还要分别绑定事实记录和产物检查记录。
原始 Skill 负责定义并执行专业判断。例如 DOCX 公式对象、图表血缘、渲染页面、数学结果或论文逻辑链怎样才算合格,必须按提出该要求的原始 Skill 及其强制参考验证。中央锁只核对这次验证是否真实发生、对应哪条原文、绑定哪个当前产物和哈希。
中央锁不得自行实现或扩大任何办公文件、图形、图片、程序语言或数学模型的专业语义解析规则;专业工具无法可靠判断时,把要求保持为 pending,使用原始 Skill 允许的真实渲染、人工复核或用户确认路线。
文件存在、说明非空、自报 pass、测试总数或清单全勾选都不能单独证明要求完成。
6. 阶段执行与门禁
多步骤产物任务按所选 Skill 规定的实际流程执行。每个阶段固定做六步:
- 重新打开本阶段涉及的原始章节并核对来源哈希;
- 从原文台账取得本阶段要求,发现遗漏时回原文补录;
- 根据当前事实解析适用性,必要时附加通俗说明并取得裁决;
- 按原始 Skill 的专业方法完成工作;
- 将专业检查结果绑定为当前证据回执;
- 所有到期要求通过门禁后再进入下一阶段。
阶段门禁只机械检查:来源已读且哈希当前、锚点仍匹配、适用性不为 pending、证据指向当前目标、上游依赖已验证、路径未越权。任何到期要求未验证时停止推进。
详细阶段映射与门禁见 阶段门禁。合同字段见 合同结构。冲突和失效规则见 权威、冲突与失效。这三份文件是本 Skill 的强制参考,必须完整读取。
7. 变化与失效
发生以下变化时,用直接依赖图使受影响要求及全部下游回到待验证状态,并删除旧回执引用:
- 原始 Skill、强制参考或原文锚点变化;
- 用户裁决改变语义、范围、适用性或目标;
- 输入、模型、代码、结果、图表或正文变化;
- 证据文件删除、替换、哈希变化或验证方法被证明不可靠;
- 任务根、授权路径、排除项或交付目标变化。
失效传播只清除旧状态和证据,不改写原文要求。不要保留旧的 verified 结论。
8. 预产物与交付
创建或实质修改产物前运行:
python -X utf8 scripts/validate_contract.py CONTRACT_JSON --phase pre_artifact
交付前从每个原始 Skill 和强制参考开始做一次正向审计:
原文要求 → 当前适用性 → 实际落实位置 → 当前证据 → 当前成果
正向审计必须发现台账遗漏,绑定当前来源与成果哈希,且只能证明原文已落实,不能补造新要求。随后运行:
python -X utf8 scripts/validate_contract.py CONTRACT_JSON --phase delivery
任一要求仍为 pending、失败、失效、越权、冲突或缺少当前证据时,停止产物创建或交付,并说明具体缺口。
9. 停止条件
出现以下任一情况立即停止当前阶段:
- 原始 Skill 或强制参考没有完整读取;
- 原始来源之间存在无法按指令优先级消解的冲突;
- 来源、锚点、证据或目标哈希发生未解释变化;
- 需要访问未授权或明确排除的路径;
- 适用性仍为
pending; - 到期要求缺少真实、当前且可复核的证据。
不要为绕过停止条件修改清单、测试、合同或错误码。