|
1 | | -# 契约复审链细则(references —— 按需加载) |
| 1 | +# 契约复核细则(席内)(references —— 按需加载) |
2 | 2 |
|
3 | | -出处:主文件条款②闸门(原则/双肢与档位单源在彼);本表 = 复审链细则,⛔ 不引 issue 编号。 |
| 3 | +出处:主文件条款②闸门(原则/双肢与档位单源在彼);本表 = 复核细则,⛔ 不引 issue 编号。 |
4 | 4 |
|
5 | 5 | ## 载体纪律(挂与清) |
6 | 6 |
|
7 | 7 | - **适用性 —— 内容肢及于 published `skills/**`**(维护者 2026-08-31 批 #12「同意」):作**可证伪的 |
8 | | - 算子/契约语义主张**的改动挂标走本链;⛔ 判据不是「提到契约」,纯算子清单、拼写、 |
9 | | - 格式不触发(标尺:10 处命中仅 3 处主张)。受管面人工合并 ⛔ 不替代本链,两道保障叠加。 |
| 8 | + 算子/契约语义主张**的改动挂标走本复核;⛔ 判据不是「提到契约」,纯算子清单、拼写、 |
| 9 | + 格式不触发(标尺:10 处命中仅 3 处主张)。受管面人工合并 ⛔ 不替代复核,两道保障叠加。 |
10 | 10 | - **PR 与卡双载体同笔挂**(维护者 2026-08-22:「简化一点是否可以直接挂 PR 侧」「两边都挂好 |
11 | | - 」; PR 一存在即挂,报告先于 PR 到达则先挂卡侧、ACCEPT 时补齐 PR 侧),同笔在该 PR 上向复审 |
12 | | - 席账号 request review(同裁决:「也可以直接要求复审」—— 仅通知,载体仍是标签)、停手。 |
13 | | -- ⛔ **不预挂**(维护者 2026-08-28 裁定):可复审增量存在前永不挂标,队列/受阻卡的提前挂已废 |
14 | | - 止 —— 前瞻条款②事实走主文件闸门段的三条既有通道;开载体恒 = 真实待审。 |
| 11 | + 」; PR 一存在即挂,报告先于 PR 到达则先挂卡侧、ACCEPT 时补齐 PR 侧),同笔在卡上记一行 |
| 12 | + 条款②认定;停靠短暂(只防复核完成前误入队),⛔ 无「等外部席位」的无限期状态。 |
| 13 | +- ⛔ **不预挂**(维护者 2026-08-28 裁定):可复审增量存在前永不挂标,提前挂已废止 —— 前瞻 |
| 14 | + 条款②事实住卡上裁决/分诊评论、`Clause-②` 申报与 `--tier` 输出;开载体恒 = 真实待审。 |
15 | 15 | - **载体不迁移**(维护者 2026-08-18,原话:「中期把闸门迁到 PR review 的 Request Changes |
16 | 16 | 上 我觉得没必要」): 闸门载体保持本标签,⛔ 不迁 PR review / Request Changes、不为迁移留门。 |
17 | 17 | - **重挂前先查裁决**:闸门标签缺失 ⇒ 先 grep 卡评论找复审结论 —— PASS + |
18 | 18 | 无标 + head 未动 = 已清标非被剥;head 后移或无结论才重挂(`get_reviews` 读空 ≠ 未复审)。 |
19 | 19 |
|
20 | | -## 复审资格与归属 |
| 20 | +## 复核归属与资格(席内) |
21 | 21 |
|
22 | | -- **资格** —— ① 跑在契约复审档位,硬条件,认定只认机读:自会话凭降档保险丝,子代理凭 |
23 | | - 转录核验(下节);② 非该卡派发席,已从资格放宽为路径偏好(维护者 2026-08-21,原话:「你自 |
24 | | - 己就是 Fable,自己就可以审核」):机读证实达档的派发席,可对自派的卡执行复审并清 |
25 | | - 标(审的是低档实现者的契约增量,非自身产物);放宽的是独立席位,不是复审本身,主文件「 |
26 | | - ⛔ 禁止自查放行」禁的是免复审直放,不禁本路径;低于档位的席照旧留标等待。 |
27 | | -- **归属**(维护者 2026-08-27 裁:「契约复审也是很重要的职责,也是需要定时处理的」):常设 |
28 | | - 唯一 = **分诊席定时轮**,逐载体经转录核验的达档子代理复审,只审契约增量 diff、结论一 |
29 | | - 行写卡;PASS 双载体同笔清标并清 review request,标清后方可入队;FAIL label-flip 交接;卡在决策 |
30 | | - ⇒ 只进决策箱,⛔ 永不自裁;轮报设**复审清单**专节(同代裁清单强制审计形状)。总监席 |
31 | | - = 召唤兜底,只处理分诊明示停放、核验失败在案或老化超期的载体,加决裁批次内 BLOCKED |
32 | | - 分支;⛔ 永不与定时轮并行扫同一载体集。 |
33 | | -- **清标即落地**(维护者 2026-08-25,原话:「审核通过你应该直接负责合并吧,还要等原始的项 |
34 | | - 目经理吗」):非受管 code PR 由**复审链同笔收口**:清标后按 `landing-operations.md` 走落地前检 |
35 | | - → 转 ready → 挂 auto-merge/入队;车道 PM 窗口与 half-states 孤儿巡检退为**兜底**,⛔ 停手即复 |
36 | | - 现「就绪却无人落地」。**三样不变**:受管面照旧 draft-only + 终局两条(人工直合或授权批 |
37 | | - 准钉 head 入队,单源见主文件)、⛔ 链永不入队亦不代批;FAIL / REWORK 原样;降档保险丝原样。 |
| 22 | +- **归属:该卡派发席,交付后收集复核当轮席内完成**(维护者 2026-08-31 裁定,原话:「项目经 |
| 23 | + 理是fable 或者可以派fable的子任务都可以自己contract view吧?」;沿 2026-08-21「你自己就是 |
| 24 | + Fable,自己就可以审核」的放宽 —— 审的是低档实现者的契约增量,非自身产物;主文件 |
| 25 | + 「⛔ 免复核不放行」禁的是免复核直放,不禁本路径)。 |
| 26 | +- **契约判断清单(收集复核的升格件,逐项落卡/PR 评论,⛔ 不是散文自述)**:① derived |
| 27 | + judgments 逐项 —— diff 引出的接受集/公开面变化逐条点名判对错;② semver 定级 —— 变更 |
| 28 | + 级别与 changeset 声明一致;③ 边界旗处置 —— dev 挂旗/open_questions 逐旗答复或升级。 |
| 29 | +- **独立性件 —— 隔离复核子代理**:契约判断**真分叉**、或 dev 挂旗待裁 ⇒ 起**上下文 |
| 30 | + 隔离的 fable 复核子代理**出第二意见,只喂卡片、既有裁决与 PR 本体,⛔ 不喂派发令与 |
| 31 | + 派发席自己的结论(污染即失独立性);简报写成**对抗性**(找拒绝理由)。未达档席 ⛔ 不凭 |
| 32 | + 自述复核,恒走本路径;子代理裁决按转录核验采信(下节),逐字采纳或整体作废。 |
| 33 | +- **放行 = 清标即落地**(维护者 2026-08-25,原话:「审核通过你应该直接负责合并吧,还要等原始 |
| 34 | + 的项目经理吗」):PASS ⇒ 同席同笔剥标(双载体),清标评论引 2026-08-31 裁定作 provenance,按 |
| 35 | + `landing-operations.md` 走落地前检 → 转 ready → 挂 auto-merge/入队;FAIL ⇒ 补丁轮;卡在决策 ⇒ |
| 36 | + 只进决策箱,⛔ 永不自裁 —— 真正设计分叉照旧升级维护者;轮报设**复审清单**专节(同代 |
| 37 | + 裁清单强制审计形状)。**三样不变**:受管面照旧 draft-only + 终局两条(人工直合或授权批准 |
| 38 | + 钉 head 入队,单源见主文件)、⛔ 席位永不代批;FAIL / REWORK 原样;降档保险丝原样。 |
| 39 | +- **外部评审链降为可选**(改写 2026-08-27「契约复审也是很重要的职责,也是需要定时处理 |
| 40 | + 的」所立的定时轮常设归属):分诊定时轮与总监席召唤非放行必要条件,在线时作**事后审计/抽 |
| 41 | + 查**,其裁决仍被尊重 —— 审计 FAIL 按状态机 label-flip 交回派发席补丁轮;⛔ 不与席内复核 |
| 42 | + 抢同一载体的放行动作;资格与档位硬门对审计者同样成立。 |
38 | 43 |
|
39 | 44 | ## 降档保险丝(机读) |
40 | 45 |
|
41 | | -- 每场开场**必调一次 `get_session`**(claude-code-remote MCP,无参)读 `external_metadata.last_served_model`,⛔ |
42 | | - 自述档位不是读数(静默降档腐蚀的恰是自述;实测与配置档陷阱见 platform-readings);读数 ≠ |
43 | | - `CONTRACT_REVIEW_TIER` ⇒ 该场整体跳过、标签原样留置 —— 卡在队列外等待是安全态。 |
| 46 | +- 席内复核/审计每场前**必调一次 `get_session`**(claude-code-remote MCP,无参)读 |
| 47 | + `external_metadata.last_served_model`,⛔ 自述档位不是读数(静默降档腐蚀的恰是自述;实测与配 |
| 48 | + 置档陷阱见 platform-readings);读数 ≠ `CONTRACT_REVIEW_TIER` ⇒ 本席 ⛔ 不自判清标,改走转录 |
| 49 | + 核验的 fable 复核子代理 —— 标签在复核完成前原样留置,卡在队列外等待是安全态。 |
44 | 50 | - **保险丝只测座位自会话**:`mode:subagent` 里的 `get_session` 量的是**派发会话**(实测: |
45 | 51 | 钉在地板档的子代理读回父档,⛔ 不作互证),传参只是配置 ⛔ 不作达档读数; |
46 | | - 条款②的 `mode:subagent` 派发照旧恒保留 `needs:contract-review`,免审跳过仅座位自会话成立。 |
| 52 | + 条款②的 `mode:subagent` 派发照旧恒保留 `needs:contract-review` 至席内复核完成。 |
47 | 53 | - **转录档位核验**(维护者 2026-08-27 裁)——「派更高档位子代理复审」仅核验通过才合法:采 |
48 | 54 | 信/清标前 grep 子代理 transcript 中 harness 逐消息盖章的 `model` 字段,产出裁决的每轮都须读 |
49 | 55 | 到契约复审档位,见回退证据 ⇒ 裁决整体作废;父会话仅两个合法动作 —— **逐字采纳或 |
50 | 56 | 整体作废**(理由仅机械三种:核验失败/越范围/格式不完整),⛔ 永不改写/删节/润色。 |
51 | | -- 契约复审 ⛔ 不适用额度耗尽豁免降档(豁免对象是派发;复审正为补偿低档派发而存在)。 |
| 57 | +- 契约复核 ⛔ 不适用额度耗尽豁免降档(豁免对象是派发;复核正为补偿低档派发而存在)。 |
0 commit comments