Files
aetherbound-guild/docs/MVP_QUALITY_CLOSURE.md
T

77 lines
5.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# MVP 质量收官报告(DEV 迁移系列:M63–M68)
> 状态:**机器门全绿**(源绑定 attempt `mvp-panorama` `20260914T043127Z-94972`,12 个
> required marker 各恰好 1 次、strict 0)。本文件记录本轮系列的口径、成果与遗留,
> 交付 owner 做**人工验收**决策。机器通过不等于产品验收(AGENTS.md:automated tests
> 只是机器门,页面保持 OPEN 直到 owner 在实机尺寸上看过)。
## 1. 统一口径(本轮系列冻结的规则)
- **单一权威尺寸 1280×720**:`project.godot` 窗口覆盖 + `CONTENT_SCALE_ASPECT_KEEP`;
所有当前世代测试/探针单尺寸;不新增第二套构图。
- **共享族**:`PageChrome`(`header_band`/`dock_band`/`command_plate`/`utility_plate`/
`card`/`pip`/`progress`/`selection_ring`)+ `UITokens`(颜色/字号/间距/圆角)+
`UIFactory`(按钮/图标/通知)。页面不再持有私有 `StyleBoxFlat` 或裸字面配色/字号。
- **内容必须落进牌面**:`page_view.inset_safe_to_card_face()`(entry_shell 同名 helper)——
M63-C/M65-C/M67 三次实拍教训后固化为共享方法。
- **严格墨迹门**:每个迁移批次配一个探针(单尺寸 × zh/en × static/dynamic/final),
违规 `quit(1)` 且 marker 报真实计数;正式尝试必须 `--require-marker` 且 marker 恰好一次。
- **源绑定尝试**:`tools/run_test_attempt.py`(干净 HOME/cache/TMP、进程组清理、严格诊断)。
## 2. 系列成果(按轮)
| 轮 | 内容 | 提交 | 尝试 |
| --- | --- | --- | --- |
| M63 A–D | Boot / 首次设置 / Title / Settings 迁共享族(DEV-1R);修 `M60-I04` 可恢复远征团禁用新游戏 | `828d25c1`…`0e34bd83` | `m63-*` 4 次 |
| M64 A–B | 开局四选二页(choice/inspect/compare/review)+ 单尺寸收敛(DEV-2R) | `9d74e5dc`…`b40bf377` | `m64-*` 2 次 |
| M65 A–D | 公会 / 委托 / 装备检视(DEV-3R);`M62-I02` 删死 overlay;装备检视入口缺陷修复 | `b094986b`…`07012172` | `m65-*` 4 次 |
| M66 A–C | 队伍线 / 风险板 / 风险承诺(DEV-4R)+ 严格探针 | `e35da763` | `m66-party-risk` |
| M67 A–C | 结果 / 恢复 / 击倒复检 / 奖励(DEV-5R)+ 严格探针;新增 `inset_safe_to_card_face`、`COLOR_SUCCESS` | `dddc79ba` | `m67-result-recovery` |
| M68 A–D | 花名册 / 成员详情 / 解雇审查 / 合同返回(DEV-6R)+ 严格探针;`M62-I03` 结案;单尺寸清扫 | `466d07d6`/`221d1d3b` | `m68-company-return`/`m68-collapse` |
| 收官 | 全量严格门 | `3a45965a` | `mvp-panorama` `20260914T043127Z-94972` |
本轮系列共 **12 个源绑定 attempt**,每个迁移轮 1–4 次尝试;所有轮次以绿门收口。
## 3. 全量门(`mvp-panorama` 实测)
| 门 | 结果 |
| --- | --- |
| 入口探针 `m63` | `ABG_M63_ENTRY_INK_OK scanned=22 violations=0`(boot/setup/title/settings/opening ×2 语言) |
| 公会 `m53` | `scanned=2 violations=0`(members fixture) |
| 委托 `m54` | `scanned=2 violations=0` |
| 市场 `m52/m59` | `scanned=6 violations=0`(招募 normal/longest + 装备) |
| 队伍线/风险 `m66` | `scanned=18 violations=0` |
| 结果/恢复/击倒/奖励 `m67` | `scanned=24 violations=0` |
| 花名册/详情/解雇/返回 `m68` | `scanned=24 violations=0` |
| 准备检查 `m55` | `scanned=6 violations=0`(严格单尺寸,原基线 6 违规已修) |
| 契约测试 | 15 个 foundation 页面/组件测试 + m50/m51 全过 |
| 入口/全流程触摸 | `ABG_DEV1_ENTRY_TOUCH_OK`、`ABG_DEV2_FULL_FLOW_TOUCH_OK` |
另有一次全量 foundation 扫描(41 个测试)结果:**39 过 / 2 既有失败**(见 §4 `M68-I03`)。
## 4. 遗留 issue 清单(全部有证据、按范围归属)
| ID | 状态 | 内容 | 归属 |
| --- | --- | --- | --- |
| `M65-I04` / `M68-I02` | OPEN | dev6 三个测试(`roster_detail`/`contract_return`/`equipment_growth`)缺 `dismissal_receipts` / `contract_return_receipts` / `equipment_receipts` 及 roster shell 入口 | DEV-6 **玩法/服务**步骤 |
| `M68-I03` | OPEN | `m52_candidate_ledger_component_test`("profession and detail do not overlap")与 `m52_market_slot_adapter_test`(几何契约)为既有失败(HEAD worktree 复核),不在现行链 | 组件级测试的过期几何断言 |
| `M64-I05` / `M67-I03` | OPEN(已定论) | `tests/p9_*` 历史里程碑测试仍用旧多尺寸/`EXPAND`;属历史证据,非现行门 | 独立清理步骤(如需统一) |
| `M63-I06` | OPEN | Settings 滑杆仍用令牌色直绘(非共享材质) | 设置页后续轮或收尾 |
| `M60-I03` | RESOLVED | 已招募卡占位 → owner 选方案 A(状态牌 + 降调,保持可查看) | — |
| `M62-I01`…`I05` | RESOLVED | 逐页一致性矩阵的迁移项全部结案(I02 删死 overlay、I03 槽加宽、I04 事实槽 56) | — |
## 5. 仍需 owner 的验收(机器门之外)
1. **实机目视**:以 owner 的显示设备按 1280×720 逐页查看(本轮提供 panorama 拼图 + 每页
static/dynamic/final 三视图证据在 attempt artifact 内)。
2. **P9.0R3 之外的战斗/结算手感**:本轮只做材质/文字/槽位,未改玩法与节奏。
3. **打包/发布步骤**(按 AGENTS:需 owner 明确授权)。
## 6. 证据索引
- 尝试 artifact:`/private/tmp/aetherbound-guild-test-evidence/mvp-panorama/20260914T043127Z-94972/`
(134 张 PNG + `command.log` + `attempts.jsonl`)
- 台账:`docs/EVIDENCE_LEDGER.md`;阶段:`CURRENT_CHECKPOINT.md`
- 各轮计划与实测审计表:`docs/plans/M63_*.md` … `docs/plans/M68_*.md`
- 共享规则:`docs/runtime/M52_SHARED_UI_RULES.md`