miniprogram-v2 方案 A 执行报告 · 2026-09-21(补注册已完工页)

义父裁定:「1、我选 A;2、这些(三项人工)我早就做完了,不要再提」。
执行人:波波。提交 a3ed85d9 入 main。

〇、结论

已按方案 A 执行完毕:提审包 39 → 45 页,19 处入口全部恢复可用,首页功能完整。全套门禁绿,随时可提交微信审核。

项执行前执行后
注册页3945
主包体积805,858 B(787.0 KB)925,397 B(903.7 KB)(+118.4 KB)
首页可用分类入口仅「住宿」住宿 / 交通 / 餐饮 / 门票 / 行程 / 需求单
真死链19 处(已隐藏)0

一、补了哪 6 页、为什么

页面依据完整度核验
category-transport(交通)义父 A 裁定 5 页之一ts 122 行 / 2 处后端调用 / 51 元素 / 无占位
category-restaurant(餐饮)同上ts 172 行 / 2 处 / 52 元素
category-ticket(门票)同上ts 178 行 / 2 处 / 61 元素
journey(行程)同上ts 102 行 / 2 处 / 102 元素
my-demands(需求单)同上ts 192 行 / 2 处 / 56 元素
demand-detail(需求详情)连带补,非裁定内ts 222 行 / 5 处 / 94 元素

为什么多补了 demand-detail:my-demands 一旦进包,列表页点详情就会跳向未注册的 demand-detail —— 不补等于把死链从首页挪到列表页。这是 A 方案的必然连带,不是擅自加页。


二、做的四件事

  1. 补注册 6 页(app.json 末尾追加,首页仍为第一项)。
  2. 恢复 19 处入口:去掉 09-21 加的 hidden="{{true}}"。其中 home 的「行程」入口此前连路由键都被摘了(点了静默无反应),已把 journey 键补回路由表,现在真正可跳。
  3. 15 个页面的 goPage 统一装 inPack 兜底(幂等):由 utils/pack-routes.ts 依据 app.json 生成白名单,未注册目标直接静默 return。今后无论谁摘页,都不会再产生"点得动但跳不了"的入口。
  4. 收敛点:demand-detail 内的「拼单支付」入口指向 joint-payment(未注册、不在 MVP),隐藏该入口,不再继续补页 —— 否则补一页又暴露下一页,收不住。

三、又一次判据自纠

复查真死链时用了宽松正则,把路由表里根本没被用到的常量全算成跳转,输出「308 条」的假警报。改用严格判据(只统计 wx.navigateTo / redirectTo / reLaunch / switchTab 的真实 url 参数)后,真值 0。

(同日上一次自纠:路径未归一化导致「31/31 全死链」假阳性。两次都是同一个毛病——先信了脚本,没先审判据。)


四、执行后真值

检查项真值判据
app.json 注册页45—
提审就绪总扫退出码 00 = 干净
静态演示页 / 用户可见占位 / 伪造凭证0 / 0 / 00
路由门禁 L1(点击必失败)00
路由门禁 L2(已兜底登记)0—
真死链(严格判据)00
WXML 语法 / 裸属性0 坏 / 0 裸0
WXSS 语法0 坏0
主包体积925,397 B(903.7 KB)上限 2 MB,余量约 1.12 MB
编译零 errorcli preview

五、三项人工(义父已确认完成,不再列入待办)

支付链路真机实测、mp 后台《用户隐私保护指引》、request 合法域名 https://api.kailashi.cn 登记 —— 义父 09-21 明确表示早已完成。已从回执的「需求 / 风险」段、每日自动体检的常驻提示中全部撤除,后续不再重复提示。

六、仍存在但不阻断

  1. status-timeline 数据源语义错(接的是 user/footprints,后端无 timeline 端点)—— 属补契约,未改。
  2. order-refund-preview 数据源已通但无入口(退款非 MVP 核心)。
  3. 45 页之外仍有 49 个孤儿页目录打进包(packOptions 为空),暂不影响提审。