MP-3 · kelly_cap 字段语义与下游消费协议
⚠️ 已退役(2026-06-04)——由 ADR-021 · kelly_cap 退役 取代。 owner 判定
kelly_cap无用且误导,字段已从代码彻底移除(FinBayes684d69d)。本协议仅作历史记录保留,不再作为任何实现的依据。
§0 一句话说明
BimodalPosteriorM0.kelly_cap: float ∈ [0.0, 1.0] 字段在 M0 必填,但它表达什么、谁算它、下游怎么用、能不能被外部覆盖 — 这四件事 ADR-008 supplement 没定。本签字包请项目 owner 在 C-1 启动前逐条选定,避免 M0 实施时由 Codex 现场拍脑袋造成下游分裂。
§1 背景
| 项 | 状态 |
|---|---|
| 字段定义 | BimodalPosteriorM0.kelly_cap: float = Field(..., ge=0.0, le=1.0) — 见 m0-walking-skeleton.md §3.5 line ~359 |
| 上位依据 | ADR-008 supplement §2.x 锁定 kelly_cap 是 1.1 后验输出的必填字段,但未规定语义 |
| 不变量约束 | FinBayes 是认知层不是执行层 — kelly_cap 不能被解读为"建议仓位比例",否则违反核心不变量 |
| 决策等级 | P0(影响下游 UI 展示 / 评测 / UQ 模块多处消费方语义,必须人签) |
§2 待签字的 4 个选择
A · kelly_cap 表达什么?
| 选项 | 描述 | 风险 / 收益 |
|---|---|---|
| A.1(推荐) | "认知层对凯利公式上界值的估计" — 一个纯认知输出数字,表达"若此判断完全成立,用户在自己的风险框架下投入比例不应超过此值"。不是仓位建议。 | 与"认知层不是执行层"不变量严格对齐 |
| A.2 | "用户参考仓位上限" | ⚠️ 与不变量冲突(暗示执行建议) |
| A.3 | "纯诊断指标"(仅用于评测,不展示) | 信号丢失 — 用户读不到 → kelly_cap 何必算 |
B · 谁算 kelly_cap?
| 选项 | 描述 | 风险 / 收益 |
|---|---|---|
| B.1(推荐) | 综合层 (synthesize()) 在产出 BimodalPosteriorM0 时一并计算 — 输入 = mode_a/mode_b 双峰后验 + 不确定度 + 1.0 主体的 invalidation_conditions;输出 = min(理论凯利, 0.25) 硬上限 0.25 | M0 单点产出,下游消费统一 |
| B.2 | 评测时事后回填 | 实时输出缺失 → UI 无法展示 |
| B.3 | UQ 模块 (M7) 独立产出 | M0 阶段 UQ 未上线,kelly_cap 字段 M0 空着 → 违反 M0 必填约束 |
C · 下游谁消费?
多选(请勾选 M0 阶段哪些下游需要读取 kelly_cap):
- C.1 UI/CLI 展示层 — 把数值附带"参考性认知上界,非仓位建议"的免责标签显示
- C.2 评测 EvalHarness — D7(决策可执行性 / 不确定度匹配)维度消费
- C.3 半人工标注 SLA — annotator 校验 kelly_cap 与 invalidation_conditions 是否自洽
- C.4 审计日志(AuditEvent) — 入 audit_event.payload 留 30 天
- C.5 不消费(M0 阶段 kelly_cap 写到 schema 但无下游 reader)
推荐组合:C.1 + C.2 + C.4(UI 展示 + 评测 + 审计),不勾 C.3(M0 阶段半人工 SLA 资源紧张)。
D · 外部覆盖(用户偏好 / 风险等级)能不能改 kelly_cap?
| 选项 | 描述 | 风险 / 收益 |
|---|---|---|
| D.1(推荐) | 不能 — kelly_cap 是认知层的诚实输出,不接受用户偏好或风险等级的下行覆盖。用户的风险偏好在用户自己的执行决策环节生效,不污染认知输出。 | 与"认知不替决策"不变量严格对齐 |
| D.2 | 可以被用户偏好乘以一个系数(如保守用户 × 0.5) | ⚠️ 污染认知层;评测时 ground truth 失去基准 |
| D.3 | 可以但要审计标记 | 工程复杂度高 + 评测复杂度高 |
§3 变更协议
签字后任何对上述 A/B/C/D 选项的调整 必须走 governance/change-protocol.md 体系级流程(不允许 PR audit trail inline 决议)。
§4 签字行
项目 owner 签字: project-owner(按推荐组合一键签)
签字日期: 2026-05-29
选定组合: A.1 / B.1 / C.1 + C.2 + C.4 / D.1
备注: M0 阶段不接半人工 SLA (C.3)、不接受外部覆盖 (D.1);
kelly_cap 由综合层一次产出, 硬上限 0.25;
下游 UI/CLI 必须附带 "认知上界, 非仓位建议" 免责标签。
§4.1 已签字决议生效条款
- 生效时间:本签字行落地即时生效,覆盖 M0 及后续 milestone。
- 变更约束:A/B/C/D 任一选项调整必须走 Change Protocol · 体系级变更流程,不接受 PR audit trail inline 决议(pending-decisions-owner-map.md P0 规则)。
- 下游消费签约方:UI/CLI 展示层(C.1)、EvalHarness D7 维度(C.2)、AuditEvent 审计(C.4)三方在 M0 实施时必须按本协议读取
kelly_cap。 - 审计点:M0 完成 retrospective 时复盘
kelly_cap是否被任一下游误用(如展示成"建议仓位"),如有违规走防退化基线。
§5 推荐组合(一键签)
| 字段 | 推荐值 |
|---|---|
| A | A.1(认知层凯利上界估计) |
| B | B.1(综合层一次产出,硬上限 0.25) |
| C | C.1 + C.2 + C.4(UI + 评测 + 审计,不接 SLA) |
| D | D.1(拒绝外部覆盖) |
如同意推荐组合,回复"按推荐组合签 MP-3"即可,无需逐项填写。