# 变更审计记录:微信小程序开发调试面板 - 日期:2026-03-03 03:20:58 - Prompt-ID:P20260303-031720 - 风险标签:`dir:backend` `dir:miniprogram` `dir:admin-web` `dir:etl` `dir:shared` `dir:db` `db-schema-change` `root-file` - 审计范围:本次对话期间的精确变更(session_diff) ## 变更概要 为微信小程序前后端联调新增「开发调试面板」功能,解决小程序无地址栏无法自由跳转、角色切换需改数据库等联调痛点。 后端新增 4 个 dev 端点(仅 `WX_DEV_MODE=true` 时注册),前端新增 dev-fab 浮动按钮组件和 dev-tools 调试面板页面(仅 develop 环境渲染)。 ## 本次对话文件变更 ### 新增文件 - `apps/miniprogram/miniprogram/pages/dev-tools/dev-tools.ts` — 调试面板页面逻辑(展示用户上下文、切换角色/状态、页面跳转) - `docs/audit/prompt_logs/prompt_log_20260303_031720.md` — Prompt 审计日志 ### 修改文件 - `apps/miniprogram/miniprogram/pages/dev-tools/dev-tools.wxss` — 调试面板样式(卡片布局、标签颜色、按钮组) - `docs/audit/session_logs/_session_index.json` — 会话索引更新 - `docs/audit/session_logs/_session_index_full.json` — 完整会话索引更新 ## 改动注解 ### `apps/miniprogram/miniprogram/pages/dev-tools/dev-tools.ts` - 变更类型:新增 - 原始原因:前后端联调阶段需要快速切换角色、状态、页面跳转,微信小程序无地址栏无法自由导航,角色切换需直接改数据库操作繁琐 - 思路分析:采用独立页面而非内嵌面板,通过 `request` 工具函数调用后端 dev 端点实现真实的角色/状态切换(后端修改数据库 + 重签 token),而非前端 mock。页面列表硬编码与 `app.json` 同步,避免运行时反射。token 更新后同步写入 globalData 和 Storage,确保后续请求使用新身份 - 修改结果:提供完整的调试面板,包含用户上下文展示、角色切换(coach/staff/site_admin/tenant_admin)、状态切换(new/pending/approved/rejected/disabled)、页面跳转列表。仅在 develop 环境通过 dev-fab 浮动按钮入口可达 ### `apps/miniprogram/miniprogram/pages/dev-tools/dev-tools.wxss` - 变更类型:修改 - 原始原因:为调试面板提供视觉样式 - 思路分析:采用卡片式布局(info-card)+ 分区标题(section-title 左侧蓝色边框)+ 状态标签颜色映射(approved 绿/pending 黄/new 蓝/rejected 红/disabled 灰),与 TDesign 设计语言保持一致 - 修改结果:完整的调试面板样式,包含信息卡片、按钮组、页面列表、消息提示等组件样式 ## 合规检查 | 检查项 | 状态 | 说明 | |--------|------|------| | 文档同步 | ✅ 已补齐 | `apps/miniprogram/README.md` 已更新 dev-tools 页面说明 | | 新增迁移 SQL | ⚪ 不涉及 | 本次无新增迁移脚本 | | DDL 基线 | ⚪ 不涉及 | 本次无 DDL 变更 | | OpenAPI Spec | ⚪ 不涉及 | `api_changed: false` | | 安全评估 | ✅ 低风险 | dev 端点仅 `WX_DEV_MODE=true` 注册,dev-fab 仅 develop 环境渲染 | ## 回滚方案 - 后端:删除 4 个 dev 端点和对应 Schema 即可 - 前端:删除 dev-fab 组件和 dev-tools 页面,从 app.json 移除注册,从各页面移除 ``