Files
aetherbound-guild/docs/plans/M64_DEV2R_OPENING_MIGRATION.md
T

5.4 KiB
Raw Blame History

M64 · DEV-2R 初始四选二迁移计划

活跃计划(CURRENT_CHECKPOINT.md 指向本文件)。当前只有 M64-A 处于 IN_PROGRESS,产品代码改动必须属于该步。

目标与停止点

把玩家点「开始远征」后的初始四选二页(runtime/entry/initial_company_page.gd, choice / inspect / compare / review / error 五个模式)从旧入口 chrome (ABGEntryChrome 的 company_* 变体 + 页面私有 StyleBoxFlat)迁移到共享手绘族 (ABGUI_Tokens + PageChrome),保持节点名与 intent 不变。

停止点:五个模式在权威尺寸 1280x720(zh/en)下都渲染在共享材质上、墨迹门 0 违规、 建团提交与触摸回归全过、docs/EVIDENCE_LEDGER.md 与 checkpoint 更新、推送到 远端。招募检视页(recruit_review_page_view.gd)不在本计划,留给下一个计划。

视口政策(2026-09-13 owner 二次收紧)

只做 1280x720 一种横屏尺寸:设计、实现、测试、探针、窗口覆盖全部同值; CONTENT_SCALE_ASPECT_KEEP 保比例。已删除本页与入口页的按尺寸分叉;后续页面 迁移不得再引入第二套构图。旧 P9.x/p10_2 测试的其它尺寸属各自历史,逐步清理。

现状实测(2026-09-13)

区域 现状材质 处理
页面底 画布背景 + shade;%sFrame MarginContainer 为空 加共享 card 页框 + face 实测开口内缩
页眉 _label 私配色(#213744 / #38535c)+ 白阴影 令牌字号 + PageChrome.INK/INK_SOFT
候选卡 InitialCompanyArt 肖像 + scrim + 名称/职业标签 保留艺术;文字改令牌;卡面加共享 card 底
选择标记 私有 StyleBoxFlat 圆角 + ✓/◇ 文本 共享 plate + pip(菱形,填充=已选)
页脚/动作 _button → company_primary/secondary/utility/tool + 图标 command_plate(primary/secondary) + UIIcon/共享图标位
不可用态 _set_button_disabled 改标签色 令牌 COLOR_MUTED,禁用 plate 状态
inspect/compare/review 同 helper 家族 随 helper 迁移,逐模式探针核对

步骤

  1. M64-A:基础层与按钮族。COMPLETE (2026-09-13),attempt m64-opening 20260913T191418Z-79907。
    • _build_base 加共享页框 + face 内缩;_label 改令牌字号/颜色基线;
    • _button/_chrome 改 PageChrome(保留 Chrome/ButtonLabel 节点名);
    • 选择标记改共享 plate + pip;
    • 探针:m63_entry_visual_probe.gd 增加 initial-company choice/review 捕获, 权威尺寸严格 ink 0 违规。
    • 验收:ABG_DEV2_TOUCH_OK、ABG_DEV2_COMMIT_OK、ABG_DEV2_FULL_FLOW_OK (或既有 dev2 触摸/提交流程 marker)、ABG_DEV1_ENTRY_TOUCH_OK、 ABG_M63_ENTRY_INK_OK;marker 恰好一次,strict 0。
  2. M64-B:COMPLETE (2026-09-13),attempt m64-boards 20260913T192023Z-84611。inspect/compare/review 三模式的板面细节(属性/特性/对比 表、复核摘要)按实测槽位复排,逐模式捕获核对。
  3. M64-C:COMPLETE (2026-09-13)——矩阵/账本/checkpoint 更新 + owner 展示(本仓已推送 HEAD==upstream)。

M64-B 结果(inspect / compare / review)

  • inspect:三列(肖像/职业与属性/特性)改 SIZE_SHRINK_CENTER 纵向居中,内容集中在卡片中部, 不再顶部聚集、底部空一大片;全部文字令牌化(ink/ink_soft/danger)。
  • compare:去掉收益行的 EXPAND_FILL 拉伸(此前把收益推到中部、装备掉到底部), 两列各自紧凑并在卡面居中;表头/属性/特性/收益/代价/装备层级稳定。
  • review:复核摘要与未选列表沿用 M64-A 的令牌化结果,本步未再改结构。
  • 源绑定 attempt m64-boards 20260913T192023Z-84611:DEV2 choice/touch/commit/full-flow、 DEV1 入口触摸、M63 探针(四模式 22 扫描 0 违规)全过,marker 恰好一次,strict 0。

Frozen scope

  • 玩法/经济/存档语义不变;节点名、intent id、mode 值与信号不变;
  • initial_company_draft_service.gd 不改;
  • 其他页面不改(Guild 属 DEV-3R)。

Acceptance checks(M64-A)

  • runtime/tests/dev2/initial_company_touch_test.gd → ABG_DEV2_TOUCH_OK
  • runtime/tests/dev2/initial_company_commit_touch_test.gd
  • runtime/tests/dev2/initial_company_full_flow_touch_test.gd
  • runtime/tests/dev1/entry_flow_touch_test.gd → ABG_DEV1_ENTRY_TOUCH_OK
  • runtime/tools/m63_entry_visual_probe.gd → ABG_M63_ENTRY_INK_OK scanned>=16 violations=0
  • 权威尺寸截图(choice/review,zh/en)经人眼检查并展示给 owner

Issue register

  • M64-I01 OPEN:本页 _label 全部私配色;迁移按基线替换,若某标签在共享纸上 对比不足,记录并改令牌而不是恢复私配色。
  • M64-I02 OPEN(观察):招募检视页 recruit_review_page_view.gd 仍为页面自绘, 留给 DEV-2R 后续计划。
  • M64-I03 观察:选择标记的 ✓/◇ 文本将改共享 pip,需确认已选状态在 130% 文字下仍可读。
  • M64-I04 已做:project.godot 窗口覆盖 844x390 → 1280x720;窗口化触摸测试 统一 KEEP + 1280x720。此前 EXPAND + 844x390 是多尺寸错位的根因。
  • M64-I05 OPEN(登记):旧 P9.x / p10_2 测试与未迁移页面仍含按尺寸分支, 随各自迁移轮(DEV-3R..6R)清理,不得新增。