58 lines
4.3 KiB
Markdown
58 lines
4.3 KiB
Markdown
# M62 逐页一致性矩阵
|
||
|
||
> 事实来源:2026-09-13 对 `runtime/entry/views/*.gd` 的静态审计(chrome 引用、
|
||
> 页面私有 `StyleBoxFlat`、共享令牌/模块引用)+ 已有页面探针清单。
|
||
> 用途:W5 逐页迁移的工作清单与验收对照。矩阵只记录事实,不在 W3 修改页面。
|
||
|
||
## 1. 现状矩阵
|
||
|
||
| 页面视图 | chrome 代 | 共享令牌 | 页面私有 `StyleBoxFlat` | 探针 | 墨迹检查 | 迁移优先级 |
|
||
| --- | --- | --- | --- | --- | --- | --- |
|
||
| `market_page_view` | `ABGPageChrome` + `ABGMarketChrome` + `ui/m52` 模块 | 是 | 10(旧 overlay 路径,`M62-I02`) | `m52_market_visual_probe` | **严格门 0 违规**(normal+longest,12 次扫描) | 保持(已验收) |
|
||
| `readiness_page_view` | `ABGPageChrome` + `UIIcon` | 是 | 2 | `m55_readiness_result_visual_probe` | 基线 **6 违规**(`ReadinessSummaryTitle` 超槽,`M62-I03`) | 保持(已验收);溢出待修 |
|
||
| `guild_page_view` | `ui/m52/guild_*` 模块 + `ABGEntryChrome` 混用 | 否 | 2 | `m53_guild_visual_probe` | 基线 **0 违规**(墨迹盒口径) | **W5 第二批(DEV-3R)** |
|
||
| `contract_choice_page_view` | `ABGEntryChrome` | 否 | 0 | `m54_contract_visual_probe` | 基线 **1 违规**(`ContractCreationFacts` 竖排溢出 3px,`M62-I04`) | **W5 第二批(DEV-3R)** |
|
||
| `battle_result_page_view` | `ABGEntryChrome` | 否 | 0 | `m55`(与 Readiness 同探针) | 基线 0 违规(在 m55 的 6 条中无 Result 项) | W5 第四批(DEV-5R) |
|
||
| `knockout_review_page_view` | `ABGEntryChrome` | 否 | 0 | 无独立探针 | 无 | W5 第四批(DEV-5R) |
|
||
| `reward_choice_page_view` | `ABGEntryChrome` | 否 | 0 | 无独立探针 | 无 | W5 第四批(DEV-5R) |
|
||
| `recovery_page_view` | `ABGEntryChrome` | 否 | 0 | 无独立探针 | 无 | W5 第四批(DEV-5R) |
|
||
| `party_line_page_view` | 页面自绘 + `UIFactory` | 否 | 3 | 无独立探针 | 无 | **W5 第三批(DEV-4R)** |
|
||
| `risk_board_page_view` | 页面自绘 + `UIFactory` | 否 | 3 | 无独立探针 | 无 | **W5 第三批(DEV-4R)** |
|
||
| `risk_commitment_page_view` | 页面自绘 + `UIFactory` + 1 图标 | 否 | 3 | 无独立探针 | 无 | **W5 第三批(DEV-4R)** |
|
||
| `company_roster_page_view` | `ABGEntryChrome` | 否 | 0 | 无独立探针 | 无 | W5 第五批(DEV-6R) |
|
||
| `recruit_detail_page_view` | `ABGEntryChrome` | 否 | 0 | 无独立探针 | 无 | W5 第五批(DEV-6R) |
|
||
| `recruit_review_page_view` | 页面自绘 | 否 | 0 | 无独立探针 | 无 | W5 第一批(DEV-2R) |
|
||
|
||
(Title / Boot / 首次设置 / Settings / 初始四选二由 `entry_shell` 与 `initial_company_page.gd` 构建;后者 M64-A/B 已迁入共享族,见下节。)
|
||
|
||
## 2. Entry 页面(`entry_shell.gd` 直接构建)
|
||
|
||
| 页面 | chrome | 备注 |
|
||
| --- | --- | --- |
|
||
| Boot | `ABGEntryChrome`(boot 变体) | DEV-1R 步骤 |
|
||
| 首次设置 | `ABGEntryChrome`(setup 变体) | DEV-1R 步骤;Setup v001 仅图片草稿 |
|
||
| Title | `ABGEntryChrome` + M52 标题背景 | DEV-1R 步骤;`M60-I04`(可恢复远征团禁用新游戏)在此处理 |
|
||
| Settings | `ABGEntryChrome`(settings 变体) | DEV-1R 步骤 |
|
||
|
||
## 2.5 墨迹检查口径(2026-09-13 修正)
|
||
|
||
首轮基线曾报出 Guild 18 处、Readiness 48 处"文字压图标"。复核为**误报**:
|
||
检查器当时比较的是标签**矩形**(居中标签的矩形本来就跨过左侧图标)。
|
||
现在按两段规则判定:
|
||
|
||
1. **墨迹盒**:按 `Font.get_string_size` + 对齐方式算出字形实际占据的盒子;
|
||
2. **图标判定**:仅当图标的**中心点落在墨迹盒内**才判为压字——这才是
|
||
M58-I10 那类"字压在图标上"的可见缺陷;"图标在文字上方"的堆叠牌
|
||
(如 Readiness 命令牌)不再误报。
|
||
|
||
修正后基线:Guild 0、Contract 1、Readiness+Result 6、Market 严格 0。
|
||
|
||
## 3. 结论与 W5 顺序
|
||
|
||
- 14 个页面视图中,**仅 2 个**在现行手绘族(Market、Readiness),其余 12 个
|
||
仍在旧代或页面自绘——这就是"每页各做各的"的可核对证据。
|
||
- 迁移顺序沿用已登记的玩家顺序(DEV-1R → DEV-2R → DEV-3R → DEV-4R →
|
||
DEV-5R → DEV-6R),每页一提交、一验收、一带墨迹检查探针。
|
||
- 每页迁移的验收附加项:本矩阵该行从"旧代"变为"`ABGPageChrome`(或
|
||
Market/其模块)",且页面私有 `StyleBoxFlat` 计数归零。
|