Files
jiapuapp/docs/superpowers/plans/2026-07-16-genealogy-bottom-aligned-background.md
T
2026-07-20 06:52:33 +08:00

84 lines
3.3 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.
# G 类型页面 C 背景贴底自适应 Implementation Plan
> **For agentic workers:** 本计划由当前主代理在同一会话内执行;用户明确禁止多代理、worktree、git add、commit、push、reset 和 checkout。
**Goal:** 让现有 C 背景保持完整比例并贴底显示,把山水视觉集中到 G 页面下半区,减少加入申请区域的大块纯色空白。
**Architecture:** 保持 `GenealogyPageBackground.vue` 为 9 个 G 页面的唯一背景入口,不增加图片资产。只把现有图片从 `top: 0` 改为 `bottom: 0`,继续使用 `widthFix` 和满屏宣纸底色。
**Tech Stack:** uni-app、Vue 单文件组件、CSS、PowerShell 契约测试、Chrome CDP 截图。
## Global Constraints
- 只使用现有 `genealogy-page-background.png`,不生成或重做图片。
- 背景完整显示、左右不裁剪、不拉伸。
- 9 个活动 G 页面继续共用一个公共组件。
- 不改变 G01 内容、卡片、交互、路由或固定区/滚动区结构。
- 不使用多代理或 worktree,不执行任何 Git 写操作。
---
### Task 1: 背景贴底契约与最小实现
**Files:**
- Modify: `tests/genealogy-shared-background-contract.ps1`
- Modify: `components/GenealogyPageBackground.vue`
**Interfaces:**
- Consumes: 现有公共背景组件和 C 运行资产。
- Produces: `bottom: 0`、全宽、`widthFix` 的固定背景图层。
- [ ] **Step 1: 写失败契约**
在公共背景契约中要求 `.genealogy-page-background__art` 包含 `bottom: 0`,并禁止 `top: 0`
- [ ] **Step 2: 运行契约确认失败**
Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/genealogy-shared-background-contract.ps1`
Expected: 因当前组件仍使用 `top: 0` 而失败。
- [ ] **Step 3: 最小修改公共组件**
将图片定位从 `top: 0` 改为 `bottom: 0`,不修改资产、宽度、模式、层级或 9 个页面。
- [ ] **Step 4: 运行契约确认通过**
Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/genealogy-shared-background-contract.ps1`
Expected: `PASS G genealogy shared background contract`
### Task 2: 运行截图与回归
**Files:**
- Modify: `design-qa.md`
- Modify: `docs/交接记录.md`
- Modify: `docs/验收规划.md`
- Runtime evidence: `docs/design/screens/runtime/2026-07-16/`
**Interfaces:**
- Consumes: 贴底公共背景组件。
- Produces: 四档 G01 H5 内部候选截图和未验收状态记录。
- [ ] **Step 1: 四档真实截图**
在 320×568、360×640、360×800、412×915 下截取 G01,确认完整画面贴底、上方宣纸区被主要内容覆盖、下方申请区域不再大块空白。
- [ ] **Step 2: 源图与实现同轮对照**
同一比较输入内打开 C 源图与 412×915 实现截图,确认无裁剪、无拉伸、无横向溢出和文字对比度问题。
- [ ] **Step 3: 回归验证**
Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/genealogy-shared-background-contract.ps1`
Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/g01-visual-contract.ps1`
Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/full-page-visual-contract.ps1`
Run: G01、G03、G05、G06、G08-G10、G11-G12 现有运行 smoke。
Run: `git diff --check`
Expected: 所有命令退出码为 0;仍明确缺少 Android/HBuilderX 真机或模拟器复核。