Commit Graph
107 Commits
Author SHA1 Message Date
DKChan ab3ba4f4a0 feat(迭代24): N3 敌方attack_type轴开列——20行全填normal+schema枚举校验+单位快照+开单传值+敌方结算克制消费点(卡片§2漏项,V5矩阵证词强制)+V5四断言(冒烟949/0) 2026-10-13 07:14:58 +08:00
DKChan 6e1b52a450 feat(R1机制位): requires_level等级阈值前置随批重立——用户推翻迭代21追认单#1裁撤案(裁「b)推翻,补机制位小批」)=schema字段Dictionary{node_id:n}+validate悬空/阈值<1/类型错加载即拒+tree_can_buy判定分支+行板门槛呈现(未达标🔒+悬停gate_text)+新单测tree_requires_level_test八断言(run_all 24→25套;首跑抓出测试自身时序bug:零配置行断言跑在cap满状态后,重排修正)+现役12行零配置空转零行为影响(冒烟938/0+probe --click/--full+render_gate全绿零漂移;MC豁免=零数值零行为变化)+天赋树v0.10六处R1表述换代+iter21报告§四#1推翻标注与§八兑现注——doc三闸对基线零新增+熵增PASS 2026-10-13 06:13:10 +08:00
DKChan 8e04807d4a fix(缺陷修批): Y断点随存——attune_refresh_y 入断点快照+续玩优先读断点(堵「用完 Y 退菜单再续玩满血复活」可利用漏洞;旧断点缺键回退参数面=旧档行为零变化)——06「天赋树实装批登记欠账三条」③,2026-10-13 用户令提前单独开修(按正常流程走)
代码两处(adventure_runner.gd):①_snapshot_breakpoint 断点字典扩列 "attune_refresh_y"(refresh_stock/battery_pending 同款六先例,扩列向后兼容);②resume_adventure Y 注入行改 bp.get("attune_refresh_y", params 回退)——花掉不回血,续玩保持已消耗态。

单测:curio_refresh_paid_test 新增⑥段两断言(断点有键=余量随断点还原花1剩2/旧断点缺键=回退参数面整额注入旧档零变化)。

文档三件随批(机械面同步):①存档序列化.md v1.8——断点随件键 attune_refresh_y 登记,v7 域后扩列不升版(v1.6 vision_used 先例同款,SAVE_FORMAT_VERSION 仍 7 无迁移分支);②冒险结构.md v0.21——「冒险断点」节附随件清单扩 Y 刷新池余量(断点字段口径 owner);③06-待办清单——欠账三条专条③✅销号注记+状态行换代(①②维持归 M4,本条转记账条无待裁点)。

批末闸:冒烟 938/0+单测 24 套全绿(含新⑥段)+doc 三闸对基线零新增(死链 3/term 旗与 gdd_lint 3 件 FAIL 均存量——迭代 23 并入后基线,本批三文档零新增旗);零数值零表值改动。
2026-10-13 02:05:17 +08:00
DKChan 3392ea7e2d Merge branch 'master' into iter23-forge-20261012
# Conflicts:
#	design/gdd/systems/表现与支撑/存档序列化.md
2026-10-13 01:34:15 +08:00
DKChan 2915f19c4b feat(迭代23-T6): 营地锻造工坊工作间——两区六路线行板实装(占位面板替换)+三意图信号接线
- MetaProgression.forge_shop_status():只读投影(等级/cap/解锁态/选中态/下级几何价/解锁价/前置通道进度——纯结构面,余额禁用归视图)
- CampOverlay:_forge_workbench 占位面板→武器锻造区/护甲锻造区两区六路线行板(件名+Lv+解锁态文案+锻造/解锁/选中钮);_rebuild_forge 随 open/refresh 重建;默认不可见+门控重建=锁定态零行板零购买路径(占位纪律延续);三信号 forge_buy/unlock/select_requested(契约 9 UI 只发意图)
- camp_shop_presenter:camp_data +forge 投影;on_camp_forge_buy/unlock/select 三处理器(写口唯一归 MetaProgression 锻造写口族;拒绝可见 pattern 1 toast)
- main.gd:三信号接 presenter
- 新单测 forge_workbench_test 12 断言(锁定态纪律/两区结构/钮态/余额禁用/满级/派生解锁出钮/三意图外发);run_all 23→24 套
- 轻闸:冒烟 938/0+run_all 24 套+probe --click 全绿(presentation 触碰加跑)
2026-10-13 00:21:41 +08:00
DKChan ed0629236a feat(迭代23-T4): 注入接线——hero_override 公式换代(FORGE_ROUTE_BONUS 退役)+两轴参数面全链+入战 AC 三层
- meta_progression.hero_override:atk=forge_weapon_atk_bonus+树 flat / armor_class=forge_armor_ac_bonus+树 flat / max_hp=树 flat;FORGE_ROUTE_BONUS 预留常量退役(公式不再出现,注释留痕)
- main.build_adventure_params:+attack_type/armor_type 两键(meta.hero_attack_type/hero_armor_type——存档选中路线类型轴,异常回退锻造配置默认值)
- adventure_runner:params 两键快照入公有 hero_attack_type/hero_armor_type(契约 8 锁死可断言面;start/resume 双路同),_start_current_level 经 set_hero_axes 下传
- level_runner:set_hero_axes 注入+effective_ac 换代=甲型基础 AC(forge_armor_route_by_type.base_ac)+路线加值(base_override)+局内加算区(bonus)三层;enc 携带两键
- battle_orchestrator:spawn 传 enc 两轴(空串=锻造配置默认值回退——行为连续)
- 冒烟 V5 后半/V6 锁死/V7 公式对拍+V10 树零攻防复核共 15 断言(含 enc 末端 hero_attack 行 pierce 键+spawn 显式注入)
- 轻闸:冒烟 938/0(923 基线 +15)+run_all 23 套全绿;删除标识符 live 引用零残留(FORGE_ROUTE_BONUS/hero 两轴仅存退役注记与 README 文档面=归 T7)
2026-10-13 00:09:17 +08:00
DKChan a6270bac54 feat(迭代23-T3): 锻造写口族——路线购买(几何价)+并联双通道解锁+选中切换(免费)+类型轴读数(MetaProgression 单点)
契约 9 写口唯一(UI 只发意图——意图信号接线随 T6 UI 同批落):
- forge_route_unlocked:解锁态派生单点(初始持有∨直购清单∨练满前一档 levels[prereq]≥cap——不落档)
- forge_buy_level:几何价=ForgeTable.level_price(20/30/45/67/101),扣钥石+等级+1+即时写盘;未解锁/满级/余额不足=拒绝零副作用
- forge_buy_unlock:一次性解锁价 200 直购;已解锁(含派生)=拒绝零收费——两通道互不影响、不设串联
- forge_select_weapon/armor:免费切换只受理已解锁路线(冒险锁死归参数面快照,契约 8)
- forge_weapon_atk_bonus/forge_armor_ac_bonus/hero_attack_type/hero_armor_type:T4 注入面取数单点(异常选中态防御回退 0/默认值)
- 冒烟 V2/V3/V4/V6 共 15 断言(隔离档 forge/forge2/forge3——add_keystone 置余额+直写存档域注入口径)
- 轻闸:冒烟 923/0(908 基线 +15)
2026-10-12 23:50:55 +08:00
DKChan 6def3544a0 feat(迭代23-T5): 存档域 forge_routes v7——六路线等级+直购解锁清单+选中标记(无特效域)+旧档缺键补齐=初始持有态
〔执行序调整:T5 先行于 T3——写口族硬依赖存档域,台账记录〕

- SAVE_FORMAT_VERSION 6→7 + _migrate_v6_v7 空迁移(缺键补齐模式,v3→v4 先例;幂等零漂移)
- _default_data 新域 forge_routes={levels 六键/unlocked 直购清单/weapon+armor 选中};_normalize 经默认模型自动补齐(旧档=初始持有态 sword/light 在档余四锁)+退役键白名单自动收口
- 访问器组:forge_route_level/set_forge_route_level/forge_unlocked_purchases/add_forge_unlock/forge_weapon/set_forge_weapon/forge_armor/set_forge_armor/forge_routes_snapshot(值拷贝出户)
- 解锁态派生不落档:初始持有(表 initial_owned)∨直购(unlocked)∨练满前一档(levels[prereq]≥cap)——派生单点归 T3 MetaProgression
- 冒烟 V8:往返逐域相等+v6 旧档既有域零折算/缺键补齐初始态+域键集恰四项(无特效域)+levels 六键恰全+快照值拷贝;迁移链版本断言 6→7 三处换代
- 轻闸:冒烟 908/0(902 基线 +6)+run_all 23 套全绿
2026-10-12 23:44:03 +08:00
DKChan cff741ea2a fix(迭代22反哺⑤补): 试炼镐C区展示行——charges=0件被_reseed_attune_charges注入循环跳过不入骑库存,而C区槽投影遍历骑库存→试炼镐C区不可见/悬停浮窗进度无处承载(追认批集成缺口,单测只测读数口未覆盖投影链)。修复=inventory_projection末段追加自动兑付件展示行(合成handle=-1非库存句柄+note积点N/8+槽点击走说明toast不进两步交互); use_attune_convert删除遗留孤儿函数头注释清一; 单测新增④b展示行断言两条(装配即入投影handle=-1+note=积点0/8/开格后1/8组合根重查链)+StubAutoInvRunner空骑库存桩。重闸全绿: 冒烟898/0+单测22套+probe_gate --full+render_gate golden 3屏0.00%+doc三闸对基线零新增(死链3/拔旗1/gdd_lint三文件表格占比FAIL均实证存量=79aac07版本对比表格行零变化)+熵增闸PASS; 06裁决小节与实现报告⑤条补集成补丁注记 2026-10-12 23:43:38 +08:00
DKChan 00d98b6f74 feat(迭代23-T2): 两根类型轴所有权移交——hero.tres 两字段删除+ForgeTable 默认值常驻持有+单位快照改读注入面
- hero.tres:armor_type/attack_type 两字段删除(含 2026-09-18 前置批登记注记退役);armor_class=10 保留为甲路线缺失兜底基准
- hero_table.gd schema:两 @export 字段与枚举校验同步删除(三数值轴 max_hp/atk/armor_class)
- unit_container.gd:spawn 签名 +2(hero_attack_type/hero_armor_type,空串=db.forge_default_* 回退)——三参旧调用方零适配,行为逐位连续(normal/light)
- smoke_all.gd::1901 hero_attack 行类型键主语换代为 forge_default_attack_type();新增 _smoke_forge_axes 段(V5 前半:字段不在位+默认值+零注入回退快照)4 断言
- 轻闸:冒烟 902/0(898 基线 +4)+run_all 23 套全绿
2026-10-12 23:31:50 +08:00
DKChan df666ddf30 feat(迭代23-T1): 锻造工坊配置表落位——ForgeTable 新表(默认两轴常驻持有+六路线行族)+ConfigDB 访问器+V1/V11 单测 41 断言
- 新表 forge.tres(schema forge_table.gd):default_attack_type/armor_type 默认值(契约 2 所有权移交——hero.tres 两轴随后批删除)+routes 六行(sword/spear/staff/light/heavy/ward)
- provisional 沿需求卡片 T1 锚表:cap 5/每级增量 +1/基础价 20×150%^n(20/30/45/67/101)/解锁价 200/甲型基础 AC 10-12-9/初始持有 sword+light/并联双通道前置 spear·staff←sword、heavy·ward←light
- schema validate 22 类正反(行 id 唯一/类型轴分族枚举/恰六行/初始持有恰一武器一甲/默认轴=初始路线类型轴/前置类型相符…)
- ConfigDB:TABLE_MANIFEST 登 forge+类型化持用+forge_route/forge_routes/forge_default_*/forge_weapon_route_by_type/forge_armor_route_by_type 访问器
- 新单测 forge_table_test 41 断言(V1 生产面+22 类负向/V11 行字段闭集+效果类型词表 31 钉现/V2 价格梯);run_all 22→23 套
- 事实订正(L2):卡片 F11「效果类型闭集 24」系 2026-10-07 旧快照——现行 31(iter20 +7/iter22 +1),本批零扩签钉 31
- 轻闸:冒烟 898/0 零扰动
2026-10-12 23:23:16 +08:00
DKChan f22b2036a0 迭代22裁决落文批: A单十五条裁决收口+B单七条反哺全落文+⑤改自动兑付代码批——追认单(①②③⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮追认/④追认+积点账裁战斗级/⑤推翻改自动兑付)收口; ⑤代码=满charge_n=8自动当轮grant_ap无玩家入口(_on_cell_revealed揭示缓冲点兑付=cell_revealed批先于本格扣费故AP归零恰逢满点先兑再扣轮不结束/授予段积点段迁除/use_attune_convert受理口消解/attune_convert_state改造进度读数口+item_id键/use_treasure的ap_charge_safe死分支与_usable_now死条件删/tres试炼镐desc换代+counter_spend受理闸删)——HUD兑换钮整链退役(ap_bar convert信号+钮/board_zone转发/main接线与_sync_convert_button/_on_convert_pressed)+C区秘宝槽悬停浮窗进度(controller投影note字段/hero_info_panel tooltip拼接/main _refresh_presentations加refresh_slots重查); 单测④段重写自动兑付断言(7格零兑付/第8格AP+1/读数口/未装配反例); B落文=秘宝.md v3.0(目录三表实态三列+试炼镐自动兑付换代+代价轴转化获取行含战斗级重置与兑付时序+解锁条件实录钥石10/25四条件件三计数键+实装批落地前句全换代+退役指针补代码旧行已删)/元进度.md v1.17/camp.md v1.3(柜台呈现细则节+暂停层12行)/存档序列化.md v1.6(vision_used域+断点随件+bonus_aux_carry退役+v6扩列不升版)/行动经济.md v0.12(finish_round_stop转存率参数化)+术语表v1.2(自动兑付/真视使用计数两词条)+07㉑观测点随⑤换代; 报告修正=⑮提交号勘正(master实际T5=73db171,原记7095505系amend前被弃旧提交——merge-base实证)+十五条裁决标注+反哺七条已落文标注; 06收口=状态行换代+裁决小节。冒烟898/0+单测22套+probe_gate --click --full全绿(worktree拷.godot/字体与图标边车/art素材后) 2026-10-12 23:23:01 +08:00
DKChan 73db171cb4 T5(迭代22秘宝批): 存档面+死通道拆除——treasure_inventory保留注记(主动件骑库存承载在役:线香/天眼handle+断点aux_items快照+set_attune_charges差额注入全链保留); 替换子交互整体拆除(CURIO_KINDS除名后不可达死通道=装配不可变契约1实现面保证): adventure_runner六函数删(_pick_treasure_item/resolve_treasure_replace/_resolve_node_replace/_replace_in_transit/_draw_pending_treasure/resolve_curio_replace)+_bonus_treasure_carry跨关携带/_last_draw_treasure掷定链/_roll_from/_bonus_treasure_pool/bonus_aux_carry断点键; level_runner.grant_treasure_item/treasure_items.holding_records删; 呈现面=controller替换子态三函数+aux_detail卡片直显链/curio_pick_overlay replace状态机(信号+面板+open_replace)/main两接线/level_autoplay替换策略; smoke与ui_click_probe替换分支摘除+reward_overlay_test替换段摘除; 修正则贪吃误删=apply_node_curio普通兑付主体补回。冒烟895/0+run_all 22套+探针全绿〔秘宝批 V15/V16拆除路线/V13〕 2026-10-12 19:32:29 +08:00
DKChan b7a2eadd2c T4(迭代22秘宝批): 呈现换代——秘宝匣柜台购买钮(buy_requested信号链→presenter buy_treasure_unlock分支,禁用态=余额不足)+分档呈现(名后缀·档位/装配行档位标签/悬停desc)+装配段未解锁禁装; 呈现桥换代(旧提灯布尔桥set_fog_lantern/FOG_LANTERN_BONUS随行退役→set_fog_glow_bonus参数面,main._sync_treasure_glow消费attune_param_sum,off态写0复原契约保持); 巢穴预告toast(nest_preview_count读数口消费); 试炼镐HUD入口(ap_bar兑换钮+convert_pressed转发链+attune_convert_state读数口,未装配隐藏); ui_input_probe case⑮换代主语wide_scout_band+4; V13功能残留换代(breakpoint_resume/ smoke剔牌库/reward_overlay夹具换新件id)+过时注释清理; 修呈现组装断裂=BoardZoneView补convert_pressed转发(挂死根因=main直连不存在的板区信号致_build_ui中断)。冒烟895/0+run_all 22套+探针含click全绿〔秘宝批 V12/V13/V19〕 2026-10-12 19:11:11 +08:00
DKChan c813b2b042 T3(迭代22秘宝批): 效果引擎接入与常时参数面——board_installed事件发射(巢穴预告读数口nest_preview_count=装板报危险格数量,呈现归呈现桥); 天眼safe_dig=fx_reveal通道复用(C5全额兑付免AP连锁资源同链,危险格仅真视,旗格跳过); reveal_tiles入真视叠加层(mine_reveal同通道); 试炼镐use_attune_convert积点受理口(charges=0零骑库存,counter_spend受理闸+grant_ap,积点计数通用化=装配集ap_charge_safe行扫描替dig_charge硬编码); 充能重置周期_reseed_attune_charges(battle每战/level每关首战battle_index==1,骑库存差额补注); 常时参数面注入(远程镐dig_range_bonus切比雪夫≤1+1/信标网络flag_range_free旗可达豁免——_within_dig_range拆谓词,mine_total只读口); 储备罐finish_round_stop转存率入参(125%=1.25:1整除floor); 刷新练习refresh_stock_grant开局一次性加仓; 刷新执照shop_refresh_free_left装配叠加; 真视使用计数链(vision_counter共享dict→受理+1→summary→settle聚合入档+断点随件); validate_use扩cell档与新空间kind; 修现役潜伏缺陷=use_treasure板维度读Rules不存在的width(旧目录期零直呼掩盖); 新单测treasure_effects_test 22套(V7附属表12件逐件正常/边界/反例+计数链)。冒烟895/0+run_all 22套+探针全绿〔秘宝批 V7/V8/V10/V13〕 2026-10-12 17:01:12 +08:00
DKChan a7bd4e4132 T2(迭代22秘宝批): 核心层解锁服务换代+槽位档位约束——工坊渠道面退役(_workshop_progress/workshop_status/refresh_workshop_unlocks/meta_workshop_items/WORKSHOP_ITEM_IDS/workshop_items行族全删)换解锁混合制(buy_treasure_unlock钥石购买=余额闸+重复购拒+条件件误购拒/refresh_treasure_unlocks条件刷新=AND谓词+幂等/treasure_shop_status柜台投影); 计数读数单点_treasure_unlock_progress(adventure_cleared/boss_kill_count/vision_used); save_manager新增vision_used生涯计数域(add_vision_used收束入账+缺键补零不升版本); toggle_attunement三重校验(未解锁拒+满位禁选+件档rank≤装入位序档位格——卸下恒可效果面只读装配集); pause/camp两视图秘宝匣呈现换代+UiKit计数键与档位标签单点; smoke工坊段换V3/V4/V5断言(独立档[11]防路径污染)+meta表段行族规模换代3/3/2。冒烟895/0+单元21套+探针全绿〔秘宝批 V3/V4/V5/V14/V19数据源〕 2026-10-12 15:52:04 +08:00
DKChan 48b0696158 T1(迭代22秘宝批): 新目录12行全量换代+schema扩签——treasure_items.tres 旧12行删除新12行落表(晨操令/阔视野带/试炼镐/刷新练习/储备罐/巢穴预告/线香/双管装填/远程镐/刷新执照/天眼/信标网络; 三档7/3/2; 契约8逐件解锁分配=钥石8+条件4); schema扩 tier/charge_reset/unlock_keystone_cost 三键+TIERS/CHARGE_RESETS 词表+TARGETS扩cell+参数面kind六型+REVEAL_KINDS护栏扩面+charges=0积点制合法态+解锁互斥校验+UNLOCK_COUNTER_KEYS换代(adventure_cleared对齐C6通关口径/vision_used新增); 引擎EVENTS+board_installed/ACTIVE_KINDS+safe_dig/EFFECT_KINDS+mine_count_preview; V13旧断言摘除换代(fog_lantern_wiring_test全文件退役+run_all注册摘除/violation护栏主语换sky_eye/feat_vouchers电池主语换incense_stick/smoke提灯段换V1V2新目录断言段+装配充能刷新段换主语)。冒烟887/0+单元21套+探针全绿〔秘宝批 V1/V2/V12/V13/V14部分〕 2026-10-12 15:21:22 +08:00
DKChan 96fc61c701 feat(tree): 迭代21天赋树实装批 T1-T6 主体——12节点换代+六键接线+营地四柜台(2026-10-12 U0)
T1 schema 换代:MetaTreeTable FORK_GROUPS 4→3(fg_mastery 退役)/RULE_KEYS 2→6(sense/economy 四键扩签)/
  fork 单行双态(effects_a/b+name_a/b、每组恰一校验)/row 字段退役(行门槛主语=节点等级 level_gate)/
  requires 只留点亮前置(R1 裁撤案执行);meta_tree.tres 33→12 行重排(脊柱2/锻造2含彩蛋/钥石2/同调6,
  att_socket1 改根节点无前置,easter_ley 摘 atk/armor_class 分量=契约9)
T2 购买与彩蛋面:tree_can_buy easter 拒购+行门槛换轴;tree_buy_fork=解锁默认A;tree_toggle_fork 零币切态;
  tree_rule_keys 按激活态 effects_a/b 投影;_check_easter_egg 特化判定(两线拉满+socket全解锁);营地树行板双态钮
T3 六键接线:EVENTS+flag_missed/FACTS+battle_index(L2 扩签两处);rebuild 六键合成订阅
  (posture 窗=battle_index&&round_index 双闸/sense 两组=counter 闸+记账双行 domain:adventure 限次2次 provisional);
  level_runner battle_index 注入(visited battle 型计数);_judge_flag 去重闸后 flag_missed 发射(契约12);
  聚=_roll_gp_drop 入账前×1.5 provisional(escrow 不乘);散=_spend_discounted ×80%(current_price/pool_price
  双计价点,刷新价不折=§11②定义边界);_start_current_level 限次按关清零(_reset_tree_limited_counters 可测口)
T4 注入换代:hero_override=树淬炼flat+FORGE_ROUTE_BONUS预留0(命中不注入=契约6);Attunement.slots 判定源切
  树点亮数(谓词表退役);tree_buy(ks_refresh) 同账路由 buy_attune_refresh(V15 双入口)
T5 旧档废弃与删除:save_manager tree_struct=2 结构版本标记+_normalize 白名单重建+树域废弃重置(禁迁移折算);
  migrate_tree/buy_forge/forge_flat/forge_level/forge_price/meta_forge_row/forge_products 行族/
  attunement_growth 表+访问器/生涯页三投影/career forge_total 全删;treasure_item_table UNLOCK_COUNTER_KEYS 内联;
  verifier_batch 花费策略换代树节点;MC slots 画像常量3
T6 营地统一:四柜台并排横滚(树淬炼主界面/锻造工坊钥匙门+零交互占位面板/秘宝匣钥匙门+内容迁入/图鉴常开);
  暂停层锻造段连带删;camp data forge 投影删
存量红修复:_flush_pending_reveals 三处空 source_class 补 fx_reveal+类级豁免(a57489e9 落地件,冒烟51行)
测试随批:smoke 树段全重写(V1/V2/V3/V8/V9/V16)+_smoke_tree_rules V10 行为段(窗/限次/守侧五场景编排rig/聚散
  同种子对拍)+单元 tree_rules_v11_test(六键合成行闭集校验)+run_all 22 套;ui_probe/ui_click_probe 换代树点击路径
轻闸全绿:冒烟886/0+run_all 22套+probe --click 全绿
2026-10-12 07:54:38 +08:00
DKChan 710d8e038d refactor(t9): 迭代20 V13 静态核查收口——四处旧件名 source_class 中性名换代(fx_overflow/fx_apply_status/fx_blast_counter/fx_streak_segments;泛用通道保留+旧件名随退役件摘除,对照注释留痕) 2026-10-12 00:44:51 +08:00
DKChan 3333187351 feat(close): 迭代20 T5+T8+T9+T10 C段收尾(专长实装批)
T5 Boss 兑付面换代:通关渠道三选一改按档配比加权抽取(无放回加权抽 boss_feat_weight
100/45/15/5 provisional 归调参批——奇物.md v3.1 rarity 语义约束兑付面);信号注释换代
「提升三选一」→「专长三选一」(V11 正名);V12 频带断言(300 停点档位频率出带±15pp)。

T8 MC 对账适配:formed 画像 14 旧件→五事件族 14 新件(开格 4/插旗 3/踩雷 4/节奏 2/战斗 1);
新基线取证:normal/off 100 局 71000 档 通关 0%(master 对照同为 0%=零配基线本相),
止步分布 90/10→93/7 可归因曝光槽候选构成;同种子重放 30 局逐位复现 ✓(V15)。

T9 迁出收尾:treasure_items 删 venom_edge/flag_burst 两行(同调目录收窄);schema 词面
venom_rider/flag_burst 摘除(EFFECT_KINDS/MAGNITUDE_KINDS);rewrite_board 效果类型除名
(净化工兵退役——V14 连带清理闭环);V13 断言入 smoke。

T10 空配置验收闸:三选一池空 skip_empty_curio 消化+非空拒绝反例+商店空货架合法态断言。

测试:pool_case_d 17 checks(+V12/T10)/feat_vouchers 23 checks(+V16 断点往返);
冒烟 864/0+run_all 21 套全绿。
2026-10-12 00:28:22 +08:00
DKChan 1387aedc94 feat(vouchers): 迭代20 T4 凭证件五件实装+F-1 刷新写错账修复(专长实装批 B段二)
五件路由(_apply_curio_pick 通道面):刷新券→刷新存量账 _refresh_stock(**F-1 修复**:
退役 _attune_refresh_x 写口——X 每停点重置吞存量=写错账缺陷正主;消耗序 X→Y→存量,
attune_refresh_left 扩第三源;旧早退路径零摘牌缺陷同批修正=选中即消尽)/储备金袋→
_pending_rap 战首 RAP 注入(action_economy.grant_reserve_ap 新口)/同调电池→
_battery_pending+choose_battery_target 玩家点选跨层写 attune_charges(禁自动替选——
装配集/主动充能件双校验拒绝)/时沙→_time_sand_queue 战首首轮 AP 队列(池增量不改上限,
hero_ap_bonus 同通道)/完美保险→_pending_insurance 战首豁免次数(flag_miss 首见判定
_perfect_hit_false 回退=完美谓词无痕,节点级未用即过期)。

注入链:runner set_voucher_grants 三账→enc voucher_*→编排器消费,节点级一次性注入即清零。
配额投放:凭证四件入稀有档(rap 2/battery 1/时沙 2/保险 1)→结构锚 rare 9/总量 104
(已裁换代授权内 provisional——偏离 GDD 占位记录随代拍板追认单)。
断点扩列(T7 前置):refresh_stock/battery_pending 随档+resume 回填(旧档缺键缺省 0)。

测试:feat_vouchers_test 新套 20 checks(V9 逐件路由+F-1 反例钉面/V10 留任路由+AP 属性轴)
入 run_all 21 套全绿;冒烟 863/0;smoke 牌库数 98→104 系换代。
2026-10-12 00:08:00 +08:00
DKChan 54ab330beb feat(feats): 迭代20 T3 专长 27+2 件换代(专长实装批 B段一)
feats.tres 整表换代:旧 27 件删除(素材库表二退役面),重设计 29 行重建(基础 27+迁入
淬毒刃纹/封印爆裂——卡文 §10.4 推荐案件数口径);订阅行 on/when/do=效果引擎封闭词表;
rarity 四级直映射令牌档(普通 12/优秀 9/稀有 8/传说 0);cap 已拿上限字段(案②解耦);
desc 禁「雷/插旗」字面(契约 6——封印/陷阱风味系);dispatch 预评估口径「每第 N 次」按
N-1 落值(mod_eq ref/eq 阈值-1——effect_words_t1_test 钉住)。

feat_table schema 换代:RARITIES 四级;ROW_KEYS 摘 archetype 增 cap;流派扫雷铁律校验
随流派框架退役摘除(奇物.md v1「不设流派标签、不设档位机制」)。

battle_orchestrator:FeatsEngine 档位求值与 rider_tier 注入摘除(V14 旧实现删除覆盖——
散件单体效果=唯一形态);FACTS 补 pct(处刑台血量阈值沿)。

smoke 特性段整段换代:牌库构成 29 件四级断言(V2)/契约静态钉扎(V18 牌库 kind 全集/
V19 零棋盘改写订阅/V21 禁字初筛/V22 结构锚形态机检半)/临时表新 schema 注入/门票与
relic 兑付断点主语换代/V3 附表 A 逐件三列断言 29 件(命中面 dispatch 直测+counter 落账
施加面同构 helper);同调测试两处主语 venom_edge/flag_burst→nest_counter/dawn_order
(V14 换桩——T9 迁出 treasure_items 前置)。冒烟 863/0+run_all 20 套全绿。
2026-10-11 23:58:48 +08:00
DKChan 0640b0c06d feat(pool): 迭代20 T2 池结构案D 换代(专长实装批 A段二)
四级档位:TIERS common/excellent/rare/legendary(跨层框架档名映射承袭)——TIER_QUOTAS
70/25/3/0=98 直映射零偏离已裁结构锚(传说=头奖位留空);配额/件值字段物理改名
(旧 rare→excellent、旧 rarest→rare)+凭证四 kind 占位(rap/attune_battery/time_sand/
perfect_insurance,配额暂 0=T4 落路由同批投放)。

概率与上限解耦(案②令牌池+提前退役):curio_cap_* 每 kind 独立字段(99=无上限占位,
实数归调参批)+专长 cap 行字段面;taken 身份维计数(relic:<feat_id>)拿了才计刷出不计;
cap 满在候选视图剔除(牌库本体不动=概率位独立存活);断点 bonus_taken 身份维键随档还原。

曝光槽:三选一=2 格全池+1 格优秀档以上子池(子池独立洗牌同 stream 续消费;子池空回退
全池;池空直通同族兜底);凭证(feat_ticket)不进抽签池只经保底注入;商店货架同 cap 过滤。

潜伏缺陷修正:效果引擎 has 算子 null 安全(敌技伤害载荷无 terrain_kind 事实回落 null 时
判「不在场」而非 String(null) 抛错——候选流变化后 devour 件首次被持有而暴露)。

测试:pool_case_d_test 新套(V6 令牌三态/V7 曝光槽回退/V8 解耦提前退役)入 run_all 20 套;
smoke 三档锚/数值对/池构成/上限带四处断言换代(V14),冒烟 848/0+probe_gate --click 全绿。
2026-10-11 23:18:35 +08:00
DKChan a57489e970 feat(fx): 迭代20 T1 效果引擎词表扩签+发射点施加面(专长实装批 A段一)
词表:EVENTS 16→18(+dig_stop/battle_won)、FACTS 9→17(8 新事实含 hp_ratio 生命比例前置兑付)、
EFFECT_KINDS +7 新类型(heal/ac_bonus/damage_reduce/bonus_delta/blast_scaled/preview_area/
target_attack_bonus)、OPS +mod_eq;DO_KEYS +4 键(value_event/value_counter/domain/axis)。
rewrite_board 暂留至 T3 删行同批除名(purge_sapper 仍在表),消费分支已摘除。

施加面:battle_orchestrator(dig_reveal 三事实/mine_hit 五新施加/terrain 减伤前置/flag_hit 四新/
round_end GP+AP 队列/battle_won 发射/bonus_delta 战末汇入/ac_bonus 累积器/揭示队列_.flush_pending_reveals)
+damage_controller(attack value_counter rider/敌技 damage_reduce/hp_ratio fact/kill 揭示回调)
+action_economy(dig_paid 返还/dig_stop 发射/上轮耗尽旗标)+minesweeper fx_reveal 效果通道
(只揭真格信息红线)+rng fx_reveal 分签。

T6 承载:EffectEngine adventure 域计数器(domain 键/counters_export/counters_seed)+
AdventureRunner.adventure_counters 共享引用(attune_charges 先例)+断点随档。

测试:effect_words_t1_test 新套(V1:新词在册/出域四路被拒/seed-export 往返/mod_eq 预评估口径)
入 run_all 19 套全绿;冒烟 846/0 持平基线零破坏。
2026-10-11 22:42:51 +08:00
DKChan 03c4b4c933 docs: 文档正确性审查批+去毒+命名统一+天赋树成文等十一批落籍(2026-10-09 用户令)
一、里程碑语义立规:M3=Alpha 完整实现/M4=Beta 完整实现,未明令关闭 M3 前只排 M3 需求(roadmap M-4 节头立规注+M-3 节头口径指针+迭代 21+ 行注+06 倍率差条注);迭代 20/21/22 规划冻结(roadmap 迭代 20 行注——先解决眼前问题,重启=用户直接发令)
二、文档正确性审查批三波:全 GDD 29 份过审——状态记录按代码证据订正/里程碑删前缀(M-x+迭代N→迭代N,裸 M-4→Beta 阶段(未排期))/退役词退役件当现役清零/在役旧实现节加隔离横幅;重件=秘宝.md v1.7 老正文深层清算(横幅重写消「过渡形态已退役」误读/沿革节换代/六件旧件登记摘除/验收与 charges 矛盾订正)+奇物 v3.8+冒险结构 v0.18+关卡节点地图 v1.7+图生成 v0.7+难度曲线与Boss v0.26+战斗结算 v0.27+敌人系统 v0.16+地图战斗资源 v0.21+增益状态 v0.13+战斗表现 v0.6+元进度 v1.9+生涯 v0.3+00 v1.3+02 v1.16+03 v1.1+ux 八份(battle 23 处/camp/shop/node-reward/level-clear/interaction-patterns/settlement-summary/level-map)
三、去毒批:奇物 v3.7(魔法道具→秘宝/档名三档→四级/门票与刷新「尚未入表」假话订正/验收第 3 条改令牌口径/资源成员指路凭证件表)+秘宝 v1.6(速览旧目录退役标注/退役件示例换现役)
四、道具退役素材库新建(design/research/道具退役素材库.md,案乙已追认):秘宝退役 9 件含去向+专长退役 27 件名单+待核 4 行;魔法提灯(fog_lantern)裁退役(06 条目已裁+秘宝.md 注记换代+素材库迁表一;拆线归实装批)
五、B2/B3/B4 裁决落文:元进度.md 道具工坊行删旧写新(v1.10——旧六行登记作废、指路秘宝新目录+解锁门槛谓词分级);奇物.md P1「两项合成高阶项」注销(v3.9——用户定性脏信息);§3 刷新句按最新口径换代(刷新券替代、不进持有集)
六、天赋树独立成文(B1 裁决):新建 design/gdd/systems/跨局循环/天赋树.md v0.1(33 节点机制全按 meta_tree.tres 实态+迭代 12 落籍裁决+被删底稿 git 取证——脊柱行门槛/钥石单币/Fork A/B 面/存档 v5 域/注入双通道)+元进度.md 定名节换代(v1.11)+02-系统清单跨局循环区加行(v1.17)
七、A 类卫生包:版本历史表理排四份(秘宝/奇物含 v2.7 断裂行修复/敌人系统/图生成,只调行序)+缺号注记三处(增益状态 v0.6 未考/冒险结构 v0.15/关卡节点地图 v1.6=MC-1 批)+node-reward v2.2 双号改 a/b+07 补建版本历史表+06 删「设置与本地化」空节+「文档/结构闸存量欠账」块挪文末「文档与结构」节+「L1 商店编排」两悬空指针改指 GP 换算失衡条+难度曲线两处过期指向核销注记(v0.27)+B5「现役 UI/文案两处自相冲突」登记 06 待办(battle_narrator.gd:160 旧话/hero_info_panel 两段同标「特性」——随后续迭代修)
八、命名统一(用户令「任务书」全库改「需求卡片」):167 文件约 800 处(design/ 全部文档+roadmap+CLAUDE.md+active.md+entities.yaml+game/ 注释与数据批注);两文件改名(需求卡片-M4数值批/需求卡片-冒险前资源配比预设批);残留=自造短语全量清单(黑话证据文档故意跳过)
九、CLAUDE.md:批次工作流标准清单收口段新增第 12 条「文档同步闸」(需求卡片必列关联文档同步面、合并前同步完毕方算收口,原 12/13 顺延);呈报六问铁规适用范围补立(前序批随批落籍)
十、active.md 快照节+工作日志 414-421(并行会话 416 黑话清扫条目按共享工作日志惯例一并入库);06 中并行会话「active.md 定性与裁剪」条目未提交,按零吞并纪律留在工作区未入库

零测试(文档批两入口铁规);主区前序脏件(.gitignore/.zcode/config.json/playnote/project.godot/.zcodeignore/美术审计报告 html 等)未带
2026-10-09 19:12:46 +08:00
DKChan 442cd511a0 修复: design/结构批——diagrams 迁入 dev/architecture(案甲,熵增闸红灯清零)+旧档 GDD 引用全量摘除(31处/29文档+code/schema头注13文件+registry 5行)+doc双工具摘design/ux死路径(工作日志 412) 2026-10-09 03:29:09 +08:00
DKChan fd6c208b2e 修复: 卡④T2——提灯视野呈现桥接线(生产路径贯通=完成度 0→1):①battle_orchestrator.gd 装配集公共只读访问器 attune_has(item_id)(_attune_has 契约化出口,save v6 只读访问器先例;private 面零改动)②main.gd 呈现桥 _sync_fog_lantern——settlement.attune_has(fog_lantern) 真值显式写给 board_view.set_fog_lantern(写入即 refresh 全板重算);挂点=_on_round_started ri==1 每战首轮装配链显式重算含否〔🔴 契约 7 Q8.1 复原语义=禁战斗结束隐式复原;时序依据:round_started 首轮发射位在 begin_battle 尾 attunement 注入后——board_changed 在 _install_new_board 内先发装配集后注入,同帧直挂 _on_board_changed 会读到上一战旧集,故不挂〕;未装配=false 写 0=缺省零扰动基线逐位不变;冒烟 840/0 回归零破 2026-10-08 17:01:49 +08:00
DKChan 768e3665df 修复: 尾裁微批b——卡⓪resume tree_rules受理闭环(2026-10-08 用户裁甲:resume_adventure 参数面按 start_adventure :135 同式补收 tree_rules〔类型防御同款 is Array 三元〕,消费面 :938 set_tree_rules 下传现成零改;main.gd build_adventure_params「tree_rules 暂不消费」在册披露句同步退役改写;冒烟断言段追加续玩受理两查——resume_adventure 受理三键参数面+runner._tree_rules 与传入一致〔v2 旧断点夹具同式最小断点〕)——冒烟 840→842/0、run_all 17套全绿、probe_gate --click 全绿 2026-10-08 16:36:07 +08:00
DKChan 8a654ccece 修复: 卡⓪④——删 adventure_runner.gd start_adventure 三行重复赋值(逐字重复+中间零语句+_seed_attune_charges 纯重置幂等=零行为变化,证据与四件对照见出口报告);入口报告随批落籍 2026-10-08 05:07:12 +08:00
DKChan d7a640650f 修复: 天赋树货币甲案——树全钥石单币落定(2026-10-07 用户裁甲)
- meta_tree.tres: 脊柱 16 行 currency gp→keystone(价格 10/20/30/40 不动,provisional 归 M4);
  表尾 T8 注释改钥石口径+裁甲销账行注
- meta_progression.gd tree_buy: 删 currency 分叉直走 spend_keystone(前后同消费口=零行为变更;
  free 行 price=0 零额消费无副作用),T8 双币骨架披露注释销账
- meta_tree_table.gd: CURRENCIES 枚举 {gp,keystone,free}→{keystone,free}(currency 字段保留为呈现
  元数据),头注补单币口径
- camp_overlay_view.gd: 树购买钮文案「购买 N」→「购买 N 钥石」(行板紧凑钮豁免)
- smoke_all.gd: 4670/4677 断言消息文字随批换代(逻辑零改)
- meta.tres: 表尾陈旧注释订正(「GP 商店同族…base 10」→同族指数值档位非货币+base_price 现值 20
  系 2026-09-22 对齿批投值)

闸: 基线 834/0;改后 smoke 834/0+probe_gate --click 全绿+ui_layout/ui_tune 过;
run_all 17 套件全绿;MC 零跑(静态论证:改动前后同走 spend_keystone,currency 无残余消费方)
2026-10-07 22:39:30 +08:00
DKChan 669c1c7d01 ④T1: 存档 v6 生涯终身计数域——SAVE_FORMAT_VERSION 5→6(版本史注释随批换代)+meta 两新域 adventure_total〔总局数,开局即计含放弃与失败〕/adventure_cleared〔通关局数,三关全通才计 1——判定字段 summary.cleared 现成直用〕+迁移函数 _migrate_v5_v6(沿现役迁移链 _init 自注册;旧档缺键 _normalize 按默认补零、只增不改=幂等,v3→v4 先例)+只读访问器 adventure_total()/adventure_cleared()+写入单口=apply_adventure_summary 收束口头部自增(三结局同经本口恰计一次,禁第二写入点——契约 2;迁移链陈旧注释 v1→v3/v1→v6 顺手校正)+域清单 owner 注记(生涯.md)+registry save_file 条目 v4→v6 换代(v5 批漏账补齐)+冒烟随批:硬断言「写盘 version==5」两处改 6(迁移链段+v1 旧档段)+①往返段收束自增恰一/往返相等两断言+②新档段缺省全零断言+⑬新增段(v5 旧档升 v6 缺省补零且既有余额原样/升档幂等写盘再载零漂移/通关局 cleared+1 夹具)——冒烟 821/0(基线 814+7) 2026-10-07 08:35:47 +08:00
DKChan bc73fa3212 T3组C·生成与编排换代(敌人表行集多行批——P1甲/Q8落码): unit_container.gd spawn行集受理(逐行按各自数量实例化+生成序=文件行序+handle_id连续派发;unit_count_override/enemy_atk_override改逐行数组[下标=行序,短数组缺省-1=该行行值路径,空数组=全行定值旧调用点零适配];行集实例总数≤EnemyTable.ROWSET_INSTANCE_MAX守卫fail-fast[骰后值唯一正确落点];难度修饰对行集全部行同乘F9)+enemy_table.gd补ROWSET_INSTANCE_MAX=4常量(与数量域同位单点收口);battle_orchestrator.gd遭遇骰逐行骰换代(Q8用户裁:每行各掷自己的区间骰,先逐行数量骰再逐行atk骰,单行行集判定/开流/消费序/消费次数逐位一致=零内容期随机流零变化;atk区间逐行同构属每行一骰预批准语义内·代拍板留痕);battle_narrator取首行口径T2已落(T2注释已登记P4乙知情代价);轻闸=冒烟805/0三闸全过+probe_gate含click全绿(残留Godot=0)——零内容期断言逐位零漂移保持 2026-10-07 02:14:44 +08:00
DKChan 8690230573 T2组B·schema与解析换代(敌人表行集多行批——P1甲/P2甲落码): enemy_table.gd 恰一敌种校验退役改行集构成纪律②行序相邻校验(同坐标行不相邻即rowset_rule报错,类别沿用定位面不变;同敌种第二行仍dup_key拦)+UNIT_COUNT_MAX语义注释改单种数(单行域[1,3]不变,行集总数≤4归spawn守卫·骰后值加载期不可判)+floor版resolve_rowset退役(双算法销号,工作日志312);config_db_resolver.gd resolve_enemy_rowset改返回行集数组Array[Dictionary](ceil命中坐标全部行,文件序=契约序,空集=空数组;_resolve_progress加return_all参数board_gen单行通道不动);config_db.gd门面签名同步;全仓消费点机械适配取首行(T2行为零变化:spawn/orchestrator/narrator/smoke七处/config_db_test/skill_rhythm_probe/damage_probe两处;floor四调用点迁ceil坐标全精确命中零行为差);轻闸=冒烟805/0三闸全过+run_all 17套全绿——零内容期断言逐位零漂移 2026-10-07 02:05:30 +08:00
DKChan a33ddaf542 秘宝六件迁移+掘进蓄能受理闸数据化+令牌兑付 match 收敛进效果类型(T4+T5——内容数据驱动扩展批)
T4 秘宝侧(六件按 id 硬编码全部拆除,行为与迁移前逐位一致):
- 淬毒刃纹:begin_battle attune_venom 注入+伤害控制器特判分支拆除——行 triggers clamp_check
  modify(mode:clamp_bonus) 双订阅(pierce_vs_ward / magic_vs_heavy eq 行=旧「pierce|magic × 矩阵>0」
  的精确集;mode 路由=主角攻击面专享,棋盘克制窗只消费无模式 delta——棋盘不吃毒面保持)。
- 偏运硬币:reward_economy.luck_bias 注入拆除——行 triggers reward_roll bias_rewards 订阅,
  发射点命中合计经 _biased_cell_rows 入参(合成序「图级先件级后」不变);冒烟偏斜段断言面随迁。
- 工兵晨令:编排器两处直调入队拆除——行 triggers round_start grant_ap(mode:queue) 订阅,
  when round_index ≤ effective_rounds(when value_from 行字段定影——新查询面,悬空校验同面补齐)。
- 惊巢反制:_grant_routed 按 id 减半特判拆除——mine_hit damage_mult(50) 订阅命中经 halve_pct
  入参(ceil(power×50%) 与旧 ceil(power/2) 逐位一致)+ open_ticket(channel:reflect) 订阅施加。
- 标中殉爆:flag_hit 按 id 开单特判拆除——行 triggers open_ticket(channel:blast, value_from
  magnitude) 订阅施加(施加位=迁移前开单位:殉爆→净化→图谱)。
- 掘进蓄能:use_treasure 按 id 受理闸特判拆除——treasure_used counter_spend 订阅施加(消耗成功
  才受理、积点不足拒绝零消耗,进度文案逐字保留);积点账本迁效果引擎计数器 dig_charge_bank
  (模判定留编排器侧:「每 N 格积 1 点」在发射点施加架构下无法行内表达先增后判——when 于
  dispatch 预评估,逐位等价优先;词汇表边界注记留档,遗留观察项随出口报告呈报)。
- pick_refresh:adventure_runner 按 id 特判拆除——effect_kinds bonus_refresh kind 分发查询
  (装配集行 magnitude 合计;刷新件类加件零 id 分支)。
- 主动件 kind 词族换代(reveal_tiles/preview/grant_ap/remove_mines/refresh_pick)挂账保留:
  本批只要求 pick_refresh 合流;全词族 rename 波及库存/呈现/单测零行为收益,不随批(出口报告
  遗留人闸项呈报)。
- curio_interact_controller 秘宝卡片文案表值化:kind 硬编码映射拆除,读行 desc——13 件 desc
  补齐(措辞按现行卡片文本逐字迁移;掘进蓄能/失义件补实际摘要=文案微调呈报级)。
- schema 适配:triggers 与 effect_kinds 互斥校验收窄至 passive 行(active_charged 双形合法=
  effect_kinds 主动分发+triggers 受理闸);trigger 行豁免「非 N 值 kind magnitude 应 0」与
  「非 ap_rounds_front 行 effective_rounds 应 0」两面(行字段=value_from 取数源)。

T5 令牌/树收尾:
- _apply_curio_pick match 收敛进效果类型:属性值提升四类(attack/max_hp/armor/ap)改
  adventure_table.CURIO_APPLY_ROUTES 声明路由(加算落点键,与效果引擎加法族同构)——加新加算类
  令牌=表行+配额/件值键零代码;gp/heal/refresh/relic 副作用通道面显式分支保留。
- meta_tree 规则键同面:先手压制/稳健拓荒两键已在 T3/T4 随 round_start/damage_taken 订阅行
  走效果引擎同面(rebuild 合成订阅+发射点施加),旧直调零残留。

验证:冒烟 800 项 0 失败(三闸过)· 单元 17 套全绿。

设计权威:design/research/研究-内容数据驱动扩展架构-2026-10-06.md(案乙)。
任务书:design/research/任务书-内容数据驱动扩展批-2026-10-06.md §六 T4/T5、§五映射表秘宝侧。
2026-10-06 23:54:58 +08:00
DKChan e28a6cb3c4 专长迁移完成:27 行 triggers 订阅形态全量生效+旧 23 挂点枚举消亡+消费点拆除+断言面随迁(T3——内容数据驱动扩展批)
接手前任中断的 T3 半成品(脏文件三件:battle_orchestrator/effects engine/feats.tres),方向核实无误后续做收口;
承接修正四处随本提交留痕:①perfect_defense 的 when 用了 fact 封闭 9 项外的 flags_hit_all(装载校验必红)——
改 flags_count gte 1 保守判定,全中闸=flag_settle 发射点施加面承载(载荷字段仅供观测);②has 算子语义与行
不匹配(数组包含对 String 恒假)——落非空在场判定(value 缺省)+数组包含(value 给定),查询面落法=代拍板
白名单;③前任漏写 _harmful_adjacent 助手(flag_hit 发射点调用必炸);④counter_add set 键语义 bool() 吞 0
(清零行 set:0 被当 false 走加零通道)——改 has(set) 置值模式,四处施加点同修。

本提交主干(专长族全量迁移——任务书 §六 T3):
- damage_controller:feat_flags 旗面整体退役,五事件施加面接线——attack_commit 命中随单据 context 携带
  (发射点=开单入口,任务书 §3.1 定稿位;主角攻击单恒段内首单,开单现场=结账现场),rider/改写/加值/
  段数/状态五族按迁移前算序施加(重锤两拍/专注/spike 恒全额/猎弱移档/魔网湛蓝猎手克制直调/整备每层
  +1/厚积满层倍乘/奥术+猎巢+执拗 rider 合计后档位暴击);armor_roll 免掷恒折扣、clamp_check 双面
  (hero+board_typed)delta 窗口、kill 溢出弹射(landed×value%)、damage_taken shield 加法族合计。
  _feat_clamp_bonus/13 处旗消费点拆除。
- battle_orchestrator:_combat_segment 换代(dig_streak/charge_layers 注伤害控制器运行态;连珠矢段数
  施加位紧随主角攻击单开立=迁移前开单位,flush 兑现序逐位一致);round_start 发射位前移至行动经济轮
  切换前(树规则 grant_ap queue 当轮入队当轮兑现——先手压制首轮语义锚);深挖快照滚动拆除(计数器
  reset_at 声明承载);熔火/连击旧计数变量退役。
- action_economy:feat_ap_carry/feat_dig_extra/deep_paid_count 旧注入旗拆除;dig_paid 施加面落地
  (counter_spend 对价:AP 富余付全价积计数、不足 fallback 只付基础 1——2026-10-04 降级口径逐位保留)。
- feat_table schema:HOOKS 23 挂点枚举/MINE_HOOKS/EFFECT_KEYS/hook+effects 双形态校验全删——triggers
  订阅形态唯一合法行形(行键白名单收口 feat_id/display_name/rarity/archetype/triggers/desc/note)。
- feats_engine:hooks_for 挂点投影退役(订阅装载序=feats 表序,由效果引擎 rebuild 承载)。
- battle_narrator:专长卡片文案表值化(summaries 硬编码映射拆除,读行 desc——27 件措辞逐字迁移)。
- smoke 断言面随迁(任务书 v1.1 补列项):构造表 5 行换代 triggers 形态;挂点投影断言换代订阅装载面;
  ④-⑧ 求值断言(_feat_flags_for 直呼+旗读数)全量改写为 rebuild+dispatch 命中面(27 件逐事件覆盖);
  深挖钻头付费开掘回归闸改 counter_spend 计数器面;特性卡 desc 直读断言新增。

映射表对拍注记(行为等价优先,.tres 尾注同步留痕):猎巢人/矿工的执拗映射表标 modify_ticket/attack_bonus,
现行为必中附加通道(hero_rider 后置于乘区与下限)——落 add_ticket_rider(per 取数载荷);整备军备现行为
双效果(轮末转蓄力+每层首段攻 +1)——两行订阅;深挖钻头 per-round 计数器对(paid/given)复刻旧 v2
跨轮不对称语义(given 不随轮重置)。

验证:冒烟 800 项 0 失败(三闸过)· 单元 17 套全绿 · S1 魔法流对拍预检=MC formed/off 两态与 T0 pre 锚
(83000 种子段)同种子逐位一致(2×5 局,三档只测不判)——14 件迁移行实战斗承载零分岔。

设计权威:design/research/研究-内容数据驱动扩展架构-2026-10-06.md(案乙)。
任务书:design/research/任务书-内容数据驱动扩展批-2026-10-06.md §六 T3、§五映射表、§七契约 2/4。
2026-10-06 23:20:05 +08:00
DKChan 225765f3f7 词汇表落码:feats/treasure 两表 trigger 订阅形态 schema 换代+护栏迁移(T2——内容数据驱动扩展批)
schema 校验换代,数据行迁移前共存过渡(旧 hook/effect_kinds 校验保留,行为零变——冒烟 783 项 0 失败):

FeatTable:
- 行字段换代目标 hook/effects → triggers:[{on,when,do}](订阅哪个事件/什么条件/什么效果)
- triggers 校验收口 EffectEngine.validate_trigger_row 静态方法(单一事实源——事件/效果/fact/算子
  四词表全引用 EffectEngine 闭集常量,禁本表复抄)
- 行键白名单扩 triggers/desc(文案表值化预留)
- 悬空引用校验:do.value_from/delta_from/mult_from/cap_from 引用的行字段不存在=加载致命
- 🔴 流派扫雷触发铁律新形态:每流派 ≥1 行订阅扫雷侧事件(MINE_EVENTS=dig_reveal/dig_paid/
  flag_hit/mine_hit/flag_settle/round_end/reward_roll)或旧形态 hook∈MINE_HOOKS——流派级聚合判定
- triggers 与 hook 禁并存(换代单形态);缺两者=行错误

TreasureItemTable:
- 行键白名单扩 triggers/desc;passive 行 triggers 与 effect_kinds 禁并存
- 主动件 kind 词族换代挂账:新词 reveal_tiles/preview/grant_ap/remove_mines/refresh_pick
  (效果引擎 ACTIVE_KINDS 同名闭集)入 EFFECT_KINDS 与旧词共存至 T4 迁移完成

EffectEngine 补 validate_trigger_row 静态校验面(schema 共用)。

fact 条件词汇 9 项封闭落码核对:迁移设计全部现状条件可装入 9 项(matchup/is_first_dig_of_battle/
terrain_kind/target_armor_class/flags_count/charge_layers/nest_count/round_index/counter)——
未触发闭集缺口停机点。
2026-10-06 21:44:01 +08:00
DKChan 7d157b3c4c 效果引擎框架落地:事件发布订阅解释器+16 发射点埋点(T1——内容数据驱动扩展批)
把「内容的效果行为」从结算代码硬编码分支搬进数据行的第一步:通用解释器 EffectEngine 落地。
本提交=框架与埋点,双轨过渡期——发射点仅观测命中、施加面仍走旧消费点,行为与迁移前逐位一致
(冒烟 783 项 0 失败实证、单元 17 套全绿)。

新增 game/core/effect_engine.gd:
- 事件词汇 16 个(任务书 §3.1 定稿)+扫雷侧事件集(流派扫雷触发铁律新形态)
- 效果类型词汇 24 型(任务书 §3.3 定稿 19 行;标题计 23 系笔误按行内容全收,代拍板留痕)
- fact 条件词汇 9 项+when 算子词汇封闭(mod_zero/advantageous/gte_ref/lt_ref/ends_with
  系现状条件装进 9 项 fact 的查询面落法——代拍板白名单覆盖:掘进蓄能取模、淬毒克制正面、
  深挖配额计数器比较、对某甲族泛条件)
- 订阅装载 rebuild(每战 begin_battle 重建——中途获得下一战生效,同战内不热载;
  装载序=feats 表序→treasure 表序→树规则合成行,写死保种子复放)
- 计数器账本(counter_add/counter_spend/reset_at=round_start 重置点声明)
- 组合规则六族(加法/乘法/任意真/按序改写/按序消耗/即时执行——发射点施加面引用)

16 发射点埋点(订阅空=零循环零扰动):
- 战斗编排器:dig_reveal/mine_hit/flag_hit/flag_settle/round_end/enemy_hp_threshold/
  treasure_used/damage_taken(kind=terrain)/round_start×2
- 伤害控制器:attack_commit(hero_attack 单算术前)/clamp_check×2(主角攻击+棋盘克制面)/
  armor_roll/kill/damage_taken(kind=enemy_skill)
- 行动经济:dig_paid(对价闸前)/charge_full(转蓄力满层沿——R6 框架先行,现无订阅者)
- 地图战斗资源:reward_roll(摇号前权重合成层)

行为等价细节(本批预演、T3 落地):
- 停手转存改记账制:request_stop 记剩余 AP 后清零,转存决策移至 round_end 发射点
  finish_round_stop(grant_ap(mode:transfer) 订阅定夺;双轨期旧旗并行,缺省 RAP 转存不变)
- attack_commit 发射点=管线算术前(载荷含 matchup/dig_streak/nest_count——连珠矢/执拗/
  猎巢人/淬毒订阅事实源)

设计权威:design/research/研究-内容数据驱动扩展架构-2026-10-06.md(案乙)。
任务书:design/research/任务书-内容数据驱动扩展批-2026-10-06.md §六 T1。
2026-10-06 21:22:33 +08:00
DKChan ffb0e36bcd docs: 另账修正批——悬空指路句13处+architecture旧API三处+06登记MC重锚(用户令『文档修改现在就修正』)——①docs/proposal-*两提案悬空引用13处(敌人系统4/战斗结算2/增益状态1/registry2/README2/unit_container/enemy_table/skill_table/smoke_all注释4处)改指路句〔提案已吸收退役git a6833b6a——事实源=敌人系统.md〕,系7f24b640三层收敛搬迁+a6833b6a死亡清单批漏改的登记遗留(7f24b640提交信息『余7条全为搬前幽灵链』);②architecture.md活契约面三处旧API换代——:190调用序query_attack→apply_damage→advance改按摇定技能行兑现→apply_damage→commit_action+案C段内序、:152图示行stock/advance退役改伤害单据submit、:176 clear_inventory随库存轴下线退役改通关结算指路(:105/:222/:252系历史记录/已自带注记不动);③06-待办清单新登记『旧行为MC行为锚全数作废——重锚归数值批』(用户确认系影响数值难度重要变量;归属M-4);gdd_lint对基线零新增(8文件2存量) 2026-10-06 09:43:37 +08:00
DKChan 58dfb56272 fix(battle): 地图伤害账殿后批(案C 2026-10-06 用户裁——「主角先手攻击一次」歧义质询触发)——①结算顺序定死=①授予段兑非伤害账(资源/增益/治疗/行动点/GP/警觉,伤害形态单据暂存不兑)→③战斗段「主角先基础攻击→敌人按生成序逐个还手→地图伤害账殿后」→④衰减→⑤判定;②切片=battle_orchestrator 暂存闸 _defer_board_damage/_deferred_board+_submit 案C分流(sync同闸——清图批一致延后)+_outcome_of(暂存单按「将兑付」回报——完美第二份依据开单时点事实)+授予段四处直提改走闸+战斗段末补提交块(主角死于怪物→暂存单整体不兑逐单留「未生效(主角已倒下)」行 forfeit=hero_down);③文档=战斗结算 v0.26(五段表①③行/授予段节/兑付形态表/结账时机双模式/战斗段节/P0闭环/三分量遗留顺手清+三处普通分量改基础分量)+敌人系统(P0第4步战斗段限定+地图账+死亡来源改述)+地图战斗资源(流程图/负向恒即时节/五步清单)+01-核心循环(「怪物的先手」用词相撞改警觉)+README案C批节+registry两处案C注记+编排器头部注释;④测试=行相位分类器换代(damage恒战斗段/reward_ineffective按forfeit分流)+先手断言收紧(存在或授予段终局→必存在)+新增案C段内序断言(地图账不得先于先手或插入敌方还手中间)——冒烟783/0三闸过+run_all 17套全绿+probe_gate --click全绿+gdd_lint与基线一致;⑤旧行为MC锚全数作废(授予段伤害致死短路先手语义消失),重锚归数值批 2026-10-06 09:14:59 +08:00
DKChan 12807298eb feat: 三选一刷新对齐商店(2026-10-06 用户令)——免费双源 X/Y 用尽后 GP 付费档(同 shop_refresh_* 旋钮/同冒险钱包 spend_gp 单口/同 reward_pick 池重抽),付费刷计数每停点清零;CurioPickOverlay.set_refresh_display 与商店同构(钮常驻选择态/两源皆穷禁用/角标免费余量/价签行 GP 价);通关停点刷新重发带 refreshed 标直落选择面不再重开胜利总结;店内门票专长三选一维持无刷新;单测 curio_refresh_paid_test+覆盖层刷新面断言;落文=秘宝.md 双源节 GP 付费档+冒险结构 v0.16+06 商店刷新条目换代(机制已落码态) 2026-10-06 07:03:57 +08:00
DKChan 059b545068 fix-curio-skip: 三选一空池降级(用户令 2026-10-06)——候选 0 件跳过环节不再死面卡死
- core adventure_runner.skip_empty_curio():停点空候选消化出口——仅空候选放行,非空拒绝(零自动推进契约不破,正常消化仍只走 pick_curio/apply_node_curio 兑付)
- controller resume_if_pending():空候选不开选择面(空面无卡无钮=死面卡死成因)——消化停点后按上下文直落后续推进(level_clear=推进下一关/reward_node=回图选路/feat_ticket=关面回店,与 on_continue 分派同构)
- controller present_node_curio():奖励节点空池不开面不挂停点,兑付确认直落回图选路(auto-sim node_entered 内立即 continue_after_node 先例)
- controller on_presented() feat_ticket 分支末道防御(core _redeem_feat_ticket 空集守卫外)
- 候选 1-2 件少显路径既有零改动:_draw_curio_candidates 洗牌收集至池空为止(上限 curio_candidate_count=3),卡片渲染按候选数遍历——本就是「有多少显多少」
2026-10-06 04:37:22 +08:00
DKChan ccd95c8215 奇物批T6b+T7+缺陷修:refresh入池(用户裁B案——CURIO_KINDS扩第七类/heal_rare 5→3挤占refresh_rare=2/总量98锚不变/match表两行/兑付=_attune_refresh_x增量不进加算区+registry pool_architecture多级缓存总池-渠道子集语义+契约10按裁更新);T7 charge缺陷登记(3件<4档二不可达——白名单4只登记不硬补,registry charge_defect);autoplay门票拿到即开分支(缺分支=节点停点悬空选路卡死——MC timeout形态批内实测,n20复现1/2空终局修后与基线逐位一致);任务书T6b裁决回写(冒烟782/0) 2026-10-05 20:58:34 +08:00
DKChan 95b66f0d60 奇物批T5+T6a:专长门票入表(schema四字段provisional 20%/2/1/5+域校验+runner保底/限购/出现三计数+节点与商店双注入(替换末位占一席,同scope取数零漂移)+拿到即开三入口分支(节点本地重绘/店内临时停点payload.context)+断点扩列两键向后兼容+shop.tres门票行base5+SHELF_KINDS扩+校验豁免+A5/A6断言7条);T6a商店补回复heal行(默认原则:分类内成员都入该渠道池)+registry刷新边界写死(商店自身服务vs奇物授予重抽次数);终局池读数断言4→6键适配(冒烟782/0) 2026-10-05 20:03:20 +08:00
DKChan 6812ebbb73 奇物批T3+T4:relic_*→feat_*词族全换(feat_table.gd/feats.tres/feats_engine.gd三文件改名+.uid+feat_flags/feat_id/feat_row等全token+config_db注册键feats两端+entities.yaml换代注记——kind值relic/身份前缀relic:/relics存档键/摘要键按数据契约保留);T4渠道白名单过滤(_draw_curio_candidates(channel):通关渠道只出专长/节点渠道零专长——过滤式不拆池,TIER_QUOTAS锚零改动,devour货架保底随渠道定位退役,迁移保feat_id,pick_curio测试feat_id透传;冒烟773/0+run_all 16全绿+断点往返PASS) 2026-10-05 19:28:20 +08:00
DKChan 8e2694de49 奇物批T2:运行层bonus_*→curio_*全族换词(_curio_pending/deck/taken/result/candidates+pick_curio/apply_node_curio/curio_choice_presented/curio_resolved等+两文件改名curio_interact_controller/curio_pick_overlay含.uid+CurioPickOverlay/CurioInteractController类名);T2裁点甲案自裁=五存档键引号字面量禁改(全仓对拍六形态全等);_bonus_treasure_carry按T0澄清剔除(秘宝语义);非奇物bonus语义保全(加算区bonus/price_level_bonus/attack_bonus/bp_bonus等);reward_overlay_test红转绿适配(M7 bcard换PanelContainer致c is Button恒0——改数_choice_box子节点数断言语义不变,run_all 16套全绿历史首次) 2026-10-05 18:44:51 +08:00
DKChan d4cde73976 奇物批T1:feature_*→curio_*词族换名(CURIO_KINDS/curio_quota/curio_value/curio_candidate_count+adventure.tres键名+entities.yaml换代登记续写,值零变更实测;T0差异回写:93处/7文件+bonus_aux_carry语义澄清剔除改名面+基线772/0) 2026-10-05 18:30:44 +08:00
DKChan a9a2e25a0a merge master(d3fa887 技能池④+⑤提灯)入分支:07清单⑭双登冲突解(技能池⑭保留+秘宝目检改⑮);四文件auto-merge带旧词族零带入(全查仅存档键合法例外) 2026-10-05 15:47:33 +08:00
DKChan 97b8589a4c 技能池执行批T0-T6+⑤提灯(迭代14④+⑤):T0表盘点零漂移(19行池+9技能行+Boss三行对照报告§2);T1敌人系统.md v0.13五件(池构成表8敌种/护甲列读表口径/三代错峰/半血解锁弹出规格);T2 skills有效倍率表批注(D4整数基线半点矩阵)+enemy EV锚整数口径重登记+巨蜘蛛1.11消歧+registry enemy/skill换代;T3-T4机制件=unlock_hp_pct可选键(schema域校验缺省无=无门槛)+容器check_skill_unlocks单向闩(零随机)+rollable/special双面过滤(保底不逼锁定)+编排归因行「XX解锁了YY」(type=highlight高光键skill_unlock零行型新增)+row_pacer一次性技能名toast(排除perfect_sweep误触);T5三Boss解锁技落表(震地怒击×2.5/CD4·遏毒×2.0/CD3·岩崩×2.5/CD4案甲provisional+池尾weight2/unlock50)+断言基线换代3处(技能表12行/池模板/酋长EV锚重锚1.10-1.30实测1.1948);T6单测skill_unlock_test22断言(run_all注册15套)+smoke+5集成(半血→次轮解锁行恰一次/文本/行型零新增);⑤提灯+2接线=board_view.set_fog_lantern公共面+case⑮接线断言+HUD框架注记(载体道具归信息件批=接缝就绪态);T7读数后置挂07;闸=冒烟772/0+run_all15套+探针绿+doc三闸零新增;出口报告design/qa/m4iter14-skillpool-exit-report-2026-10-05.md 2026-10-05 09:26:25 +08:00
DKChan c7173889c0 merge master(85dc9af 收窄批)入分支:07清单⑬双登冲突解(收窄⑬保留+秘宝目检改⑭);smoke_all/roadmap auto-merge 2026-10-05 08:55:37 +08:00
DKChan cd73e62346 秘宝批T7组E-2:内部标识符全族换词(inventory/unlocked/replace/overlays/slot/settlement use_aux等60+token)+存档键零触碰专项核通过(37文件六键普查零差异,点号访问零存在)+行为探针四件全绿+任务书§1.2基线回填(755/0实测) 2026-10-05 08:46:51 +08:00