docs(adjudication): 影响面最终关闭——EOD重算结果被丢弃,零生产后果

DealInterests hasClose 分支未接收 SaveAutoEodWithCloseInterestPosition 返回值,
UpdateDbOption 仅打审计字段不落库,快照滚动盘中实结金额——错误的251,355
只存在于内存与日志。内网查证与数据修正清单取消,修复定性为重构卫生项。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
hjhan
2026-08-16 11:53:15 +08:00
co-authored by Claude Opus 4.7
parent a5684022fa
commit f596bd80bc
@@ -19,13 +19,16 @@
**重算事件金额是应结的 3.3 倍**(多出部分 ≈ 剩余 3500 万份额对应的待实现利息,在只平 30% 时被算进重算结果)。 **重算事件金额是应结的 3.3 倍**(多出部分 ≈ 剩余 3500 万份额对应的待实现利息,在只平 30% 时被算进重算结果)。
> **资金面影响裁定(2026-08-16 代码级核查):资金没多结,本分歧不动钱。** > **影响面最终裁定(2026-08-16 代码级核查,三层全部关闭):资金没多结,数据没错,本分歧零生产后果。**
> 该 EOD 重算路径(autoSwap=false)无任何 AddClientCash 调用,客户资金只在盘中流程与 > **不落库**:`UpdateDbOption` 仅打审计字段不做 DbSet.Add,且 `DealInterests` 的 hasClose 分支
> EOD 自动互换/分红路径发生,均用盘中正确数;②EOD 快照"当日结出"(TdCloseInterest)与 > (SwapEodPositionService.cs:524)**未接收返回值**——重算结果被整个丢弃,库里不存在这条错误流水;
> 累计已结(RealizedInterest)滚动用的都是盘中实落库金额(75,999),剩余持仓待实现(≈177,300) > ②**不动钱**:该路径(autoSwap=false)无 AddClientCash;客户资金只在盘中流程与 EOD 自动互换/分红路径发生;
> 亦为正确值。错误的 251,355 只存在于当晚重算写入的一条**利息流水记录**(swap_flow_event)。 > ③**不进快照**:`TdCloseInterest`/`RealizedInterest` 滚动盘中实落库金额(75,999),部分平仓×复利×mode2/9
> 残余影响:该流水记录金额错误(事件列表如展示即错数)、未来任何消费此记录的代码会拿到错值、 > 的 `TdInterestIncome` 被后续 DailyAccrual 干净重算覆盖,剩余待实现(≈177,300)正确。
> 与 9 个真金白银炸过的生产 fix 同根因(percent≡1 语义漂移)。**修复性质:排雷,非止血。** > 错误的 251,355 只存在于内存计算与 Log.Info 日志行。观察日×当日平仓路径(autoSwap=true)确会结现
> (系统操作_互换),但该路 percent≡1 即"观察日全量结息"的正确语义,:1220 公式即为其设计。
> **结论:这是共享计算器内的语义地雷(percent≡1 复用),非结算错误;修复性质=重构卫生项,
> 与普通重构同优先级;生产数据修正与内网查证全部取消。**
### 1.2 可复现实测锚点(玩具参数,字符化钉子) ### 1.2 可复现实测锚点(玩具参数,字符化钉子)
@@ -94,13 +97,9 @@ EOD 口径(全仓待实现 250,508.61 + 末段增量 846.43 = 251,355.08)**无
- `GetInterests` 内 mode2 无条件覆盖/mode9 兜底(2035e1df 粘合)随之退役删除 - `GetInterests` 内 mode2 无条件覆盖/mode9 兜底(2035e1df 粘合)随之退役删除
- 钉住测试翻转为"两入口相等" oracle 断言;黄金回放 diff 仅允许出现在本格子的 EOD 结息额(=裁决修正值) - 钉住测试翻转为"两入口相等" oracle 断言;黄金回放 diff 仅允许出现在本格子的 EOD 结息额(=裁决修正值)
## 七、生产影响面(内网查证) ## 七、生产影响面(已关闭,无需内网查证)
受影响格子:**当日发生部分平仓 × 复利 × mode2/9 × 当晚 EOD 归档重算**——含两个来源: 受影响格子:**当日发生部分平仓 × 复利 × mode2/9 × 当晚 EOD 归档重算**——经代码级核查,
- 人工盘中部分平仓后的当晚归档(常见); 该路径重算结果不落库、不动钱、不进快照(详见 §1.1 引注),**生产资金与数据均无影响,
- `SwapTradeAutoService` 自动归并部分平仓(反向流水量<持仓量)后的当晚归档。 原定内网查证与数据修正清单全部取消**。观察日×当日平仓(autoSwap=true)路径结现,
但 percent≡1 在该语义下正确,非本分歧范围。
**资金面已裁定无影响(见 §1.1 引注)。** 内网查询目的降级为两条:
1. 确认无消费方在汇总这条重算流水记录(遍历取数处:报表/事件列表/对账脚本是否
按 SwapTradeId+EventDate 汇总 swap_flow_event.InterestAmount 且未过滤 EventId=0 的重算行);
2. 量化错误记录的存量规模(多少笔重算行金额≠契约重算值)——作为修复后的数据修正清单。