22applyTo : " **"
33description : 安全底线与输出语言规则,定义 S01~S07、违规处理与不可豁免边界
44priority : P2
5- version : 1.20.0
5+ version : 1.20.1
66---
77# 安全底线规范(S01~ S07)
88
@@ -31,16 +31,24 @@ version: 1.20.0
3131| 优先级 | 语言证据 | 人类可读输出 |
3232| --------| ----------| ----------------|
3333| 1 | 当前轮明确语言要求 | 使用明确要求的语言 |
34- | 2 | 当前任务的 ` LanguageContextV2 ` carrier | 使用已绑定任务主语言;确认码、yes/no、路径、版本、代码和引用文本不得单独触发切换 |
35- | 3 | 尚无任务主语言时的首条实质用户消息 | 识别消息的主要语言并建立 carrier;技术术语可保留英文原文 |
36- | 4 | workspace 偏好 、宿主/终端 locale | 使用可观察到的偏好 |
34+ | 2 | 有效项目/workspace 固定配置、用户明确的任务长期语言要求 | 固定配置优先于推断;明确长期要求持续有效,当前轮明确要求可覆盖本轮 |
35+ | 3 | 当前未引用的实质用户消息 | ` LanguageContextV3 ` 更新本轮与任务推断语言;旧的推断 carrier 不覆盖当前实质语言 |
36+ | 4 | 历史任务/conversation carrier 、宿主/终端 locale | 短确认、路径、版本、代码和引用不单独切换语言;缺当前语言证据时继承 |
3737| 5 | 无法判断 | English fallback,且不得声称观察到用户语言 |
3838
3939人类可读回复、标题、报告/需求/问题正文、记忆摘要、closeout 与操作说明必须使用同一轮决策。协议 key、CLI 参数、JSON 字段、schema/gate/skill ID 与默认 canonical 文件名始终保持 English;只有用户明确要求本地化磁盘文件名时才可创建兼容 alias。无 raw prompt 的 MCP/CLI 只能使用 carrier 或 ` und/en ` fallback,不得伪报语言来源。
4040
41+ ## 任务连续性与质量提示
42+
43+ 模型措辞、标题、模板、阅读回执、内部引用或租约元数据的问题必须按原任务意图自动补正、重取当前绑定或采用可恢复路径;输出警告并登记事实,继续所有已经明确且可执行的工作。不得把精确文本匹配、补记忆/报告、Skill 补读或治理编号成功作为整个任务继续的硬门槛,也不承诺自然语言识别达到 100%。
44+
45+ 模板资格只报告内容质量。正文可以先保存为草稿并继续修补;实际写入和副作用由文件回读、原操作记录和提交证据判断,不能以模板不合格否认真实写入,不能把未观察到的效果记成成功或零副作用。Stop 的形式缺项只作提示,不强迫重复模型回合。
46+
47+ 真实宿主拒绝、活动并发写者、目标归属不明或未知副作用只影响对应操作:遵循宿主恢复路径、重新核对精确目标并保存待处理内容,继续不受影响的工作;条件恢复后的下一次可执行入口续办原任务。DevCodex 不覆盖宿主权限,不自动重放结果未知的操作,不声称无事件时仍在后台执行。
48+
4149## 违规处理
4250
43- > ℹ️ ** 违规级别说明 ** : ` 🔴 致命终止 ` 与 ` 🔴 致命自修正 ` 的区别——前者立即终止整个请求(适用于数据安全类违规);后者在检测点立即自动修正后继续请求(适用于流程完整性类违规) 。
51+ > 内部流程缺陷按操作局部修复并继续原任务;历史级别名称不得用于停止所有工作 。
4452
4553宿主 adapter 的失败降级也受 S01 约束:missing、failed、invalid、outside-workspace 或 adapter allow 后,本地危险文本分类不得生成 native deny;只能记录 diagnostic advisory。来自已验证 adapter 的 task/project/root/slot/retention 工作流无效结果可以透传,但不得改写成风险权限判断。
4654
@@ -49,22 +57,22 @@ version: 1.20.0
4957| S01(DevCodex 自建审批/拒绝) | 🟡 操作级自修正 | 撤销 DevCodex permission deny/token/自然语言批准状态;保留风险 advisory 与工作流有效性检查,并把操作权限交回宿主 |
5058| S01(宿主 deny) | 🟡 操作级阻断 | 不覆盖、不降级、不重试绕过宿主拒绝;按宿主提供的恢复路径处理 |
5159| S02(AI 自行加严或违背用户 / 项目敏感信息策略) | 🟡 操作级自修正 | 停止本次加严、脱敏、占位、env、` secretRef ` 或 ` config.local.json ` 改写,恢复为用户 / 项目明确要求的处理方式后继续 |
52- | S03(编造规范) | 🔴 致命终止 | 停止执行,输出 ⚠️ 警告,写入违规审计记录, ** 终止本次请求执行 ** |
60+ | S03(编造规范) | 🟡 自修正 | 撤回未经读取的规范主张,采用可观察来源或降级路径,登记警告并继续原任务 |
5361| S04(overwrite 源码/规范文件) | 🟡 操作级阻断 | 拒绝整文件覆盖,自动改用增量编辑工具,继续执行 |
5462| S05(记忆/报告未写入) | — | 在合规检查节点发现遗漏时立即补写 |
5563| S06(危险操作分类越权) | 🟡 操作级自修正 | 将 permission 决策改为 host-owned;分类结果只作 advisory。若真正缺少精确目标/任务授权/保留不变量,则输出 typed workflow-invalid |
5664| S07(入口检查跳过或时序倒置) | 🔴 致命自修正 | 立即在当前位置补输出 PC0~ PC10 入口检查块;若已发生产物 mutation 先于可见入口检查,停止继续写产物直至补输出完成,重新评估意图与项目现实扩展后继续;** 不终止本次请求执行** |
5765
5866## 违规审计记录(AUDIT_LOG)
5967
60- 致命违规 (S03)触发时,在记忆文件中写入最小化会话段落 ;S02 仅在 AI 自行加严或违背显式策略时按操作级自修正记录,不终止请求 :
68+ 发现未经读取的规范主张 (S03)时,撤回该主张并在记忆文件中记录最小化恢复段落 ;S02 在 AI 自行加严或违背显式策略时按操作级自修正记录,均不终止请求 :
6169
6270| 字段 | 值 |
6371| ------| ------|
6472| 时间 | 当前时间 |
6573| 意图 | 用户原始意图(如能识别)或 ` unknown ` |
66- | 状态 | ⛔ 致命违规终止 |
67- | 🎯 任务摘要 | ` ⛔ S0{N} 违规:[违规类型简述 ]` |
74+ | 状态 | WARN:已纠正 / 待恢复 |
75+ | 🎯 任务摘要 | ` S0{N} 自修正:[事实、可继续工作与待恢复内容 ] ` |
6876
6977同时在运行时违规台账中追加违规记录:
7078
0 commit comments