# T01 世系树状态收敛 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:** 将 T02 小屏、空数据和失败提示收敛进 T01,保留世系节点交互并以位图资产替代 CSS 表面。 **Architecture:** T01 读取 `state` 和 `genealogyId`,由一个 `treeState` 唯一管理四种同页状态。T02 文件与路由删除;所有节点/画布/底部信息表面复用现有完整不透明位图承载。 **Tech Stack:** uni-app、Vue 3、页面内模拟数据、现有完整位图资产、PowerShell 静态契约、Chrome DevTools Protocol 冒烟。 ## Global Constraints - 仅修改 T01/T02 收敛涉及的文件,不触碰已验收页面可见效果。 - 位图承载完整画布、节点、信息条、边框和装饰;CSS 只负责布局、文字、状态与交互。 - 不执行 Git 暂存、提交、推送、重置或 worktree 操作。 ### Task 1: TDD 契约(RED) - [x] 创建 `tests/t01-tree-state-contract.ps1` 与 `tests/t01-tree-state-runtime-smoke.js`。 - [x] 静态契约要求 T02 路由/文件不存在,T01 含 `tree|landscape|empty|error`、三类完整位图、T03/T04 跳转和无 CSS 表面;运行冒烟要求三种查询状态及 `genealogyId=1001` 节点跳转。 - [x] 运行两个新测试,确认当前实现因 T02 仍存在和 T01 缺少状态节点而红灯。 ### Task 2: 位图资产复用 - [x] 审视现有完整资产后,复用 `g03-create-flow-panel.png`、`g06-search-input-wide.png` 与 `application-status-card.png`,不生成语义重复资产。 - [x] 在 P00 登记 T01 与后续 T 页面引用。 ### Task 3: T01 同页状态与 T02 删除(GREEN) - [x] 修改 `pages/tree/t01-tree-overview.vue`:由状态和页面内模拟成员确定 `treeState`;画布、节点、信息条使用完整位图;保留 T03/T04/T06/T07 跳转。 - [x] 从 `pages.json` 删除 `pages/tree/t02-tree-states`,删除文件并移除 `page-catalog.js` 的 `t02`。 - [x] 运行新契约和运行冒烟转绿。 ### Task 4: 收口 - [x] 全量路由契约和 A03 路由计数更新为 54;当前文档同步 T02→T01 已完成。 - [x] 截图并审视 T01 tree/landscape/empty/error 与 412×915 tree;相关静态契约和冒烟通过。最终全量 `git diff --check` 留到所有模块候选完成前统一执行。