工程(gdstyle基线死键清账): 基线按实测重锚168→16键——152死键随迭代39–41还债消失清账,3条活键只降不升重锚(battle_orchestrator文件长1037→1035、board_cell_unit类变量31→30、standee_body类变量29→19),16键与迭代41键账终局构成逐键吻合,S13闸转绿(126文件16命中基线内零新增零恶化);待办清单条目完成即删

This commit is contained in:
DKChan committed 2026-10-29 03:43:19 +08:00
1 parent 4a7565592e
commit fafb4fee0a
2 files changed
+3 -163

No files matched your search

+3 -155
View File
@@ -5,171 +5,19 @@
# 判定=键不在基线红(NEW)、同键数值较登记值恶化红(WORSENED)、改小/持平不红。
# 重生成=人工专用:python tools/gdstyle_gate.py --refresh(禁清基线换绿;改规则口径/工具升级须随批
# 重生成;新键数较旧基线少逾 10% 须加 --force 显式确认)。
game/core/action_economy.gd|quality/max-class-variables = 18
game/core/adventure_runner.gd|quality/max-class-variables = 28
game/core/battle_orchestrator.gd|quality/max-class-variables = 38
game/core/battle_orchestrator.gd|quality/max-file-length = 1037
game/core/board_generator.gd|quality/max-branches|measure_inferability = 12
game/core/board_generator.gd|quality/max-function-length|_attempt = 51
game/core/board_generator.gd|quality/max-function-length|generate = 62
game/core/board_generator.gd|quality/max-function-length|measure_inferability = 64
game/core/board_generator.gd|quality/max-local-variables|generate = 14
game/core/board_generator.gd|quality/max-local-variables|measure_inferability = 13
game/core/board_generator.gd|quality/max-nesting-depth|measure_inferability = 5
game/core/board_generator.gd|quality/max-parameters|_finalize = 6
game/core/config_db.gd|quality/max-class-variables = 25
game/core/config_db.gd|quality/max-public-methods = 44
game/core/config_db_cross_validator.gd|quality/max-branches|cross_validate = 21
game/core/config_db_cross_validator.gd|quality/max-function-length|cross_validate = 107
game/core/config_db_cross_validator.gd|quality/max-local-variables|cross_validate = 24
game/core/config_db_cross_validator.gd|quality/max-nesting-depth|cross_validate = 5
game/core/config_db_resolver.gd|quality/max-branches|_resolve_progress = 16
game/core/config_db_resolver.gd|quality/max-branches|resolve_enemy_rowset = 12
game/core/config_db_resolver.gd|quality/max-function-length|_resolve_progress = 52
game/core/config_db_resolver.gd|quality/max-local-variables|_resolve_progress = 11
game/core/effect_engine.gd|quality/max-branches|validate_trigger_row = 14
game/core/effect_engine.gd|quality/max-function-length|_cond_ok = 52
game/core/effect_engine.gd|quality/max-function-length|rebuild = 55
game/core/effect_engine.gd|quality/max-local-variables|validate_trigger_row = 11
game/core/effect_engine.gd|quality/max-nesting-depth|_cond_ok = 5
game/core/effect_engine.gd|quality/max-nesting-depth|rebuild = 5
game/core/effect_engine.gd|quality/max-returns|_cond_ok = 19
game/core/effect_engine.gd|quality/no-else-return|unnecessary 'elif' after 'return'
game/core/battle_orchestrator.gd|quality/max-file-length = 1035
game/core/level_runner.gd|quality/max-class-variables = 30
game/core/level_runner.gd|quality/max-public-methods = 50
game/core/level_runner.gd|quality/max-returns|_enter_node = 7
game/core/meta_progression.gd|quality/max-public-methods = 31
game/core/meta_progression.gd|quality/max-returns|tree_can_buy = 8
game/core/minesweeper_rules.gd|quality/max-function-length|_do_dig = 53
game/core/node_map_generator.gd|quality/max-branches|_assign_types = 11
game/core/node_map_generator.gd|quality/max-branches|check_params = 12
game/core/node_map_generator.gd|quality/max-branches|validate_output = 34
game/core/node_map_generator.gd|quality/max-function-length|validate_output = 132
game/core/node_map_generator.gd|quality/max-local-variables|_add_forks = 12
game/core/node_map_generator.gd|quality/max-local-variables|_build = 15
game/core/node_map_generator.gd|quality/max-local-variables|validate_output = 22
game/core/node_map_generator.gd|quality/max-nesting-depth|_check_fork_rules = 5
game/core/node_map_generator.gd|quality/max-returns|validate_output = 7
game/core/reward_economy.gd|quality/max-function-length|roll_board = 52
game/core/reward_economy.gd|quality/max-local-variables|_skewed_cell_rows = 13
game/core/reward_economy.gd|quality/max-local-variables|roll_board = 11
game/core/save_manager.gd|quality/max-public-methods = 52
game/core/save_manager.gd|quality/max-returns|_peek_summary_at = 7
game/core/save_manager.gd|quality/max-returns|load_from_disk = 8
game/core/status_container.gd|quality/max-nesting-depth|apply_effect = 5
game/core/status_container.gd|quality/max-parameters|_new_instance = 7
game/core/status_container.gd|quality/max-returns|apply_effect = 9
game/core/treasure_items.gd|quality/max-branches|validate_use = 11
game/core/treasure_items.gd|quality/max-nesting-depth|validate_use = 5
game/core/unit_container.gd|quality/max-function-length|spawn = 68
game/core/unit_container.gd|quality/max-local-variables|spawn = 16
game/core/unit_container.gd|quality/max-parameters|spawn = 10
game/data/schemas/adventure_table.gd|quality/max-class-variables = 44
game/data/schemas/board_gen_table.gd|quality/max-branches|validate = 20
game/data/schemas/board_gen_table.gd|quality/max-function-length|validate = 67
game/data/schemas/board_gen_table.gd|quality/max-local-variables|validate = 16
game/data/schemas/enemy_table.gd|quality/max-branches|validate = 30
game/data/schemas/enemy_table.gd|quality/max-function-length|validate = 110
game/data/schemas/enemy_table.gd|quality/max-local-variables|validate = 28
game/data/schemas/forge_table.gd|quality/max-branches|validate = 30
game/data/schemas/forge_table.gd|quality/max-function-length|validate = 95
game/data/schemas/forge_table.gd|quality/max-local-variables|validate = 20
game/data/schemas/level_gen_params.gd|quality/max-branches|validate = 15
game/data/schemas/level_gen_params.gd|quality/max-function-length|validate = 59
game/data/schemas/level_gen_params.gd|quality/max-local-variables|validate = 18
game/data/schemas/meta_table.gd|quality/max-branches|validate = 14
game/data/schemas/meta_table.gd|quality/max-function-length|validate = 60
game/data/schemas/meta_table.gd|quality/max-local-variables|validate = 14
game/data/schemas/meta_tree_table.gd|quality/max-branches|validate = 26
game/data/schemas/meta_tree_table.gd|quality/max-function-length|validate = 86
game/data/schemas/meta_tree_table.gd|quality/max-local-variables|validate = 13
game/data/schemas/meta_tree_table.gd|quality/max-nesting-depth|validate = 5
game/data/schemas/reward_table.gd|quality/max-branches|validate = 30
game/data/schemas/reward_table.gd|quality/max-function-length|validate = 99
game/data/schemas/reward_table.gd|quality/max-local-variables|validate = 20
game/data/schemas/skill_table.gd|quality/max-branches|validate = 26
game/data/schemas/skill_table.gd|quality/max-function-length|validate = 76
game/data/schemas/status_effect_table.gd|quality/max-branches|validate = 12
game/data/schemas/treasure_item_table.gd|quality/max-branches|validate = 44
game/data/schemas/treasure_item_table.gd|quality/max-function-length|validate = 147
game/data/schemas/treasure_item_table.gd|quality/max-local-variables|validate = 26
game/data/schemas/treasure_item_table.gd|quality/max-nesting-depth|validate = 6
game/data/schemas/variation_table.gd|quality/max-branches|validate = 20
game/data/schemas/variation_table.gd|quality/max-function-length|validate = 58
game/presentation/battle_narrator.gd|quality/max-returns|bonus_card_text = 9
game/presentation/camp_flow_context.gd|quality/max-parameters|_init = 12
game/presentation/curio_flow_context.gd|quality/max-class-variables = 16
game/presentation/curio_flow_context.gd|quality/max-parameters|_init = 16
game/presentation/curio_interact_controller.gd|quality/max-class-variables = 18
game/presentation/hud_presenter.gd|quality/max-parameters|_refresh_out_of_battle = 6
game/presentation/hud_presenter.gd|quality/max-parameters|refresh = 8
game/presentation/hud_presenter.gd|quality/max-parameters|tune_sim_report = 10
game/presentation/main.gd|quality/max-class-variables = 49
game/presentation/playtest_logger.gd|quality/no-debug-print|debug 'print()' call found
game/presentation/tune_sim_controller.gd|quality/await-in-loop|'await' used inside a loop
game/presentation/tune_sim_controller.gd|quality/max-local-variables|run = 11
game/presentation/tune_sim_controller.gd|quality/no-debug-print|debug 'print()' call found
game/presentation/ui_assembler.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/ui_assembler.gd|quality/max-function-length|build_start_overlay = 83
game/presentation/ui_assembler.gd|quality/max-local-variables|build_start_overlay = 16
game/presentation/views/ap_bar_view.gd|quality/max-function-length|_init = 69
game/presentation/views/battle_end_overlay.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/battle_end_overlay.gd|quality/max-class-variables = 20
game/presentation/views/battle_end_overlay.gd|quality/max-function-length|_init = 81
game/presentation/views/battle_end_overlay.gd|quality/max-parameters|open_victory = 8
game/presentation/views/battle_log_view.gd|quality/max-branches|_format_row = 9
game/presentation/views/battle_log_view.gd|quality/max-function-length|_format_row = 68
game/presentation/views/battle_log_view.gd|quality/max-local-variables|_format_row = 21
game/presentation/views/battle_log_view.gd|quality/max-returns|_format_row = 13
game/presentation/views/battle_stage_view.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/battle_stage_view.gd|quality/max-function-length|_init = 97
game/presentation/views/battle_stage_view.gd|quality/max-returns|_enemy_portrait_tex = 9
game/presentation/views/board_cell_unit.gd|quality/max-branches|_draw = 29
game/presentation/views/board_cell_unit.gd|quality/max-class-variables = 31
game/presentation/views/board_cell_unit.gd|quality/max-function-length|_draw = 147
game/presentation/views/board_cell_unit.gd|quality/max-local-variables|_draw = 19
game/presentation/views/board_fx_view.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/board_cell_unit.gd|quality/max-class-variables = 30
game/presentation/views/board_view.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/board_view.gd|quality/max-branches|_paint_cell = 24
game/presentation/views/board_view.gd|quality/max-class-variables = 32
game/presentation/views/board_view.gd|quality/max-function-length|_paint_cell = 139
game/presentation/views/board_view.gd|quality/max-local-variables|_paint_cell = 22
game/presentation/views/board_view.gd|quality/max-public-methods = 27
game/presentation/views/board_zone_view.gd|quality/max-function-length|_init = 59
game/presentation/views/camp_overlay_view.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/camp_overlay_view.gd|quality/max-class-variables = 19
game/presentation/views/camp_overlay_view.gd|quality/max-function-length|_init = 149
game/presentation/views/camp_overlay_view.gd|quality/max-function-length|_rebuild_forge = 72
game/presentation/views/camp_overlay_view.gd|quality/max-function-length|_rebuild_tree = 61
game/presentation/views/camp_overlay_view.gd|quality/max-function-length|refresh_camp = 61
game/presentation/views/camp_overlay_view.gd|quality/max-local-variables|_init = 28
game/presentation/views/camp_overlay_view.gd|quality/max-local-variables|_rebuild_forge = 20
game/presentation/views/camp_overlay_view.gd|quality/max-local-variables|_rebuild_tree = 21
game/presentation/views/camp_overlay_view.gd|quality/max-local-variables|refresh_camp = 17
game/presentation/views/curio_pick_overlay.gd|quality/max-function-length|_init = 52
game/presentation/views/curio_pick_overlay.gd|quality/max-returns|_icon_for_id = 7
game/presentation/views/debug_overlay.gd|quality/max-class-variables = 17
game/presentation/views/debug_overlay.gd|quality/max-function-length|_build = 124
game/presentation/views/debug_overlay.gd|quality/max-local-variables|_build = 22
game/presentation/views/hero_info_panel_view.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/hero_info_panel_view.gd|quality/max-function-length|_init = 74
game/presentation/views/hero_info_panel_view.gd|quality/max-function-length|set_treasure_inventory = 57
game/presentation/views/hero_info_panel_view.gd|quality/max-local-variables|set_treasure_inventory = 13
game/presentation/views/legend_overlay.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/level_map_screen.gd|quality/max-branches|_draw_graph = 9
game/presentation/views/level_map_screen.gd|quality/max-class-variables = 21
game/presentation/views/level_map_screen.gd|quality/max-function-length|_draw_graph = 78
game/presentation/views/level_map_screen.gd|quality/max-function-length|_init = 135
game/presentation/views/level_map_screen.gd|quality/max-local-variables|_draw_graph = 27
game/presentation/views/level_map_screen.gd|quality/max-local-variables|_init = 21
game/presentation/views/settings_overlay.gd|quality/max-function-length|_build = 77
game/presentation/views/settings_overlay.gd|quality/max-local-variables|_build = 13
game/presentation/views/standee_body.gd|quality/allocation-in-loop|object allocation '.new()' inside a loop
game/presentation/views/standee_body.gd|quality/max-class-variables = 29
game/presentation/views/standee_body.gd|quality/max-function-length|_draw = 84
game/presentation/views/standee_body.gd|quality/max-local-variables|_draw = 26
game/presentation/views/ui_kit.gd|quality/max-local-variables|beams_rect = 13
game/presentation/views/ui_kit.gd|quality/max-parameters|_init = 6
game/presentation/views/ui_kit.gd|quality/max-parameters|bcard = 6
game/presentation/views/ui_kit.gd|quality/max-parameters|modal_shell = 6
game/presentation/views/ui_kit.gd|quality/max-public-methods = 26
game/presentation/views/standee_body.gd|quality/max-class-variables = 19
-8
View File
@@ -60,14 +60,6 @@
**状态**:待执行
#### gdstyle 基线死键 refresh 清账——152 键人工专用(2026-10-29 登记,来源=批次移交)
**实况**:迭代 41 两卡合回(合并提交 eb9bb537)后 S13 键账终局=16 键在册、全部基线内——构成:两卡之外 12 键(board_view 6/level_runner 3/battle_orchestrator 2〔类变量键为 architecture v1.22 S13 豁免第三条〕/adventure_runner 1)+呈现层两豁免(main 组合根类变量、tune_sim 测速 await——v1.22 豁免登记在册)+2 键「改善未消」(board_cell_unit/standee_body 类变量——gdstyle 对宿主内状态件成员按宿主展平计数,独立状态类形态被拆分边界纪律禁用)。基线文件 `tools/gdstyle_baseline.txt` 尚余 152 死键待清账:命令=`python tools/gdstyle_gate.py --refresh`(只降不升纪律、骤降守卫须 --force 显式确认,人工专用禁闸内自动重生成),执行时机归用户发令。证据=迭代 41 键账终局对拍(git 提交 eb9bb537 一线可考)。
**改动面**:工具代码
**状态**:待执行
#### 迭代 41 测试债修复——9 个套件失败与静态扫描三项红(2026-10-29 登记,来源=批次移交)
**实况**:证据=能力审计上电批(worktree 分支 `capgate-20261029`,提交 48e6e551)全量闸复跑,首次实测迭代 41 两卡合回(合并提交 eb9bb537,测试特许移交+直接合回,见 roadmap 收口注脚)后的代码面真实状态:①02 单元与集成测试 9 套件失败——`config_db_test`(`if` 块内声明的变量在块外引用,解析错误)、`config_db_fatal_oob_test`(退出码 2≠期望 1)、`table_structure_guard_test`(`_TreeSaveMock` 缺 `meta_state`)、`treasure_items_test`(`StubDB` 缺 `crossrun`)、`standee_fx_sweep_test`(`set_trans` 空引用)、`forge_workbench_test`(120 秒超时挂死)、`tree_requires_level_test`(`row_by_id` 在空基址)、`save_manager_domain_test`(缺 `_migrate_legacy_save`)、`theme_projection_test`(`CampOverlay` 缺 `_recent_list`);②09 静态扫描红项清单与基线不一致——S9 类型闸 24 处(迭代 41 拆出的新件缺 `# type-hint: ignore` 注解与参数类型)、S10 文件头 4 处(`config_db` 与三个域容器头注日期)、S11 注释禁用词 1 处(`adventure_table.gd:55`),而 gdstyle 与 S13 已随迭代 41 还清(基线两条存量红已过期,须随修复实测重生成)。本条目只修测试与注解债、不改游戏行为。本批合入经用户 2026-10-29 裁带红合并:能力审计上电批只动闸件与规约(代码域零新增红),代码域现存红全部由本条目承接。**2026-10-29 用户裁(「表结构版本」数值冲突甲案+孤儿常量可删)**:文档侧已随文档域直改落地——数据配置.md 删「表结构版本」调参行、依赖表与验收项中的版本常量表述,存档序列化.md 迁移链「表结构版本对齐」改「随表结构变化」,architecture.md 两处常量名改现役 `SAVE_FORMAT_VERSION`;代码侧 `game/core/config_db.gd` 的死常量 `SCHEMA_VERSION`(全仓零引用,值为 1,与文档原载 2 无对应)随本批删除。