Files
jiapuapp/docs/superpowers/plans/2026-07-17-g01-empty-frame-transparency.md
T
2026-07-20 06:52:33 +08:00

67 lines
2.4 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.
# G01 Empty Frame Transparency Implementation Plan
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** 移除 G01 空状态的不透明面板底,并让透明框内的内容尺度与纵向节奏更饱满。
**Architecture:** 设计流水线从已确认的 `g01-empty-panel.png` 精确提取原双金线和四角纹样,输出透明 `g01-empty-panel-frame.png`。空状态只渲染该透明框;错误状态继续使用原不透明资产。
**Tech Stack:** uni-app、Vue 3、SCSS、PowerShell 合同测试、Chrome H5。
## Global Constraints
- 不生成或覆盖现有资产。
- 不改变空状态按钮、文案和跳转行为。
- 不使用多代理、worktree 或 Git 写操作。
- H5 证据不表示 Android/HBuilderX 或 G01 整页正式验收。
---
### Task 1: 空状态透明框
**Files:**
- Modify: `tests/g01-empty-state-contract.ps1`
- Modify: `pages/genealogy/g01-my-genealogies.vue`
**Interfaces:**
- Consumes: `list-slip-frame.png``.empty-panel``.empty-panel__content`
- Produces: 可重建的 `g01-empty-panel-frame.png``.empty-panel__frame` 透明框层和 `26rpx` `.empty-create-note`
- Produces: `1120rpx` 空状态框、垂直居中的内容组、放大的谱印/标题/说明/操作按钮,以及更明显的纵向节奏。
- [ ] **Step 1: 写入失败契约**
锁定空状态模板不再引用不透明面板、使用 `empty-panel__frame`,并设置 `1120rpx` 框高、垂直居中、`560×124rpx` 主操作与 `26rpx` 提示文字。
- [ ] **Step 2: 验证合同失败**
Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/g01-empty-state-contract.ps1`
Expected: FAIL,指出空状态仍使用不透明面板或缺少透明框。
- [ ] **Step 3: 实施最小模板与样式修改**
```scss
.empty-panel__frame {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
pointer-events: none;
}
.empty-create-note { font-size: 26rpx; line-height: 38rpx; }
```
- [ ] **Step 4: 验证**
Run:
```powershell
powershell -NoProfile -ExecutionPolicy Bypass -File tests/g01-empty-state-contract.ps1
powershell -NoProfile -ExecutionPolicy Bypass -File tests/g01-visual-contract.ps1
powershell -NoProfile -ExecutionPolicy Bypass -File tests/compile-audit.ps1
node tests/g01-empty-state-runtime-smoke.js http://localhost:5173
```
Expected: 全部 PASS。