Files
jiapuapp/docs/design/2026-07-14_页面与状态合并审计.md
T
2026-07-14 17:36:43 +08:00

6.7 KiB
Raw Blame History

页面与状态合并审计

审计日期:2026-07-14 结论状态:G02→G01、G04→G03 已获用户授权并完成实施;其余四项仍是待实施建议。

1. 审计范围与证据

  • 审计时 pages.json 实际登记 58 条路由;用户确认后已依序删除 G02、G04、G07 独立路由,当前由 tests/full-page-visual-contract.ps1 约束为 55 条路由
  • G02 原先替换的是 pages/genealogy/g02-empty-genealogies 通用壳;该路由与 G01 的空态重复,现已收敛为 G01 的 ?state=empty,不再进入独立页面验收。
  • 已在本轮重新捕获并审视 A01、A02、A04、A05、A06、G01 的 360×800 真实运行图:screens/runtime/2026-07-14/route-audit/accepted-route-audit-360x800.png
  • G01 源码在 hasGenealogiesv-else 分支拥有“新建家谱/搜索并申请加入”两条动作;现已由 forceEmptyState 统一所有权。默认态前后对比为 screens/runtime/2026-07-14/G01-default-before-after-360x800.png,空状态为 G01-empty-after-360x800.pngG01-empty-after-412x915.png,均已获用户审美确认。
  • 其余 40 个仍渲染 ModulePage 的路由尚无独立视觉实现;其合并判断依据目前是规划中的任务语义、页面中文用途注释与目录状态,不将通用壳截图误当成最终交互。

2. 判断标准

保留独立路由,当用户进入的是不同的主任务、需要独立返回历史、可被深链/通知直接打开,或需要承载未保存的完整表单。

合并为同页状态,当差异仅是加载/空/失败/权限、查询前后、同一表单的步骤,或同一详情内的媒体预览与上传结果。状态由页面数据或查询参数驱动,不另建占位路由。

3. 已验收页面复核

已验收路由 结论 理由
A01 启动/登录引导 保留独立页 品牌入口、微信登录、注册入口与协议确认,和登录表单不是同一步。
A02 账号登录 保留独立页;现有双 Tab 正确 账号密码/短信验证码已经在同页状态切换,无需拆为 A03。
A04 注册账号 保留独立页 需要完整新用户表单、协议确认与返回链。
A05 重置密码 保留独立页 手机验证、验证码与两次密码确认是独立安全任务。
A06 登录状态 保留一个路由;现有六状态正确 normal/failed/restricted/register-pending/wechat-* 已在同页状态配置中,未为每种错误新增页面。
G01 我的家谱 保留根页;合并 G02 已具备列表、加载和空态分支,G02 不应是第十二个家谱路由。

结论:已验收页面中没有需要为了减少页面而合并的认证页;A02 与 A06 已经是正确的“同页多状态”实现。唯一明确重复的是 G02→G01。

4. 全量路由建议

模块 现有路由/单元 保留为独立任务 合并为同页状态 路由数变化
认证 5 A01、A02、A04、A05、A06 A02 Tab;A06 六状态均保留在各自页面内部 5 → 5
家谱 9 G01、G03、G05、G06、G08、G09、G10、G11、G12 已完成 G07→G06 搜索结果/无结果收敛 9 → 9
世系树 8 T01、T03、T04、T05、T06、T07 T02→T01 的横屏/空/加载失败状态;T08→T03 的已故/隐私/无权状态 8 → 6
家族内容 10 F01、F02、F03、F04、F05、F06、F07、F08、F10 F09→F08 的图片预览/上传/失败状态;F03 评论/删除确认和 F10 服务未开放也只作本页状态 10 → 9
人物与礼仪 11 R01--R11 R02 编辑、R04 新增/详情/删除确认、R07 新建/编辑均已应作为各自路由内部状态 11 → 11
消息 2 N01、N02 N01 空态、N02 已读均为内部状态 2 → 2
个人中心 10 M01--M10 M01 登录态、M03 安全态、M09 空订单均为内部状态;M04/M05 保持独立,尤其 M05 符合用户已确认的“安全设置按钮跳转绑定手机号页面” 10 → 10
总计 55 尚余 3 个重复路由合并 55 → 52

5. 建议的 52 条路由主表

合并清单(高置信)

  1. 已删除 G07 路由;G06 同页管理初始搜索、结果列表与无结果,点选后进入 G08。G06 截图与自动验证已完成,等待用户审美确认。
  2. 删除 T02 路由;T01 同页管理树正常态、小屏横屏提示、无成员、加载与失败。
  3. 删除 T08 路由;T03 同页管理正常成员、已故、隐私隐藏、无权限。T07 仅保留目录和搜索结果。
  4. 删除 F09 路由;F08 同页管理照片墙、预览、选择上传、上传中、失败重试。

暂不合并的边界

  • 不把 A01/A02、A04/A05、M04/M05 合成万能认证/安全页:这些是不同主任务,且 M05 的独立跳转是用户已确认的产品要求。
  • 不把 G08/G09 合并:一次申请表单与“我的全部申请记录”是不同任务和信息密度。
  • 不把 T04/T06、F02/F06、R03/R05/R08--R11 合并:对象、数据结构与返回历史不同;可复用表单组件,但不应强行共享一个路由。
  • F10 是否并入 F01 的媒体 Tab 不足以从当前规划判断,暂保留 F10 路由;待家族首页信息架构定稿后再评估,不计入 52 的高置信精简。

6. 已完成的 G02、G04、G07 收敛

G02 不进入独立视觉验收。用户已授权实施后,独立页面、G02 契约/冒烟测试、专属截图与“等待验收”文档已删除;最终 ImageGen 面板已改名为 g01-empty-panel.png,归属 G01 state=empty,现已获用户确认。G04 也已删除;其字段、校验与真实保存行为归属 G03 step=ancestor,并已获用户继续授权通过。G07 也已删除;公开检索的初始、结果和无结果均归属 G06,结果点选只进入 G08。tests/g01-empty-state-contract.ps1tests/g03-create-flow-contract.ps1tests/g06-search-flow-contract.ps1 与对应 Chrome 冒烟测试保护三条收敛链路;G01 默认态前后对比和 G06 前后对比证明已验收状态没有可见回退,G06 本身仍待用户审美确认。

7. 推荐执行顺序(G06 三态等待审美确认)

  1. G02→G01、G04→G03、G07→G06 已完成,路由总数已从 58 变为 55;G01 两种状态与 G03 双步骤已获用户确认,G06 三态等待审美确认。
  2. 用户已授权连续推进;下一项实施 T02→T01,路由数变为 54。
  3. 在世系树完成 T01、T03 的独立设计时同步吸收 T02、T08,不先为状态壳单独生成资产。
  4. 在相册 F08 设计时同步吸收 F09;其余模块按“先任务页、后状态”推进。

除已获用户确认的 G02→G01 外,未经用户确认,本审计不改动其余路由、已验收页面或现有未提交内容。