Fix wallet destroy fund loss, Tumbler progress timing, settle idempotence, bounds guards (from external review)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
d0054443ec
commit
4501807cd2
5 files changed
+38
-10
No files matched your search
@@ -4,6 +4,12 @@
|
||||
|
||||
### 第九阶段:剧情与收尾
|
||||
|
||||
- 外部评审(agy 的整体评审报告,逐条核实后)修复的真实问题:
|
||||
- 销毁钱包会让资金凭空消失:收益池利息和时间锁取款按钱包地址找人,钱包销毁后找不到就跳过,款项被丢掉。夜间结算改为找不到就回到当前钱包(和预测、质押一致),销毁钱包时有预测持仓、收益池存款或取款、质押、混币在途也一律拒绝。
|
||||
- Tumbler 剧情进度在生成顾客时就推进:当天没聊完、被清场或读档重来,进度已经走了,最糟的是第 3 次(三选一)没选就跳到第 4 次的"没做选择"分支,剧情报废。改成对话真正走完才推进;第 3 次在做出选择时推进;没聊完明天照样来。游戏内验证:第 1 次聊完日志"进度 1",没聊完的第 2 次不推进。
|
||||
- 夜间结算加幂等保护:同一天已经结算过就跳过,防止其他 mod 或调试让钩子触发两次造成双重扣费。
|
||||
- 预测盘口读游戏的 `futurEvents` / `futurEventsDay` 两个并行列表时加了下标保护。
|
||||
- 核实后没有采纳:静态变量串档(`ClosePrice` 等每晚结算前先赋值再用,`Pending` 读档时已清;实际无串档)、除零(SPARK 螺旋也只到约 0.5、CRA 最低 0.02、全网算力有 0.8 的可用性下限,不会为零)、全局随机数流拆分(设计取舍)、`Charged` 字典增长(体积极小)。报告里还有几处引用错误(页签数量、不存在的 `out_fullsim.md`)。
|
||||
- 收尾补验证(游戏内,用游戏自己的开日流程:调试"Run night"和 `day 1` 过夜,墙上的卷帘门按钮开门):
|
||||
- 伪造转账顾客:新增调试入口"Coin buyer forged"。开口"CRT 我已经转过去了,截图给你看……"(正常顾客说"我用 CRT 付,链上确认要一会儿");成交 4 件共 118 信用点后现金没变(信用点被扣回),日志逐件记"伪造转账",晨间日志列出四条"拿走了……说付了……链上没有这笔"。
|
||||
- 内幕被查:线人排期的停电盘口押「是」花 600(2,046 份,超过上限的 40%,标内幕),结算夜"内幕下注被查:本金和收益 2,046 全部没收,记诈骗罪证",罪证账本 FRAUD 380。
|
||||
|
||||
Reference in new issue
Block a user