Files
gplan-2/game/tests/unit/battle_settlement
DKChan 4fbacc437b 工程(存量断言精简·A+B档首批): 19 静态断言站点删并——验证项目覆盖逐条不变
判据线=同一读数面+同一输入+谓词字面等价或字面是承接者真子集;不同查询函数间的
算术蕴含与不同夹具实例的独立前置一律不删。机器初筛(同文件标签近似 223 对/cond 全同
42 组)+七路只读子代理逐域语义裁决,主会话逐条抽验复核后由约 150 点核减至 19 点。

删并 17 在册站点(system_test #65/theme_projection #1519 #1520/config_db_cross_validator
#649/config_db_resolver #654/node_map_generator #1057/round_flow #201/board_gen_reward
#614/type_glow #1579 #1585 #1586/player_copy_sweep #1393 #1398/roll_multiplier #168/
seal_polarity #324 #325 #326)+smoke_boot 两站点(该件不在清单源列=口径外)。
两条改判=seal_polarity:442 标签并入三腿缺腿明细、roll_multiplier:132 标签并入 seed 读数,
判据本体不变。随行删除只服务已删断言的 focus 扫描循环与无消费者局部量 aoe_f。

验证集清单重生成(基点 b9260138,1604→1587)+15 条保留行「处置」列逐条回填去向指认;
--diff 对账 PASS(标签/cond/计数三对齐);被删标签全仓 grep 零悬挂引用;未用变异法与
撤销类取证。删并申报表与后续账(类别② 实测承载 0 条/护栏 8 处不可删/quiet 通道 407 站点
在冻结口径外/恒真 4 条另账)落 reports/工程改动报告-存量断言精简AB档-2026-10-28.md。
2026-10-28 20:04:35 +08:00
..
卡①T3(拆件批wr5): 宿主超标函数拆分全清+_emit_row束形改形——begin_battle(141行/17分支/16局部/7返回四键)拆编排骨架+_begin_<段>私有族(accept含spawn受理门/dice区间骰+_dice_roll单轴函数/preview_economy),段序=受理与敌人spawn→装板→同调/fx运行态与订阅重建→常时参数与充能重置→巢穴预告与经济注入→轮始发射,取号序逐字(数量骰先/atk骰后/行集空不开流);_place_variants(52行/14局部/6嵌套三键)拆_place_variants_apply+_variants_fringe(嵌套深度5→3,variant_place取号序逐字:vrow单抽先于片生长);_emit_row 8参→5参head归因束(键集type/source_class/origin_cell/highlight缺省空,行字典字段与step_row载荷逐字)调用点全量改形28处=宿主2+grant段6+combat段2+verdict段3+decay段1+battle_fx_host emit_cb 3+reward_grant 9+damage_controller emit_row_cb 6+damage_controller_test _on_row签名+extended_row_violation直调2(卡面G5/G6清单漏计combat2/verdict3/decay1与grant段实为6处、两测试消费方,实查补全);宿主行数压至999≤1000(契约2还债归绿:拆分壳开销以家族归并+陈旧横幅合并+叙事类注释清理吸收,禁删注释凑行数红线未碰——所删皆变更叙事/三写重复说明);gdstyle键账=宿主仅剩类变量38(豁免第三条在案)行数键消失,全闸0 NEW。验收:十套件绿(round_flow/seal/feats/settle/treasure/level_shop/forge/damage/contracts/node_map_determinism)+零SCRIPT ERROR〔拆件批 V9〕
2026-10-27 07:11:56 +08:00
合并 master(迭代39 拆件批+文档批) 进 iter40+主角账模型迁移适配——冲突两件按「保留本分支拆件结构+承接 master 语义」解:①battle_orchestrator 承 RunLedger 整类退役=新增 _journal()/_attune_loadout() 两读面(enc 派生、无成员接收)、_reseed_attune_charges 循环体换 AttuneLoadout.reset_cycle(写时种行/补行单源化)、冒险桶挂接改 enc["adv_bucket"](经 _fx_host.mount_buckets 下传)、战末 bonus 汇入换 GainJournal.gain_bonus(axis,value,"battle_export",axis);同时接回 master 的 B4 战斗指标面=_mines_hits 三读数账+开战清零+轮末转存、_roll_round_actions facts 组包四键(round_index/last_round_end/mines_hit_last/mines_hit_total)并传 check_trigger_unlocks/rollable_skills/special_skills 三参、enemy_hp_threshold 读数改 trigger.value。②RewardGrant 的 battle_ledger 引用改 battle_hooks 回调束三键(attune_consume/vision_add/negative_blast,bind_battle 缺键 assert)——授予件对账本零强引用、宿主侧单点留编排器,类变量封闭面 15 不减不增;use_treasure 充能消耗与真视计数改经回调,负向 blast 踩雷计数在 _flat_blast 判极点后回调宿主记账(等价承 master 的 _book_negative_blast 语义)。③treasure_effects_test 计数链断言取 master 口径(lg13.vision_used()==1)+本分支真实入口(reward_grant().use_treasure)。④trigger_cond_test V6 的两处 flat 行调用改指 reward_grant()._apply_flat_row(att 束形)——它原调编排器已迁函数触发 Invalid call,_init 在 quit 之前中断=进程挂死 124 超时(本轮排查实证:同件在 master rc=0 秒退,合并后挂死;修后 rc=0 全绿)。验收:run_all 65 套件 64 绿 1 红=已登记存量红(02 EV 锚 goblin 0.9148∉[1.00,1.20],迭代39 特批带红在册,重锚归后续数值批),零 SCRIPT ERROR;负向套件 run_time_fatal_test exit=1 三点绿;variant_placement 49 checks 绿(wr10 三条在位);gdstyle 待合并后复测〔结构小件批 V16〕
2026-10-27 22:25:53 +08:00
触发器卡(触发器批wr1-wr9): 触发条件机制实装+三Boss迁移+两示范投放——skill_table三常量词表+validate七反例校验段(四键白名单/词表出域/枚举算子限域/类型分派/普攻禁配);enemy_table unlock_hp_pct域校验段删(字段退役);skills.tres三Boss行加trigger闩型+enemy.tres八处unlock_hp_pct删+J面注释清理(技能表头注/酋长池注);unit_container快照trigger随读(技能行权威)+_entry_blocked收编_entry_locked(百分比阈值式T=round(max_hp×value/100)六算子统一/facts缺键=拦fail-safe)+rollable/special双面过滤facts缺省参(既有单参调用零破坏)+check_trigger_unlocks闩型换代;battle facts组包(摇号前一次成型,last_round_end空字典首轮映射none唯一落点)+mines计数埋点(负向blast守卫累加——正向spark_aoe/清图奖励同走blast分支不计入,轮末转存,开战清零)+解锁调用与pct读值源迁移;cross_validator池构成新纪律(每池至少一行无条件特殊技——普攻不计/trigger缺省行计数);示范投放:skills.tres孤注守势(buff/defensive_stance/lte35)+趁隙偷袭(damage×1.5/CD4/eq stopped)+status_effects护身行+地精两行w1+钩爪恐魔三行w2;测试换代:skill_unlock_test读值源与签名换代(申报①语义零变化)+round_flow expect_pools期望值随投放改写(申报②地精两行9/1→9/1/1·钩爪恐魔三行6/2/1→6/2/1/2)+十四行断言换代十六行+V4池纪律扩行(申报④)+巨蜘蛛band1误投修正(old_hook块与蜘蛛池同构误命中);trigger_cond_test新套件V1/V2/V4/V6/V7/V8/V9/V10全绿(manifest登记;V5对拍由skill_unlock/round_flow编排集成承载)。已知预期红:round_flow EV抽样对锚goblin(实测0.9148∉[1.00,1.20]——示范投放=池权重数值改动,EV稀释方向合理)——卡片T4-4预设停机呈报面:锚内子集判红,重锚归用户档位发起,实现批不自行重锚〔触发器批 V1-V10〕
2026-10-27 04:49:55 +08:00
测试(卡②撤销证明轮两处判据面修正): 变异取证抓出的两个自身缺陷——①run_time_fatal_test 的 wr5 两条失败消息用了 GDScript 不存在的格式符 %r(MUT-M2 撤接线时才走到失败支路,push_error 先崩在格式符上=红因不可读)改 %s+str 包裹;②variant_placement 的 wr10③ 直接 call 未接线回调(撤销证明⑤态下 luck_bias_query 无效)→ Invalid call 中断本函数、其后 20 条断言全丢=红但红面过宽,改「is_valid 才取值、否则记 -1」让 ③ 正常判红且套件跑完。变异台账(全部在主源文件临时注入、跑完即 git checkout 还原,还原前三件已提交 b8b69c68):M2 撤 fatal 接线两行→负面套件 exit=2(红因=[run_time_fatal_test/wr5] 棋盘生成违约未传导封印 battle_result=空);M3 撤 p6 handler 调用位→exit=2(wr6 未知标签违约通道未记录 recorded=[]);M4 撤 p7 handler 调用位→exit=2(wr7 未播种通道未记录);M5 撤组装点注入一行→variant_placement exit=1、2/49 失败=wr10② 红+③ 红(取回 -1/池合计 77≠85)、① 不红(判定面仍在)=卡面撤销证明⑤预期逐字命中;WR11 缝拆整体回退(掷格件复原 _fx/_ctx/set_fx+内联三参发射+组装点补 set_fx 一行)六组 dump 与缝拆在位态逐字节 cmp 全等(L1 45/39/46 行、L2 75/78/116 行)=契约 1 合法路径零扰动坐实。注:wr11 卡片撤销列写「回退任一缝拆 hunk→复跑出差异」在现网数据面不可执行(game/data/tables/ 零 bias_rewards 行实查复确认=权重合成面在合法路径恒等,回退本应无差异),该判据的牙在 wr10③(夹具装载后 85 vs 未接线 77),差异归反哺点清单呈报。静态判据面:wr1 改前 battle_live 命中 1/现 0,重复四句 4→2;wr2 confirm_dialog.close() 直调 2→0+单口三处在位;wr3 防护两处在位;p6/p7 return null 两处在位(debug 下 return 位两态不可判别=契约 6 只走静态面+评审注记)。复绿:负面套件 exit=1 三点全绿、variant_placement 49 checks 全绿、pacing_queue PASS、ui_click_probe 问题=0 零 SCRIPT ERROR〔结构小件批 V17〕
2026-10-27 22:34:49 +08:00