diff --git a/docs/superpowers/plans/2026-07-17-g01-loading-state.md b/docs/superpowers/plans/2026-07-17-g01-loading-state.md
new file mode 100644
index 0000000..9ad5230
--- /dev/null
+++ b/docs/superpowers/plans/2026-07-17-g01-loading-state.md
@@ -0,0 +1,73 @@
+# G01 Loading State 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 的空心金圈加载态替换为项目统一的 `AppLoading` 朱砂“谱”印加载视觉。
+
+**Architecture:** `AppLoading.vue` 继续作为加载视觉的唯一维护入口;G01 只导入组件、传入“正在整理家谱”文案并保留现有辅助说明。旧 `loading-seal` 模板和样式在同一轮移除。
+
+**Tech Stack:** uni-app、Vue 3、SCSS、PowerShell 契约测试、Chrome H5。
+
+## Global Constraints
+
+- 只修改 G01 加载分支及其契约,不改变正常、空、失败状态。
+- 不生成新资产,不修改 `AppLoading.vue` 的全局样式。
+- 不使用多代理、worktree 或 Git 写操作。
+- H5 证据不代表 Android/HBuilderX 或 G01 整页正式验收。
+
+---
+
+### Task 1: G01 统一加载态
+
+**Files:**
+- Create: `tests/g01-loading-state-contract.ps1`
+- Modify: `pages/genealogy/g01-my-genealogies.vue`
+
+**Interfaces:**
+- Consumes: `AppLoading.vue` 的 `text: String` 属性。
+- Produces: G01 `state=loading` 下的 `.state-panel--loading .app-loading` 运行结构。
+
+- [ ] **Step 1: 写入失败契约**
+
+契约必须断言 G01 导入并渲染 ``,保留辅助说明,同时不存在 `loading-seal`。
+
+- [ ] **Step 2: 验证契约失败**
+
+Run: `powershell -NoProfile -ExecutionPolicy Bypass -File tests/g01-loading-state-contract.ps1`
+
+Expected: FAIL,指出 G01 尚未使用 `AppLoading`。
+
+- [ ] **Step 3: 实施最小修改**
+
+```vue
+
+
+ 请稍候,家族记忆正在归卷。
+
+```
+
+并加入:
+
+```js
+import AppLoading from "@/components/AppLoading.vue";
+```
+
+删除 `.loading-seal` 样式;仅为加载辅助说明设置不重复全局 Loading 的间距。
+
+- [ ] **Step 4: 验证**
+
+Run:
+
+```powershell
+powershell -NoProfile -ExecutionPolicy Bypass -File tests/g01-loading-state-contract.ps1
+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。
+
+- [ ] **Step 5: 视觉复核**
+
+在 412×900 与 320×568 捕获 `state=loading`,确认朱砂谱印清晰、内容居中、长背景连续、底栏不遮挡且没有横向溢出。
diff --git a/docs/交接记录.md b/docs/交接记录.md
index 86784a4..a6beb4c 100644
--- a/docs/交接记录.md
+++ b/docs/交接记录.md
@@ -1,12 +1,26 @@
# 家谱 APP 换机交接记录
-> 最后更新:2026-07-16
+> 最后更新:2026-07-20
> 用途:更换电脑、重新打开 Codex/GPT 后的唯一接管入口。
> 当前阶段:只做页面样式与视觉流程验收;不对接接口,不做功能验收。
-> 当前施工停点:52 个活动页面均已有基础内部 H5 样式候选;A06 另行封存并保留实现。用户下一审核页仍是 G01,当前没有未施工页面,后续按用户逐页审核意见返工。
+> 当前施工停点:六个模块基准 G01、T07、F01、R01、N01、M01 已由用户明确通过;T01 已完成纵向世系轴候选,留待 2026-07-21 首项人工审核;其余页面已按所属基准完成夜间批量收敛,继续保持 `[~]` 等待人工/Android 验收。最新事实与换机提示见 `docs/夜间批量收敛交接_2026-07-20.md`。
+
+## 0. 2026-07-20 最新接管覆盖说明
+
+本节覆盖下方仍保留的 2026-07-19 历史停点;不要再从 G01 正常态重新开始。
+
+- 活动路由仍为 52 条,A02 已合并,A06 仍封存保留。
+- 用户已明确通过 6 个模块基准:G01、T07、F01、R01、N01、M01。`docs/验收规划.md` 应统计为 6 个 `[x]`、46 个 `[~]`。
+- T01 按用户最终选择的方案 1 完成纵向世系轴候选,明早首先审核 T01;用户未明确通过前不得标 `[x]`。
+- F/R/N/M 的 28 个普通任务页已统一到模块母版并删除重复编号介绍块;F02、T03—T06、T08、G03、G08—G12 已收敛旧跨模块不透明面板引用。
+- 5173 服务运行,52 个页面和 2 个共享组件的 Vite 转换为 54/54;当夜 Chrome 未开放 9222,因禁止新开第二个浏览器/标签页,没有生成虚假的 CDP、截图或四档响应式通过结论。
+- 旧资产命名审计与历史截图数量上限仍是已知失败项;用户明确要求保留全部现有资产、截图、母版和候选,不得通过删除文件或放宽阈值处理。
+- 新会话先完整阅读 `docs/夜间批量收敛交接_2026-07-20.md`,再复核当前工作区和浏览器状态。
## 1. 接管后先复述的准确停点
+- 2026-07-19 新会话审批停点已单独记录在 `docs/新会话审批交接_2026-07-19.md`:G01 正常列表态已经打开但尚未通过;后续必须复用同一个 Chrome 标签页,逐个展示正常、空、加载、失败、添加家谱弹层、切换家谱弹层、独立滚动和响应式状态,每次等待用户结论后再切换。
+
- `pages.json` 当前实际注册 **52 条活动路由**;A06 已从路由表移除但源码保留。
- A02 已删除并合入 A01;不存在需要保留的 A02 兼容入口。
- `docs/验收规划.md` 当前活动页统计为:**52 个待审核、0 个已验收、0 个返工标记、0 个冻结**;A06 属于封存页,不计入这些数量。
diff --git a/static/assets/modules/family/opaque/family-page-background-long.png b/static/assets/modules/family/opaque/family-page-background-long.png
new file mode 100644
index 0000000..853e445
Binary files /dev/null and b/static/assets/modules/family/opaque/family-page-background-long.png differ
diff --git a/static/assets/modules/genealogy/transparent/g01-add-sheet-background-v1.png b/static/assets/modules/genealogy/transparent/g01-add-sheet-background-v1.png
new file mode 100644
index 0000000..a6310f1
Binary files /dev/null and b/static/assets/modules/genealogy/transparent/g01-add-sheet-background-v1.png differ
diff --git a/static/assets/modules/profile/opaque/profile-page-background-long.png b/static/assets/modules/profile/opaque/profile-page-background-long.png
new file mode 100644
index 0000000..f99b986
Binary files /dev/null and b/static/assets/modules/profile/opaque/profile-page-background-long.png differ
diff --git a/static/assets/modules/profile/transparent/m01-profile-menu-frame.png b/static/assets/modules/profile/transparent/m01-profile-menu-frame.png
new file mode 100644
index 0000000..26acc1d
Binary files /dev/null and b/static/assets/modules/profile/transparent/m01-profile-menu-frame.png differ
diff --git a/static/assets/modules/records/transparent/r01-person-name-card.png b/static/assets/modules/records/transparent/r01-person-name-card.png
new file mode 100644
index 0000000..26acc1d
Binary files /dev/null and b/static/assets/modules/records/transparent/r01-person-name-card.png differ
diff --git a/static/assets/modules/tree/opaque/tree-page-background-long.png b/static/assets/modules/tree/opaque/tree-page-background-long.png
new file mode 100644
index 0000000..155aecc
Binary files /dev/null and b/static/assets/modules/tree/opaque/tree-page-background-long.png differ