用户拍板 2026-08-20:A+B+C 全采纳;本册与计划 v2.6 修正案同批 入库(契约先行),判决代码一行不动,实现排 v0.6。痛点实证 = v0.5.0 评审周自身:300 硬墙迫使 6 次拆分(其中 candidates/runs 属"为墙拆分")、为塞进天花板删注释 3 次、rustfmt 与手工压行 互搏 2 回合、三个文件长期停在 300 整(「299 停车」病理)。
- 三段曲线:舒适区
[0,S]零罚;渐进区(S,H]罚p(x) = P_max × ((x−S)/(H−S))²(凸——越近硬线罚越陡;整数/ 有理算术,判决在核);硬线H语义不变(deny)。 - 过硬线(proto 2.17.0 修正,M9 批 6):
x > H改 C¹ 线性延伸p(x) = P_max × (1 + 2(x−H)/(H−S))——H 处斜率相接、恒单调恒收费 (停止收费=奖励增长),但平方不出契约域 (S,H]。动因=批 6 实战: 两真实仓库在平方外推下轴 0 收费破万分之十、总分钳 0 全失区分度。 同修正将 score 聚合改为逐轴有界密度费floor(scale·v/(v+n))(公式与机会数定义见 contracts/VERSIONING.md 2.17.0 台账),二次分数迁移随发版声明。 - score 侧:size 轴由二值改梯度 = 分数迁移一次,发版声明义务 (RELEASE.md §0,修正案①先例)。
- guard 侧 as-built:v0.6 落 observe 台账(
zone事件,S<行数≤H 每写一记);v0.7 已接线位置→档位映射(<25% observe / 25–75% warn / >75% ask / >H deny),且切点由核授权随基线下发 (zoneWarnPermille=250/zoneAskPermille=750)——ce.toml [guard] zone_tiers显式声明才启用;默认翻档以这一类自己的 FPR 台账为准 (§6 同款)——该台账 2026-09-06 起在 FPR-REPLAY.md 「分级区档位映射」节,仪器cli/tests/it/fpr_zone_replay.rs, 出厂默认与台账的一致性由cli/tests/it/fpr_zone_gate.rs执行;武装后台账行加记映射档 (feed 0.6.0)。首测自仓 28/5196 = 0.5388 %、requests 11/448 = 2.4553 %; 后者超过 1 %,采用变体 B,zone_tiers默认仍为false,无默认档位变更。
- 软线随仓库自身分布浮动:
S = clamp(median + k×MAD(log-LOC), [200, 500]),按判决语言集在基线冻结时的分布计算—— 防自指漂移:膨胀提交不能挪自己的球门柱;重锚只随CE_ACCEPT_BASELINE具名重立。 - 硬线
H默认 750 且不随分布浮动:§B 的相对逻辑只能放宽舒适区,永不挪 H;自规则包起(proto 3.1.0/3.2.0,计划 v2.13 ①)H 逐类可声明——ce.toml [[rules.class]]的knobs.file_lines_fail为该类路径改写 H,score 曲线、scan 阶梯与 PreToolUse 硬预算同读这一条线,未声明类的路径仍是 750;旋钮指纹与已提交基线不符(或基线不可读)时,PreToolUse 钩子回落到出厂阈值/exclude/类表并在拒绝理由里点名围栏(6.4.0,cli/src/guard/budget.rsfenced),与 ce-toml.md 记的同一例外。 - 先例:S1 命名轴已在核内做分布判定(归一化 Tsallis-2);分位数是 排序整数上的精确算术。
- 对所有超过软线 S 的判决文件计算 Split Advisory(包括
x > H,继续按 线性臂定价):- 缝候选 = 单元边界:每个有后继的顶层单元之后的那道间隙,n 个单元 出 n−1 道缝。共引 / 克隆块 / co-change 只进缝价,不产生候选缝—— 没有聚类步骤。
- 收益 B = 渐进区罚分回收,模型唯一一项。设计初稿另列的「dedup 预算效应」与「热/冷单元隔离」已于 v2.30 步 5b 退役、不再是「未实现」:
克隆块按内容指纹判定,一道缝要么切穿它(成本侧
roiCloneMilli已计价)要么整块留在一侧,拆分不减少预算一行;热/冷两侧不共变正是成本侧roiChurnMilli项为零的那道缝,同一份 churn 事实不两记(模型停在保守侧;册 08 §「Not found in source」)。 - 成本 C = 被切断的内引用数 ×
roiRefMilli+ 切穿克隆块数 ×roiCloneMilli+ 跨缝共变对数 ×roiChurnMilli+ 每新文件固定开销 φ(roiPhiMilli)。设计初稿的「基线重键噪声」并入 φ:搬走的成员换键、基线具名重立一次,是每个新文件付一次的固定代价,不另立项(同批退役)。 ROI = B/C(有理数)。
- 面:
ce structure --split-candidates——每个越过软线的判决文件各一行 (最优缝 × ROI,或豁免),不做 top-N 截断(硬预算规则簇现位于cli/src/guard/budget.rs;具体缝位与 ROI 以当次树的命令输出为准)。 - 区内仲裁:过 S 而无可行缝(所有候选 ROI<1 = 高内聚长文件) → 自动豁免并落机器生成的 why——「大项目文件天然长」的正面 回答:长而内聚 = 豁免有据,长而可拆 = 给出刀口。
- 判决位置:缝/边/churn = Rust 测量事实;曲线/围栏/ROI 排名 = 核内新 advisory 家族(或 structure/1 扩展)——Haskell 占比 第二叉的首个实弹(v2.3 拍板的架构迁移承诺)。
镜像验证:外部精确复算(Fraction 有理算术)与核 CE.Verdict.Soft
对同一多重集逐值相等(self 多重集直喂核 = 303 = 镜像值)。
五语料 S 值(产品自身 walk 的判决集,k∈{1,2,3}):
| 语料 | 判决文件数 | median | k=1 | k=2 | k=3 |
|---|---|---|---|---|---|
| self | 295 | 132 | 200 | 303 | 461 |
| requests | 41 | 115 | 500 | 500 | 500 |
| ripgrep | 133 | 159 | 500 | 500 | 500 |
| cobra | 53 | 133 | 301 | 500 | 500 |
| zod | 425 | 80 | 200 | 432 | 500 |
- k=2 定为默认:自仓落 303(与历史 300 差 1%),zod 432;宽分布 语料(requests/ripgrep)在一切 k 下压在 500 上围栏——§B 的围栏 语义按设计生效(相对线放宽舒适区,绝不放宽到失守)。
- 自仓冻结值随每次具名重立重算,链无「终局」:每次具名重立都是新链节,
现行值恒以
ce-baseline.json的softLine为准(标定期的 303 / 300 / 294 / 308 / 304 五个链节见 git 历史)。下节 S=294 口径的手算例随其口径读, 不随现值。 - 分数迁移实测:self 818 → 809(轴 0:二值 4 → 梯度 9,S 回落 300 时口径;冻结 303 后同分——罚和的 floor 恰不动)。
- 定价范围(v1 两腿,v0.7 补齐四腿全额——wire 2.15.0):
benefit = 软区间罚回收(与 verdict 同一曲线权威
CE.Verdict.Soft);cost = 跨缝提及边×roiRefMilli(250) + 切穿克隆块×roiCloneMilli(500) + 跨缝共变对× roiChurnMilli(150) + roiPhiMilli(500),标定实录见下节。 - 共引代理:真·文件内符号共引不存在于任何缓存(v0.6 映射实证);
v1 用单元名跨缝词界提及作「被切断的内引用」的可测代理(≥3 字
符噪声地板,词界判定钉在单测)。搜索前先把字符串字面量与注释按
tree-sitter 节点整段置空(
scan::opaque,与墓碑的字面量掩码共用一处; v2.30 步 5b 第 30 条),字符串里、注释里的名字不计边;代理量的是邻居 代码里对单元名的词界拼写——顾问面非强制面。 - 面:
ce structure --split-candidates(CLI)、MCPstructure工具的split参数、GUI 结构屏拆分面板——三面 as-built 齐备(v0.7 补齐; v0.6 蓄意不带,工具面扩张各随其自己的决策批)。 - 自仓首跑实证(S=294 口径复核 2026-08-20):graph_ladder.rs 得真缝(318 行后,回收 2120‰ 对 500‰,ROI 4.2); DEVELOPMENT_PLAN.md 与 main_cmds.rs 拿到机器写的内聚豁免(11‰ 对 500‰、0‰ 对 2000‰);cli.md 越线一线(507‰ 对 500‰)翻为 候选——豁免与候选语义都以数字落地。
- 方法:
Cost.hs价点重编 × 语料--split-candidates重放,比对 候选/豁免翻转与最优缝移动(clone∈{250,500,1000} 四外语料 86 候选; churn∈{150,300,600} 自仓——外语料 tip 冻结在 14 天窗外,共变腿 诚实为零,活窗标定只有自仓可供)。 - roiCloneMilli = 500(2×ref):四倍价域零候选翻转(价是缝导向 项非候选杀手);每价点各一处最优缝移动且方向正确——cobra command_test 在千价下缝移离克隆块;zod 双语 README 类克隆巨物 被实价重估仍以收益胜出。
- roiChurnMilli = 150(0.6×ref:历史相关性弱于在场代码耦合的 证据权重序):四倍价域自仓零标签翻转、成本线性缩放验证 (graph_ladder 800→1100→1700);cli.md 的 42 个跨缝共变对 把"整册再生"型耦合显价为其缝价主体而真候选 ROI 不失守。
- 窗口 = 14 天(§4.1 双周锚),测量常数非 wire 旋钮。
- 实现次序(v0.6):核内曲线(score report-only observe 档)→ 自仓+外语料标定(requests/ripgrep 先例)→ guard 侧只落 observe 台账(档位接线待 FPR,见 §A)→ B 的围栏参数 k 以标定数据定案。
- 成本入册:分数迁移 ×1(软区间改 size 轴,golden 重切+发版声明)、 新家族 wire 面 ×1(advisory)、两外语料重放 + 自仓全史重放。
- 被否弃的替代(在桌上过):「不做」——现行硬墙+棘轮+具名增长可 运转;采纳依据 = 本周期实证摩擦 + C 对大文件豁免语义的补全。