Commit Graph
279 Commits
Author SHA1 Message Date
DKChan 52296872e3 卡④T5补(迭代47): 四子界面内容回包PANEL_DATA米板身+HEADER_BAND死常量摘除——ui_contrast令牌核签随件(上笔T5漏add的三件) 2026-11-01 18:34:50 +08:00
DKChan 1243ffe632 卡④T5(迭代47·营地场景图批): 断言探针截图迁移批——F8全量位点逐点改指四子界面/场景根+大门两分支断言段落位+场景层序段+camp截图换场景图形态
- 全仓旧句柄引用清零(modals.camp.overlay/camp_overlay_view 残留=0): screen_flow(旗标+回退段改篝火动线)/ui_probe(余额徽+树钮改指tree/秘宝行treasure/场景点选路由)/ui_click(树链treasure+灰字按视图分扫treasure/codex锚订正去『柜台』+savesel三处场景根+大门两分支断言段V3落位:无断点两出口cancel确认/有断点三出口set_breakpoint注入次确认开局)/ui_struct(audit根场景图+源扫描改六件+场景层序段V1①子节点序与贴图矩形逐值+锻炉可达V2+顶栏位V8+根态反参照V9+生涯段改笔记本真实路由营地语境分支)/ui_contrast(令牌表核签:头带两行+铭牌副题+最近冒险四行随形态注销——CAMP_HEADER_BAND零消费随退/ROW_PLATE行仍消费保留;四子界面内容回包PANEL_DATA米板身)/shot_probe(camp截图=场景图形态V1载体+收闭改篝火动线)
- CampSceneView补_init visible=false(登记模态初始隐——boot态场景根盖菜单三红同源修复:V1a/V2/V3g career+screen_flow boot互斥)
- 旧形态断言注销(test-conventions §5.5+卡面削弱申报授权):已在T3同批(theme_projection两段);system_test V3g camp分支换代自适配(开=场景根/合=on_camp_closed关层收闭)
- 验证: system_test 69项0失败+六探针全绿(screen_flow六步/ui_probe/ui_struct含新增段/ui_contrast/ui_click问题=0全链含大门两分支与树购买持久/shot 问题=0)+camp截图实拍=场景图形态(门洞透路七物件就位)
2026-11-01 18:25:41 +08:00
DKChan 5a0e7069c1 卡④T4(迭代47·营地场景图批): 大门两分支+ConfirmDialog三钮化+三钮消费方编排+篝火二次确认动线——点大门永远先出确认/cancelled恒无变更退回营地
- ConfirmDialog三钮化(契约3/Q5甲): open_three增设次钮+secondary_confirmed信号——双钮调用方零改动(open隐藏次钮);钮序=[取消][次选项][确认]
- 大门两分支(裁决5): 有断点=三出口弹窗(继续上一段冒险/开始新冒险/取消,open_three)+无断点=是否开始新冒险(是/否);点大门永远先出确认不直接进冒险;cancelled恒=无变更退回营地
- 消费方编排扩展(卡③契约3机制零重构): _confirm_consumer新增gate/gate_new/campfire_leave三消费方+_on_confirm_secondary次确认分派——继续接现役续玩编排(_resume_from_menu同源)/开始接现役开局编排(_start_adventure同源)/冒险发起后营地场景屏隐藏(presenter.on_camp_closed关层收闭=营地与选档层同收+开始层恢复,T3已建);main_ui_build补secondary_confirmed接线
- 篝火动线: 二次确认(camp.md v2.2裁定走ConfirmDialog先例)→确认离场=on_camp_closed;命中只火堆已随T2布局表(560,640,160,80)
- _refresh_resume_button不复用(随卡②删——大门两分支直读has_breakpoint无钮可刷);终局落点不变量T0互证=现役终局continue回主菜单不改
- main.gd零新增成员(分派扩match臂+新方法,15/15保持)
- 验证: 全流程孤检绿(10项:篝火cancel/confirm/大门无断点cancel/confirm/次钮隐藏/三钮形态/次确认开局/主确认续玩no-op——临时件不入库,T5探针承载正式验收);S9/S10/S13归基线
2026-11-01 18:11:42 +08:00
DKChan 98470adc4d 卡④T3(迭代47·营地场景图批): 四柜台拆解四子界面独立可开+CampRefreshBus单口+CampOverlay退役——五句柄落子容器/场景点选改挂/生涯改挂笔记本/关层收闭
- 四view新件(自CampOverlay承载面迁移,界面逻辑复用零重设计契约4): forge_view(钥匙门+两区六路线行板)/treasure_view(12件行板+同调装配段+Y升级行+钥匙门)/tree_view(脉分组行板+Fork双态)/codex_view(占位挂起壳,锁文随形态订正『柜台』称谓L2)——各带返回钮发closed(关层归presenter);公共壳CampSubViewBase(实底dim+铭牌+钥石徽+返回钮)
- CampRefreshBus新件: 各写口尾→现开界面刷新+场景根HUD一闸(卡⑤HUD同口挂接;非autoload非信号广播——组合根单点推送);presenter八写口尾refresh_camp→bus.refresh(F9:七口+on_camp_buy双尾)
- 承载形态(§9-2拍板): 单一内页切换=场景根留底——模态栈open只隐上方登记层(modal_stack.gd:27实测),四子界面登记于场景根之上且实底遮挡,双开互斥靠遮挡天然成立;V2断言按留底派生(T5落)
- ui_registry: LAYER_CONTRACT camp_overlay槽→camp_scene(shell camp_screen)+forge/treasure/tree/codex_view四槽;node()改经modals.camp.X二层(卡⑥契约2);ui_camp_modals五枚成员(overlay枚随退役删除——卡⑥契约4)
- camp_screen: 持camp_scene取代CampOverlay成员;main_ui_build: 场景装配(布局表ConfigDB注入)+四view实例化+信号接线(意图→presenter/closed bind携视图/object_pressed→组合根路由)
- presenter承接面: 五目标改线(ctx.views束——成员预算12≤15)+open_camp_forge/treasure/tree/codex四开层口+on_camp_sub_closed+on_camp_closed关层收闭(营地层与选档层同收+开始层恢复);main_overlay_flow._on_camp_object_pressed五物件路由(gate/campfire归T4)+生涯营地语境关层分支(笔记本改挂——CareerOverlay本体零改);main.gd薄委托零新增成员
- 退役: camp_overlay_view.gd删除(吸收即死);旧形态断言同批摘除(test-conventions §5.5):theme_projection等高源码断言+最近冒险行投影段(卡面削弱申报授权:注销,条带Q4=甲撤下)
- 同批迁移: forge_workbench_test承载类camp_overlay_view→forge_view+_forge._X扁平化(断言零改12项绿);system_test三处机械随迁(V2实例化/:108同一性链/:121候选清单——camp_scene句柄更名)
- 验证: 冒烟boot PASS(15项0失败——装配全链通)+全流程孤检绿(12项:五句柄/铺层/点选路由四子界面/返回/生涯改挂/营地语境分支/关层收闭——临时件不入库);S9/S10/S13归基线(codex头注日期清偿/_build_shell超局部变量按顶栏底栏拆)
2026-11-01 18:06:45 +08:00
DKChan 4b5e3f27e8 卡④T2(迭代47·营地场景图批): CampSceneView场景视图+camp_scene_layout.tres布局表+V14单测——场景视图/布局坐标/V14三面落地
- schema两件: CampSceneLayerSpec(层键+贴图矩形+命中矩形+命中键)+CampSceneLayoutTable(canvas/hud_band_h/gate_gap/wall_band/layers+validate()按面拆四查:身份贴图/命中边界/命中互斥/围墙带包络)
- 数据表camp_scene_layout.tres: 10层坐标唯一事实源(布局草案值+§5已裁:布告板(845,268,130,140)/门扇(520,250,240,220)门洞对齐/帐篷300x170;贴图矩形=contain终稿实测尺寸锚定:底中心/顶锚/底锚按物件语义,campfire命中(560,640,160,80)只取下半)
- ConfigDB接线: 表注册+表现域容器camp_scene_layout字段+装载期validate()逐问题_fatal(fail-fast红线:命中区越画面/相交/侵顶栏=数据致命)
- CampSceneView: setup_layers/bind_hotspots/get_hotspot_rect/set_feedback_state/set_hud_band五公开口+object_pressed信号; Control根+TextureRect层子节点序=z序(禁CanvasLayer/z_index/Sprite2D); 根单点_gui_input命中判定(层全IGNORE); 四态反馈:悬停=Candle轮廓+名牌(FS_HINT/INK_ON_DEEP/BG_ROOT板,画面内钳制)+Tween逐级整像素浮动/按下=位移1px/禁用=ShaderMaterial去饱和+降明度(零新素材,modulate只有明度轴); 素材缺位程序化占位冒烟安全; 命中键=七物件绑定(gate/forge/dummy/chest/notebook/board/campfire)
- V14单测camp_scene_layout_test.gd(11断言): 校验函数通过/七键集/两两不相交/不越画面不侵顶栏/篝火只下半/门扇对齐缺口/布告板挂墙带/10层序/ConfigDB装载链——全表关系谓词零坐标字面量; run_all manifest登记expect=0
- 验证: --editor --quit刷类缓存后V14孤跑绿(11项)+视图孤检绿(9项:子节点序/合成点击信号/悬停名牌/拖出取消/禁用不发/HUD槽——临时件不入库,T5探针承载正式验收); S9/S13归基线(gdstyle新违规4条已按职责轴拆函数清偿:validate按面四拆/_gui_input三拆/setup_layers构建段三拆/循环内分配提_build_layer_node)
2026-11-01 17:27:42 +08:00
DKChan aa4aa1dd20 卡④T1进度(迭代47·营地场景图批): UiKit.TEX_CAMP_*十键常量落位+九张终稿处理达标(worktree物理落盘)——围墙层待美术线重出(用户裁读法A)
- 用户裁留痕(2026-11-01): 围墙层终稿与锁定坐标口径结构性冲突(桩身实测≈295px vs 锁定43px,裁带(0,240,1280,70)不可执行)三读法择A=重出;停机呈报已吸收即删
- 九张后处理(授权=/iter开工令§0.3-4)达标并落盘worktree game/assets/art/scene/(素材面整目录不入git,2026-10-02裁;合并落地时物理拷贝主区): 去底(边界泛洪+奶油描边屏障)/内容裁剪(水印随裁去除)/等比contain缩放(非整数缩放L2登记:board130x121/gate240x211/dummy120x180/forge240x193/tent251x170/chest106x90/notebook100x66/campfire160x149)/bg÷2最近邻1280x800
- 营地主色板32色收敛(§4.1场景环境子板两道门合规:并集272→32,三通道差全<8对数=0);四联底测试条目检过——在途artwork/2026-11-01-营地终稿后处理/
- 十键先定常量防断链(load_tex exists守卫缺位null回退冒烟安全);布局矩形唯一事实源=camp_scene_layout.tres随T2落盘;围墙一张待重出后补齐T1,新稿落artwork/candidates/scene_camp_wall/即续跑
2026-11-01 16:35:40 +08:00
DKChan 3a9c6ff453 卡⑥T1(迭代47·营地模态句柄子容器批): UiCampModals新件+camp_overlay句柄迁移modals.camp.overlay二层——零行为变化
- 新建game/presentation/ui_camp_modals.gd(.uid同笔): RefCounted子容器,现役一枚overlay,头注自陈终态六枚/新营地句柄禁平铺回ui_modals(契约2/4/5)
- ui_modals.gd: 持camp成员(_init与flow同拍构造)+删平铺camp_overlay——类变量14→14,头注同步(十二平铺句柄+营地域子容器)
- main_ui_build.gd装配10处+ui_registry.gd node()分支返回属性链(key平铺不改名,camp.*解析分支随卡④⑤)+改指面探针五件/system_test共43处改指ui.modals.camp.overlay(断言零改判据)
- 营地段断言消息文本追加尾缀〔句柄子容器批 V1〕×33+〔句柄子容器批 V2〕×1(V1c合同树序链——独立验收审计尾缀grep义务落点)
- 验证: 类缓存刷新(--editor --quit,UiCampModals入册)后改指面8文件逐件复跑绿——system_test 69项0失败+ui_struct/screen_flow/ui_probe PASS+click问题=0+shot camp出图问题=0; S13 gate绿(143件零NEW)+ui_modals '^var '计数=14留痕; 全仓modals.camp_overlay平铺寻址零残留
2026-11-01 08:00:04 +08:00
DKChan 37ed6ab426 iter46-卡1:棋盘格边长口径收口批v2.0——MIN_CELL阈值退役改等价守卫+算式单点_cell_for+四档入卫(74checks/探针两档绿/审计过) 2026-11-01 03:10:25 +08:00
DKChan aba54ab228 iter46-卡2:名字行提档FS_HINT14+地台色合并: 退役两常量改指BRICK/PLAZA_EDGE+golden三张0.00%留痕 2026-10-31 15:13:32 +08:00
DKChan 9eedf8965d 收尾(迭代44批后收尾): 反馈点六条处置闭合——①architecture落文六条: ui_registry/RoundCycle/BattleFacts三行现状化(已建件-迭代44,四件类变量3/9/5/14与ModalFlow随容器构造实况,两新件构造句按实态=三参直构/零参直构,实测值8·3/15·4换代)+装配节两句实况(ModalFlow先在座/shot与fx_shot取证探针随批改址)+main_ui_build行层序事实源句改指ui_registry.LAYER_CONTRACT+ui.apply_layer_contract+S13测量面注销句现状化(收尾现行形态=run()尾每批一次,申报剥离凭据215da315/v1.1重裁在案)+S13豁免第三条注销句转已实施(宿主实测15);附带main_overlay_flow行模态口指址刷新(root.ui.modals.flow.open/close——与头注词面修复合拍,验收审计缺漏2同族);②gdstyle基线refresh收账(--refresh --force,16→5键): 消失=main.gd49/orchestrator38+文件长1035/tune_sim await/board_cell_unit30/standee_body19五键清偿+iter42归绿6键离账(board_view allocation+_paint_cell三键/level_runner _enter_node),重登记=留债三键按实测28→23/32→31/50→33,零新增键(布局批新码gdstyle全净);③目检两项登记体验验证清单㊷(三屏切换与模态开合/战斗一局全流程观感);④产出物退役十件(吸收即死+证据只留最新): iter44实现报告/反哺点/验收审计+组合根注册面/战斗编排归约/测速循环三卡+组合根注册面/战斗编排类变量归约/测速循环去await三设计过程稿+grilling五卡复核——全部判据核过: 反馈点11条全处置(1-6落文/7 refresh本笔执行/8条件性观察无未决随本笔备案/9净零/10被条目删除覆盖/11迁待办新条),遗留义务全迁移(目检㊷/refresh基线/头注已修/死preload登记),引用面=roadmap行保留字+战斗域条目改git提交号;⑤账面: 零豁免五键清偿批条目整条删除(五键全清+两迭代合回+refresh收账,状态机出口),战斗域结构深拆批条目净零重立(宿主瘦身子项完成记实况引bee73db5,原卡片引用随退役改git提交号——多子项条目与卡片死期规则的闸机结构冲突按net-zero先例解),main.gd死preload八条新登记(直改类待执行),roadmap迭代44行卡片/报告两列退役保留字+当前位换代(迭代1-44全完成,下一步=iter45收尾) 2026-10-31 05:12:31 +08:00
DKChan 4b174877be 补提交(布局几何单点化批·代码面+工具面+architecture行·跨会话遗留): battle_layout.tres 新表单行五字段(stage_h/info_panel_w/ap_bar_h/log_band_h_dig/log_band_h_settle)经 schema battle_layout_table.gd+域容器 config_domain_presentation.gd 收进 ConfigDb.presentation(ConfigDB 三容器→四容器,manifest 增 battle_layout 键,B区高度裁决 2026-10-30 用户裁=取代码标准 stage_h);views 五件构造签名增 layout 参(BattleStageView/HeroInfoPanelView/BoardZoneView/ApBarView/BattleLogView 常量高度改表值驱动)+ui_assembler 装配传 layout+probes 两件改址+main.gd 结算带注释去数值;tools/layout_config.py 新件+render_sample_sheet 两版读布局表现算(样张工具面);文档面: architecture.md ConfigDB 行换代(四容器成员 7/7/5/1、类变量 10)+HUD框架.md 三区表/装板不等式/调参表去数值化改指布局表+数据配置.md+interaction-patterns.md 明细带句去数值(battle.md 区表与待办清单登记面已随 1cdef6ba 在库);消费漏网 L1 就地补改九处(构造签名换型与 iter45 断点件收编的测试改址漏网,判据零变化): theme_projection_test:386/player_copy_sweep_test:44,98/adventure_feats_test:772/standee_fx_sweep_test:75/feat_vouchers_test:292 六处补 layout 实参,adventure_feats_test:791/level_shop_economy_test:1480/feat_vouchers_test:81 三处断点成员直读改经 a._bp_store(iter45卡②六成员搬移漏网,02 闸合回后首全量暴露);load_tables 超函数长键清偿(容器装配块抽 _assign_loaded 私有协函数——表行按域收进四容器+resolver 注入单一职责,与 _cross_validate 委托先例同型,S13 新增红修至基线口径内);窄验: 四件修复套件单跑全绿+gdstyle 基线外新违规 0 2026-10-31 05:05:08 +08:00
DKChan 9b0b164d38 iter45-卡2:board_hover+breakpoint_store拆件(R2整族归件,27键冻结,键账31/27/23留债)〔补件V1-V2〕 2026-10-31 00:33:02 +08:00
DKChan e7920e8fe0 iter45-卡1:单格两绘制域件+站桩两状态件+探针u.face改址(golden三张0.00%,键账30→10/19→10清偿)〔状态件V1-V4〕 2026-10-31 00:33:02 +08:00
DKChan 4e04d2f1ba iter44-卡3:卡③(测速循环批v1.1): 信号步进状态机消await-in-loop裸键·双实现对拍·行为改动零处·含并master与三卡产出物 2026-10-30 07:13:23 +08:00
DKChan d2b36e59cb iter44-卡1:卡①(组合根注册面批): ui_registry+三域容器建件·main.gd 49→15·全消费面改址main.ui.*·四闸主证行为零变化 2026-10-30 07:13:23 +08:00
DKChan 9c12d0a683 iter42-卡2: level_runner委托壳19枚拆除+shop公开化直连键7=33+残留零真残留+基线记账03/04/05(用户裁) 2026-10-30 01:34:06 +08:00
DKChan 66e6d0452a iter42-卡1: gdstyle尾波清偿批——board_view五段拆分与构建器/装板域拆BoardInstaller/wr5改址,键1-4+9+10归绿 2026-10-30 01:33:47 +08:00
DKChan 34eba7a332 iter43-卡1:战斗一屏样张批:五项实装定值落码——血条填充#A8321F经UiKit.HP_BAR_FILL(§4.2语义物件,#689CE8退役值零残留)/条底收HP_BAR_TRACK/顺位徽标提档FS_HINT/护甲三键换24×24 PNG(UiKit.TEX_ARMOR_*单点,缺位回退字形)/名字行垫HP_BAR_BACK素底牌且基线上移地台顶上方(§6.1/§7.2,几何单点_name_plate_rect+name_line_probe扩出口)/地台件TEX_STAGE_PLAZA九宫格横向拉伸接装(缺位回退程序化三段)——样张脚本扩展:draw_base两版画布出口(1280×800基座+1920×1080全局等比1.35×左右黑边96px)/B区按代码252出样/mockup镜像五项定值/S3b色板变体第二套/S5三组关键帧条/S6剪影三语境+描边对照+遮挡对照组/整屏四项断言S1–S4/战斗表现五项P1–P5/A7护甲对比锚/V1两版尺寸/V10基线并排/A5b成稿净空(机检30/30全绿)+--gen-assets四件素材产出入包;新单元套件standee_present_values(V5–V9真实入口断言18条全绿)登记manifest;三枚护甲PNG入包;批件三份落reports(实现报告/反哺点12条/追认单11条);并master合入态订正(迭代41测试债批清偿存量红与tween缺陷) 2026-10-30 00:00:01 +08:00
DKChan 413124b0b8 修复(迭代 41 测试债批·闸面续修): 03/04/05 三闸归绿——①board_cell_unit 数字色牌守卫恢复(iter41 卡2 分层拆分丢 if plate: 致 dungeon 数字一律垫牌,L1 棋盘 golden 由 2.74% 回 0.00% 逐像素复现基线);②curio_interact_controller.open_victory 第 4 参随 opts 改型(字符串→{"gp_summary":…},胜利总结面续玩恢复路径运行期断链);③探针随 iter41 拆件改址(ui_input_probe 格面成员入 st 六处、ui_struct_probe level_screen._runner→._map._runner);④config_db_test 商店行族改直读表成员(_shop_rows 访问器已退役) 2026-10-29 22:45:09 +08:00
DKChan 215da31591 修复(迭代 41 测试债批): 9 套件归绿+静态扫描 S9/S10/S11 清零+删死常量 SCHEMA_VERSION——两个产品回归随批修(standee 补间目标改子对象 st/tune_sim 运行态收尾归还 run),测试面按 iter41 拆件改址(slots/meta_state/crossrun/_forge/_side);S9 类型闸 24 处(node_map 三处给 Array[int] 真类型,其余动态边界 type-hint: ignore 逐处注记)+S10 头注日期 4 处+S11 退役词 1 处;config_db 头注「--script 无 autoload」订正为实测事实(autoload 并存、共享 .tres resolver 归最后装载者) 2026-10-29 06:04:40 +08:00
DKChan 2789adf606 iter41-卡2:呈现层结构收敛批:67清+2豁免+2展平改善——拆私有族+六状态件+ui_kit收敛+束收拢+print删;含u14补做、并master并案与批末运行期断链修复 2026-10-29 01:33:51 +08:00
DKChan a613a3cb90 iter41-卡1:核心数据面结构收敛批:85键全清——三族拆域+config_db归位容器+存档拆件+meta瘦身+adventure拆段+spawn束化;行为零变化,8新件在阈 2026-10-29 01:33:50 +08:00
DKChan b8b69c683d 合并 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
DKChan ea322599f7 卡②(结构小件批p1-p7+V15): 七点定点修落地+运行期违约通道负面套件+wr10 偏运缝拆验收——①p1 状态角标判据去重(main_overlay_flow._sync_status_entry 一组重复赋值语句删除,battle_live 局部量随之退役=wr1 载体);②p2 确认窗开合归模态栈单口(main 两处 _on_confirm_* 改 _close_modal;存档删除入口改 root._open_modal(root.confirm_dialog) 后再 open,遮挡记账/挂起兜底/开侧同步同口);③p3 棋盘动作与 stop 两入口显式 settlement 空防护(锁谓词异常时不崩于空引用);④p4 会话更替即清队:_begin_session 首行 _row_pacer.flush()(待播行不住局态=机制保证非时序约定);⑤p5 缝拆:RewardEconomy 删跨域直持(_fx/_ctx/set_fx)改注入 luck_bias_query: Callable,reward_roll 发射与 bias_rewards 求和收回 BattleFxHost.luck_bias_for(cell_count)(三参形 dispatch,不带 facts——禁复用 fx_emit 的第四实参会打开 when 事实条件面),组装点 set_fx 一行换赋值一行 1 换 1;类变量 15−2+2 净 15,gdstyle 无第 16 枚;⑥p6/p7 RngService 未知用途标签与未播种取数两分支加 violation_handler 记录位+release 下 return null 空引用即刻崩(fail-fast 传导,合法路径不可达)——debug 下 assert 先中断函数本体两态不可判别,故记录位是唯一可观测面;⑦board_generator/reward_economy 各加 fatal_handler 注入位并由组装点接 orchestrator._fatal(release 剥 assert 后仍经 battle_result 封印真中止)。新件 tests/unit/core/run_time_fatal_test.gd(manifest 登记 expect=1 negative=true):wr5 协作件 _fatal 经组装点传导 p5 封印+缺省形态不外溢/wr6 未知标签通道/wr7 未播种通道(各用新建 RngService 实例,播种断言 _counter==0)。wr10 三条入 variant_placement_test=判定面夹具白盒装载(现网数据无 bias_rewards 行,沿 tree_rules_v11_test 先例)+接线同源+权重生效 77+4*2。验收:variant_placement 49 checks 全绿(wr10 ①②③ PASS:空订阅 0/命中 1 行/装载后 2;查询口有效且与宿主同源;偏运池实测 85);run_time_fatal_test 退出码 1 三点绿;pacing_queue 绿(wr4 前置夹具真入队 2 行→更替后清零);ui_click_probe 问题 0(wr2 遮挡账开/关两侧断言);round_flow_skill_pool 130 checks 绿;wr11 dump_battle 六组(L{1,2}×S{42,779401,779501})与改前 before_* 逐字节 cmp 全等;gdstyle 基线外新违规 0、恶化 1(level_map_screen 类变量 22>21=iter38 存量非本批触碰面)、基线文件零改动〔结构小件批 V15〕 2026-10-27 18:39:53 +08:00
DKChan 012883f301 拆件批v1.3-B2(停点刷新账拆分): curio_stop.gd 刷新三源账与付费刷计数拆出 refresh_bank.gd 新件(uid 随建)——X 件账(每碰三选一重置不结转)/Y 冒险周期池/存量券账三源+spend_free 消耗序(X→Y→存量逐字)/gp_cost 报价(ceil(基价×曲线^本次停点已付费刷))/断点片段 refresh_stock+attune_refresh_y 两键(Y 缺键回退参数面=旧档行为零变化)归 RefreshBank 零停点态依赖,CurioStop 只留停点态编排(查在途→bank 支出→重抽重发),draw_candidates/feat_ticket_consider/curio_cap_ok/pool_stock/pool_stock_snapshot/attune_refresh_left/set_refresh_* 七转发退役(消费方直连 deck());构造参改 deps 字典(deck/stats/journal/bank);restore_resolved 收编置态+重发一步(时序逐位同)。消费方改址——adventure_runner(refresh_bank() 件出口+_init 建件+start/resume 预算注入改 bank+断点拼盘 bank_frag 两键+终局池快照直连 deck.stock_snapshot)、curio_interact_controller(余量读数 free_left/报价 gp_cost)、测试七文件白盒地址随动(curio_refresh_paid/feat_vouchers/meta_progression_forge/treasure_effects/adventure_feats/level_shop_economy/pool_case_d)。验收:全量套件 63 绿+round_flow EV 锚 goblin 已知预期红 1;bp 对拍 292dumps×28 键 mismatch=0(对 after_attune 与 after_split_B1 双基线);冒烟 17 项 0 失败;gdstyle 基线外新违规 0/恶化恰 2(battle 文件行数+level_map 类变量,存量债)〔领域拆分批 V1〕 2026-10-27 17:00:26 +08:00
DKChan fde14f1c1c 拆件批v1.3-B1(主角账领域拆分): hero_ledger.gd 整件退役→三新件按领域各归各账——hero_stats.gd(生命/特性/类型轴/生效公式与回血封顶单点/续玩钳制收口 clamp_hp_to_resume_cap/断点片段 hero_hp+relics 两键,构造注入 GainJournal 只读引用消费加算汇总)、gp_wallet.gd(gp 单写原语+片段 gp 键)、gain_journal.gd(获得记录三层+三通道 gain_bonus 单写原语+购买档数/钥石/真视+reset_adventure_accounts+片段六键,record_gain 转私有,_record_gain 词表不变);断点拼盘改三片段并集(BREAKPOINT_FIELDS 28 键序不变,_resume_ledger 三还原各取各键,日记缺键汇总直载/在档推导比对拒载逐字承现);消费方改址——adventure_runner(建件三引用+件出口 hero()→stats()/wallet()/journal()/deck(),start/restart 三件先日记后钱包再置满同序,_resume_params 钳制改 clamp_hp_to_resume_cap,载荷_base 随附钱包读数——停点件零钱包依赖)、level_runner(ctx hero→stats/wallet/journal 三键,私有三件同源成对自建,gp/hero_hp 属性改指三件,effective_ap_bonus→journal,hero()→stats()+journal() 出口,_bind_shop refs 换代)、shop_session(refs wallet+journal,BONUS_AXES 归 GainJournal)、battle_orchestrator(encounter "hero"→"journal" 键+_hero 类型 GainJournal)、curio_stop(构造参 stats+journal,兑付落账 split 指针,头注换代清 HeroLedger 表述)、呈现/探针/模拟六文件 12 处读面改址、测试六文件改址(hero_ledger_test 重写为三件测试——文件名与 manifest 行不变,新增 hs1 零引用源码断言)。验收:全量套件除 round_flow EV 锚 goblin 已知预期红外全绿;bp 对拍 292dumps×28 键 mismatch=0;冒烟 17 项 0 失败〔领域拆分批 V1〕 2026-10-27 08:10:08 +08:00
DKChan e2a2fbf3ee 卡①T4c(拆件批wr5/wr9/V12): settlement 拆两子 Resource 段——新建 settlement_core_table.gd(7列:source_label_map/effect_pool_map/pool_clamp_lo/pool_clamp_hi/round_direction/p_perfect/seal_hit_premium)+damage_roll_table.gd(10列:equivalence_ref_damage/armor_effectiveness/roll_faces/attack_bonus/roll_tier_bounds/roll_tier_discounts/crit_roll/crit_multiplier/damage_floor/armor_roll_stream)+.uid边车;主表三列形(segment_order留主表+core+damage_roll,类变量18→3,const四枚随主表),validate拆五私有(_validate_scalars/_validate_roll_scalars(9分支超阈续拆)/_validate_frozen/_validate_tier_table/_validate_armor_matrix)错误载荷逐字同构+段缺失fail-fast;settlement.tres单文件嵌套重建(两sub_resource,18列值与尾注批注史逐字—脚本比对18/18无diff+tail_equal);消费方改址97处(.settlement.<列>→.settlement.core./damage_roll. 链式95处+cross_validator局部2处,逐规则计数断言全中;segment_order直读1处零改址);测试改址9文件含G15清单(sim/probe/config_db交叉校验)。验收:gdstyle基线外0 NEW+16套件924 PASS+零SCRIPT ERROR〔拆件批 V12〕 2026-10-27 07:41:09 +08:00
DKChan cc02bb9315 卡①T1+T2(拆件批wr1/wr2/wr3): BattleFxHost+RewardGrant两新件建件+fx/grant族迁移+use_treasure拆分+三触点分家——battle_fx_host.gd(14类变量:bundle7+grant_cb+engine+counters_ctx+ac/reveal两束;fx_emit/emit_round_start/apply_ac_bonus/enqueue_reveal/flush_pending_reveals取号序逐字/rebuild_subscriptions/mount_buckets/reset_battle_state/bonus_delta_drain/reveal_busy)+reward_grant.gd(15类变量:bundle11+escrow+defer+treasure_inventory+battle_ledger;grant_routed随att归因束改形/submit案C闸/use_treasure四步骨架+_charge_gate+_apply_use_kinds+_safe_dig_open+_cell_removal_open/grant_clear_reward三参形宿主态经参传入/reveal_redeem兑付回调面);宿主删fx族11成员+grant族3成员,组件出口fx_host()/reward_grant(),_fx_host_fact五事实单点+_attune_safe_seen_read读投影,treasure_inventory带setter转发,begin_battle七接线点改指,_battle_over改bonus_delta_drain,_roll_gp_drop读_reward_grant.escrow;两段三引用构造(与T4接口块同形先行)读写面改指(oc._submit实为7处G5清单漏1,oc._fx_bonus_delta axis/axis_f两形);treasure_interact_controller改ctx束8键+三现值同查+inventory_projection拆_projection_row/_auto_row;main_ui_build构造改束(grant_get=run_scope.settlement.reward_grant()现值);S7/S8登记两新件7→9;测试改址:adventure_feats 75+round_flow 8+treasure_effects 7(含G11漏载的ctrl4构造点)+settle_segments 3+seal_polarity 10(含G11漏载的_grant_clear_identity直调)+level_shop 4+forge 2,另修reward_grant内部_submit/_outcome_of旧名三处与adventure_feats orch._fx/orch0._fx.rebuild两残漏(脚本错误静默吞断言假绿形态,修后feats 138PASS/seal 73PASS恢复全额);代拍板:①RewardGrant bundle 12→11键(minesweeper改经fx_host同源引用)腾位battle_ledger独立成员(卡面15≤15算术缺口,16键=基线外NEW停卡不可取)②bind_grant落_reward_grant.reveal_redeem(query_full_snapshot唯授予件持有,D1「RewardGrant授予面」兑付回调口径)③续拆四私有(迁入形逐键过阈值义务)④grant_clear_reward测试改址传宿主态读(s._board_from_midround_refresh/perfect_sweep_earned)。验收:七套件直跑绿+零SCRIPT ERROR+gdstyle基线外新违规0(battle_orchestrator行数恶化键随拆件归绿989<1302;level_map_screen 22>21=iter38存量漏登记非本批触碰面)〔拆件批 V8〕 2026-10-27 06:07:15 +08:00
DKChan 659d59edd3 主卡T5(拆件批wr7): 转发属性25条撤除+测量面改址收口——adv 4条(_curio_taken/_curio_deck/_feat_ticket_pity/_feat_ticket_sold直指件成员改写后删)、level 7条白盒属性删(内部直指_shop)、board 13条删(内部消费约30处改直引_palette/_hero_sprite件成员);A类直读47处+ui_input_probe 6处改指件;C类方法面调用全仓改adventure.stop().X(委托壳退役——契约5纯转传清偿,adv删pick_curio/apply_node_curio/skip_empty/refresh族/pool_stock/凭证委托11个,ctx组包改直引_curio.deck/feat_ticket_consider/cap_ok);新件压默认阈值(hero_ledger删_gain_seq序派生15变量合规;curio_stop删_attunement改_refresh_x_cap预算注入——装配集冒险期间锁死契约8等价,start/resume双路注入);battle_orchestrator压行还债(begin_battle局部变量归位);验证集清单重生成(66源文件/1596调用点,标签cond计数三对齐零差异)。S13读数:三宿主全部改善——adventure_runner类变量42→23(-19)/公开方法23→≤20归零、level_runner 38→28(-10,达标约30)/54→50、board_view 45→32(-13,精确达标);存量红面=新件5条NEW(接口块公开面29/31方法+迁移函数既有超标形态,原基线adventure_runner同函数同值登记)+恶化4条(battle拆件接线3条+level_map_screen 1条iter38存量漏登记——本批零触碰),收口前呈报用户裁决〔拆件批 V7〕 2026-10-27 04:14:10 +08:00
DKChan 4da7f3e2f2 主卡T3(拆件批wr4/wr5): 应用层收薄+构造注入+信号直连——adventure_runner六转发信号族与_forward_*方法删除(选路快照双职改核心侧受理_on_level_choices_presented直订level信号;stop信号中继删);level_runner构造注入一次给齐(_init收ctx十二键:hero/ledger瘦壳/adv_bucket/attunement/tree_rules活引用/shop_mode/treasure_unlocked/类型轴/凭证出箱/pool_wiring四参——后置setter群八件与set_hero/set_run_ledger退役,_bind_shop全仓仅构造一处,头注补关卡开始信号前零发射契约,八白盒属性内部改直指_shop);adv _start_current_level组包ctx(_inject_level_params退役改_emit_level_started只广播);呈现/测量信号直连(main_adventure_flow _connect_runner_once六信号level_started重取点is_connected守卫重连+三选一订stop();autoplay增订level_started同关守卫重连三信号;curio_interact_controller 14处adventure.stop()改址);测量面残留换代(bp_baseline_dump直连改level_started重连/ui_tune_probe与main_debug_flow keystone读hero());测试直连面换代(breakpoint_resume P5订stop()/adventure_feats信号序观测level_started回调内重连——bind句柄每回调新建不以Callable相等判重);sc3源码断言落hero_ledger_test(_bind_shop全仓仅构造一处/_forward_族零命中)〔拆件批 V5〕。验收:bp1对拍292dumps×27键逐位零漂移(改前/T1/T2/T3四时点一致)+十套件零红+csf集成绿+冒烟17项0失败〔拆件批 V4〕〔拆件批 V5〕 2026-10-27 03:51:35 +08:00
DKChan 4a9e4300ad 主卡T2(拆件批wr2/wr3): CurioStop建件+CurioDeck纯池化——curio_stop.gd新件(停点三态/刷新三源账/兑付族/凭证出箱voucher_outbox/信号面自带/rebind_level_runner每关注入GP回调防调死对象/open_level_clear收编关卡完成停点段);adventure_runner停点面迁出(停点方法族留组合根薄委托——T5 C类收口;stop()件出口;信号中继法转发——T3直连前承转;_resume_pending迁stop.restore_pending含token_migration;resume已兑付分支stop.restore_resolved;_bp_parts停点键改stop片段取数);CurioDeck纯池化(bind_handlers/consume_pool_purchase反向回调退役——商店消费链ShopSession→注入Callable→stop.consume_pool_purchase兑付单点);测试挂死级改址随批(直读写已迁字段30+处→stop()件测试构造面,语义=原直写——G2b清单停点域全部);cs1/cs2/cs3现役断言承继尾缀落点(拆件批 V2/V3)。验收:bp1对拍292dumps×27键逐位零漂移(改前/after_T1/after_T2三时点同种子逐位一致)+九套件零红+csf集成绿+冒烟17项0失败〔拆件批 V2〕〔拆件批 V3〕 2026-10-27 03:04:22 +08:00
DKChan 416ca84aeb Merge branch 'master' into iter38
# Conflicts:
#	game/README.md
#	game/tests/验证集清单.md
2026-10-26 15:29:55 +08:00
DKChan 5b5214f40f feat(迭代38卡⑦ 调试入口批): 调试入口写死行删除(main.gd:199 发布前清理义务履行)——_debug_entry 恒缺省 false=发布态(角标恒隐、浮窗无 UI 开启口;:73/:200 两处引用契约 1 核验恰二);c2 :73 注释现状语义换代(沿革归 git log);c3/c4/c5 三处「恒开令」断言随发布态反转(system_test V2f/click 设置面/tune 对局段——c5 对局中开浮窗回归改经 _show_debug_overlay 直调承载〔:61 先例〕,置灰子断言随恒隐语义退役申报 §8.2);c6 验证集清单改判同步+本批新增断言随清单重生成(1588 条对账零差异);c7 README 运行说明发布态换代;c8 menu_boot 基线显式重制(改后 0.15% 幽灵角标消失→复闸 0.00%,README 判定记录登记);撤销证明实测=恢复 :199 单行→三处反向断言齐红→还原复绿;删除后无第三赋值、无生产开窗口(C2 单点论断复核在案) 2026-10-26 08:59:11 +08:00
DKChan ce49a8eec2 fix(迭代38卡⑥ 结算行缓冲批): _round_rows 类型声明与承载数据对齐(Array[Dictionary]→Array[String]——append 的是 _format_row 格式化产物 String,TypedArray 异型 push_back 静默丢弃致缓冲恒空、「上轮摘要」功能自引入类型错以来从未显示);wr1-a=探针日志该 push_back 错误行归零(改前基线 148 处→改后 0);wr1-b=上轮摘要恢复正向断言(战中场观测点 round≥2 且排播队列已空=finish_settlement_round 已刷,_summary 非空——不挂循环出口因收尾续玩重建段会再走 log_view.clear());撤销证明实测=回退 g1→148 错误行复现+wr1-b 红,还原复绿(click10 问题=0 同源态);除申报的摘要恢复外呈现零变化(append/消费/清空时序零触碰) 2026-10-26 07:37:34 +08:00
DKChan 92ae63c299 feat(通关口径换代·提前实施卡批 T3/T4): C 面注释清扫 61 条(core 六件 29/adventure_runner 14+save_manager 9+level_runner 3+其余 3/表头注 5/enemy 768 验收判据+871 设计基准/treasure_items 11/adventure 51/meta 55/schema 4/sim 11/README 7/呈现层四件 8)+S11 豁免单 7→20 处(.tres 段 12+level_autoplay:560,头注避词「口径换代」防自撞)+tests/README S11 豁免计数 4→20 订正(quotaface 漏同步随批修)+体验验证清单 3 行(:107 关卡完成率/:193 冒险成功局数+各关完成次数+才计冒险成功/:198 引语);件核三判据过(S11 等价验证器零命中+豁免撤销证明 hero.tres:21 去豁免即红/冒险终结零命中/清单对账零差异);grep 残留=豁免单 13 行+被检字形态,非豁免残留清零——208 处基线全数消化(12 产品+111 随动+84 注释+体验清单 3+README tests 1=211 改动行,其中豁免保留 13) 2026-10-26 07:32:40 +08:00
DKChan 00ed023659 feat(迭代38卡⑤ 奖励节点清扫批): 「奖励节点零兑付直通占位」过时表述族判据面清扫——d1 level_runner 两注释换代(reward=三选一停点现状准确表述)+d2 autoplay :484 理由句换代(sim 策略选择语义,行为零触碰)+d3 battle_narrator 战报文案「节点内容待定——直通」→「三选一——选毕推进」(唯一玩家可见行为改动,wr2 专行);d4 wa4 条件断言转正——病根=原捕获条件查 _curio_pending(通关三选一停点态)与奖励头部「关卡奖励点」互斥、恒不可命中(拦截能力未证实况),随修挂 _node_curio_pending(奖励节点停点态,头部校验串零触碰)+定向选路小改(候选含奖励节点优先,press_candidate 真实命中路径零变化)+必达判据(全程未到停点即红);wr2 战报文案断言(同驱动路径承载);撤销证明两条实测:回退 d3→wr2 单红、回退 d4 条件→wa4 必达红、还原复绿(问题=0);wr1 两串 grep 判据零输出;探针不进验证集清单提取面(extract_checks 扫 tests/unit|integration|system_test——无同步义务) 2026-10-26 07:08:32 +08:00
DKChan 54395b8b43 feat(通关口径换代·提前实施卡批 T1): battle_narrator 六处(a1 关卡完成!/a2-a3 关卡完成回血/a4 渠道句/a5 完成关数行+:159 注释)+career_overlay 标签两处(a6 冒险成功局数/a7 各关完成次数,注释:11/:12/:36 顺改)+save_select a8(冒险成功 X 局,注释:2/:18 顺改)+ui_kit a9(解锁标签冒险成功,:211 注释顺改)+camp a10(完成 X 关)+hud a11/a12(关卡完成率/关卡完成剩余 HP 均)——A 表 12 条逐字落地;wr1 断言随动(battle_narrator_test:39/:41)+V1-V3 新增四断言(_test_level_clear_wording,直调 curio_pick_header/node_curio_header/adventure_summary_text,17 checks 孤立直跑绿);撤销证明 a1-a5 逐条闭合(回退 hunk→对应断言红→复原复绿) 2026-10-26 06:57:11 +08:00
DKChan b85b3b45e3 feat(迭代38卡① levelmap批): level_map_screen 三段审计指认落地——l1 视图直读拼文案迁装配层(main_adventure_flow 新增 level_map_status_payload 九键成品,视图 _refresh_status 改 apply_status 纯赋值,喂入点=组合根两处 open_choices 后,刷新时点不变)+l2 _layout BFS 布局缓存(键=nodes 内容等价+canvas.size,_content_size 经 _fit_canvas 派生链间接覆盖,四调用点零改动)+l3 绘制字体函数首单取三处共享;l4 改前 golden 基线新建(level_map.png+README 登记,跨跑次一致性实测 0.00%);验收=wr1 改后对拍 changed=0.00%+wr2 缓存命中/换代失效双绿(is_same 同实例判别,零生产计数器);撤销证明=回退缓存 hunk→V1/V2 红→还原复绿;呈现逐像素不变(契约 1);视图侧拼装 grep 清零(:278 tint 层号读非拼装) 2026-10-26 05:40:31 +08:00
DKChan 2dd3ec5640 merge(master): S9 类型闸修复批与两条工程条目出账 并入 iter37(收口前最后一次并源)
三处冲突全部按「取我方结构+确认对方注解已落新址」处置,零丢弃对方改动:
- main.gd:四解析函数体已由卡② r1-2 搬入 board_resolvers.gd,master 给 _identity_lookup 补的 -> Variant 在新件 identity_lookup:28 同形在位;build_adventure_params 的 SaveManagerCore/MetaProgressionCore 注解经自动合并落住(main.gd:367)
- views/battle_stage_view.gd:卡① d12 已改 (target_id: String, display_name: String) -> Variant,master 对旧一参形态的注解属同址更新,取我方
- views/board_view.gd:查表族/明度归一族已由卡③ r2-1 搬入 tile_palette.gd,master 的 lumas_out: Variant 注解在 tile_palette.gd:134 同形在位
待办清单.md:我方 P0 条目与 master 删两条已完成工程条目自动合并(64 条,S9/S13 条目出账)

合并后复核:13 个触及脚本 --check-only 零 Parse Error;master 修好的 S9 类型闸 PASS(其 26 处补注解零丢失、本批九新件零命中);gdstyle 216/216 基线内、新违规 0、恶化 0
2026-10-25 18:59:27 +08:00
DKChan ccd31de9ce 工程(S9类型闸正则修复): FUNC_DECL 认行尾冒号与 static 前缀两洞修复,存量 29 处补类型注解零行为变化,--code 域闸全绿(回执 domain=code) 2026-10-25 17:56:36 +08:00
DKChan 5c9c5f8083 refactor(iter37③): boardview 拆件——瓦片调色板/英雄精灵两族出根(行为等价,golden 逐像素零变)
r2-1 瓦片族(排版+素材装载+墨族判据+查表)→ views/tile_palette.gd;
r2-2 英雄族(贴图/位移/影/朝向/缩放几何)→ views/hero_sprite.gd(Node2D);
r2-3 board_view 改引+直引面换指(terrain_tile_sets_test/ui_contrast_probe),
探针与 main 的组合根直读面经转发属性/常量别名保持零改动。

S13 计数守恒:基线含类变量数/公有方法数两条计数型键,故 board_view 用 13 个转发属性
+2 个组件引用压回原计数(45 变量/27 公有方法);baselined 的 wall_tile_for/
wall_center_tile/digit_ink_mode 以查表/辅助函数重构压回阈值内(非改名保违例),
旧文件级键随函数迁出自然失效——基线文件零改动(用户令:只改代码不改基线)。

验收:terrain_tile_sets_test 19 检查绿(判据读数与迁移前同值);gdstyle 基线外新违规 0;
S9/S10 绿;probe_gate --click 全绿(含 ui_input_probe 十八断言/click 走查 0 问题);
render_gate 棋盘三图+菜单 golden changed=0.00%;撤销证明:测试改引回退旧址符号
→ SCRIPT ERROR(Parse Error: Static function "_normalize_floor_luma()" not found)+
error_scan exit 1,还原后 19 检查复绿、error_scan exit 0。
2026-10-25 06:43:03 +08:00
DKChan c99c23fba3 chore(iter37②): 五件新 .gd 的 .uid 边车补录(--editor 刷新生成;三件同步纪律) 2026-10-25 06:42:25 +08:00
DKChan b0d92524fe refactor(iter37②): main 组合根判离——投影/解析回调/文案三族出根+装配与流程承接四件(行为等价)
- r1-1 数据投影五函数 → HudPresenter 静态族(status_data/status_curios/career_data/save_select_data/camp_data,依赖面显式参数化)
- r1-2 只读解析回调四函数 → 新件 board_resolvers(有态绑定:db+调试浮窗+结算活态取值三参注入,产出三解析 Callable+override 拼装;注入点改引)
- r1-3 文案拼装三件 → HudPresenter(gp_summary_text/bonus_summary_text/phase_text)
- r1-4 探针直引零改动:_camp_data/_status_data/_gp_summary_text 三件薄委托原签名转发(ui_click/ui_struct 直调面不动)
- 范围扩展(用户令「全部改代码」下压 S13 文件长度线):_build_ui 拆八步 → main_ui_build;冒险/覆盖层/调试流程族 → main_adventure_flow / main_overlay_flow / main_debug_flow(逐字搬运,成员访问改 root 前缀);诊断转储接线留在组合根(source 扫描断言零改动)
- main.gd 1506→946 行(S13 ≤999 达标);九条基线外漂移经代码压回后扫描 229/229、新违规 0,tools/gdstyle_baseline.txt 零改动
- 等价证据:hud_presenter_test / pacing_queue_test / theme_projection_test(162 项)/ modal_flow / standee_fx_sweep / player_copy_sweep / source_guard / meta_progression_forge / breakpoint_resume / level_shop_economy 全绿;probe_gate --click --full 全绿(click 问题=0);冒烟 17/17;S9 类型闸 PASS;撤销证明(删 gp_summary_text 承接体→Parse Error 红→还原复绿)在案
2026-10-25 05:47:46 +08:00
DKChan 2ed8166852 refactor(iter37-S13): 九条基线外漂移全部以代码压回——禁改基线口径的兑现批
- config_db 三 getter 退役(shop_relic_base_price/shop_spend_discount/hero_display_name):消费方改读公开行访问器(db.shop.* / db.hero.*),公开方法面 47→44
- shop_table.validate 单函数分步化(六个 _validate_* 子步骤):函数长度/分支数/局部变量三阈值同时回落,校验语义与报错顺序不变
- battle_end_overlay 庆祝句柄由类成员改为节点元数据承载(21→20 类变量):三处读写改 get_meta/set_meta/remove_meta,句柄单一活跃语义不变
- standee_body 死变量 _portrait_flip 删除(30→29);set_order 并入私有面(21→20 公开方法),唯一调用点同步
- 断言随动:level_shop_economy_test 读表直取;standee_fx_sweep_test d4 三断言改读节点元数据;theme_projection_test V4 蓄力档判据换代(卡① d2 已入库代码的断言补齐)
- tools/gdstyle_baseline.txt 零改动:扫描面 105 文件、基线内 229、基线外新违规 0
2026-10-25 05:47:01 +08:00
DKChan 7389618fd1 fix(iter37①): T3 验收面收口——golden 判失效换代+新码类型标注对齐现行规约
golden 换代触发原因(强制记载):棋盘三图换代面实测 changed=0.13%/0.11%/0.10%,
差异像素全落 900×760 裁剪区内(裁剪区外 0),按 README 加严口径判失效;成因定位为
2f3a87e9(魔法道具 HUD)注入 REWARD_BADGE 预读格字形,晚于 2026-10-08 建基,与本批零因果。
呈报后用户裁「重制三张基线」,经 tools/golden_baseline_refresh.sh 换代;复闸 changed 全 0.00%、
菜单 0.00% 未动。README 判定记录同步加注一条。

同批:modal_stack 合并账本改 Array[Control](类型闸 R1);新增/触碰的测试件按 test-conventions §6
补齐类型标注(FakeStage/FakeFx calls: Array[Array]、damage_controller_test 两处 db: ConfigDb),
pacing_queue_test 三条 d12 断言补〔wd12〕尾缀。直跑:standee_fx_sweep/damage_controller/
pacing_queue 三套全绿+error_scan 0;audit_type_hints PASS。
2026-10-25 05:03:03 +08:00
DKChan 0529e1691c fix(iter37①): T2 呈现/组合根缺陷修——蓄力档分档·庆祝句柄·互斥四口·模态 fail-fast·站桩按 id 解析
- d2 蓄力档 `_intent_charge` 布尔分档(颜色相等判据退役,深浅金同值不再误判);d4 庆祝浮动 tween 句柄 kill 纪律(close 必杀)
- d5/d6/d7/d8 互斥四口:调试钮判据并入 `_sync_sim_button` 单点、组合根两守卫补模拟态/冒险态、`is_running()` 运行态查询面
- d9 ModalStack open/close fail-fast+遮挡账合并非覆盖(重复 open 不再吞旧账);d12 target_id 产发(damage_controller 四处)+站桩两口 id 先名兜底;d17 await 后实例守卫;d18 参数类型注解
- 断言:standee_fx_sweep_test(新增,18 项)/modal_flow_test V6-5(5 项 wd9,V6-1~4 原样同绿)/damage_controller_test target_id/pacing_queue_test 排播 target_id/system_test wd6+wd7
- 代拍板:d18 卡片字面 `lumas_out: Array[Variant] = null` 在 Godot 4.7 解析报错(typed array 不可默认 null),改用 `Variant = null`——唯一合法注法,零行为变化,随代拍板追认单留痕
2026-10-25 03:49:05 +08:00
DKChan 1b9736f065 fix(iter37①): T1 core 域缺陷修——单据归属判定/数值入表/公式单点/信号契约载体统一
- d1 伤害控制器来源敌作废判定 `==`→`is_same`(同内容异实例不再误废;夹具双敌两断言〔wd1〕)
- d11 shop 表新增 relic_base_price/spend_discount 两 knob+域检+ConfigDB 访问器+level_runner 读表;
  level_shop_economy_test 三表值断言+relic 现价读表与迁移前字面量逐位等价〔wd11〕
- d16a HeroTable.display_name+域检+访问器+unit_container 读表;spawn 真实链断言〔wd16〕
- d14 board_generator 目标雷数公式单点 target_mine_count(两调用点改引)+legality 去 db 参数(两调用点同批改)〔wd14〕
- d15 蓄力层上限 CHARGE_LAYER_CAP 常量(两处字面量+注释随动)
- d16b unit_container/status_container 六处 Dictionary 取值显式 int() 包裹(读侧包)
- d10 minesweeper 两信号按 §2.1 三要素补契约(载荷键集按发射位并集实查)+全库 28 处信号注释载体 #→##

撤销证明:回退 d1 hunk → 同容异实例断言红(A 单据被 B 死亡误废),还原复绿;
回退 d10 契约 → 契约在位扫描 undocumented=2 红,还原归零。等价类申报(d11/d14/d15/d16)见实现报告。
代拍板:#1 target_mine_count 签名(照接口块)、#2 契约措辞与载荷键并集(实查发射位)、#4 int() 读侧包写法。
2026-10-25 03:35:55 +08:00
DKChan 678ad791da merge(同步 master): 迭代 35 卡② 分支合入 master 现态(12 笔他批改动,含 game/ 呈现层与测试工具手册批)——按 process-conventions §1「master 若被别批推进,先在分支里 merge master 解冲突、重跑本域闸再合回」执行 2026-10-24 23:08:08 +08:00
DKChan 9ee3bea194 refactor(迭代35卡②T2·二口+T3 S1/S2/S6/S8): 消费侧切源落定+断言面换代主体——① level_runner 图源换代(_generator 取代模板解析,_assign_generated_graph 读 level_gen_params 参数档产图并过 LevelTable.validate_graph,违规起关拒绝零兜底)+_entry_nodes 多入口首跳+_node_id 句柄单空间+enc node_depth 取节点 depth 值;② adventure_runner/main/save_manager 模板链路退役(first_script 参数与 template_pick 计算全删,断点 template_pick 键换生成图代差标记键 graph_gen_v2,缺键旧断点 resume 显式拒绝禁静默回放);③ level.tres 三行 templates 键清出(15 张模板数据出表,行级字段留,表尾注释改指参数档+生成器);④ sim/probe 随动(run_level/run_adventure 尾参退役、MC 出数字段 level_templates→level_maps 值=关卡#主种子、探针注释性质化、boss_depth 取节点 depth 键);⑤ 断言面换代:node_map_templates 宿主整段重写为生成图确定性套(纯函数复现/换种子变图/零计数器号位依赖/单一图源/种子 42 两开局同图/断点重生成同图/缺代差键拒绝/表无 templates/收束置位三条保留),breakpoint_resume 新增 P7 六断言(快照无已抽模板键、代差标记、停点句柄与已到序往返、续玩同图、旧断点拒绝、同种子重开局同图),S8 单测随动 first_script 键清退+断点夹具换代+meta 参数面 extra 键样换 treasure_unlocked(语义保持),S2 生成图取数面三宿主替换(level_active_nodes 走参数档+种子 42,消费点深度键换 depth,round_flow 死件 _boss_depth 随删),adventure_feats 覆盖义务段改真实解析链判据(敌侧落带≥请求深度+板侧命中+非空扫描面)、奖励节点段换「图侧含件+真实选路点选呈停兑付」双断言(旧单链必经形状前提随模板消亡,非放宽:经停即呈候选由真实 pick_next_node 入口证明)、商店余额段按每关恰一店投影改三关读数 2026-10-24 18:59:57 +08:00
DKChan 8a37712e64 fix(迭代36卡③): 静态扫描归零——R1 容器参数化五处(main/_status_curios+status_panel 三容器)+S10 文件头去迭代叙事;批量闸中单元 runner/探针偶发中断经直跑复验全绿(存量偶发类,随报告登记) 2026-10-24 08:49:39 +08:00