遗留项与待办记录

用途:集中记录因「本次先跑通主流程、能力后补」而暂缓的事项,避免后续遗漏。
维护约定:新增或关闭条目时,同步更新本文件的「更新时间」与条目状态。
更新时间:2026-10-12

状态说明

  • 未处理:已识别,尚未排期/动工。
  • 预留:代码或配置已就位,但能力未真正接入(可随时启用)。
  • 已处理:已完成,保留记录以便追溯(关闭时标注完成时间)。

一、占位 / 预留实现(代码已就位,能力未真正接入)

L1 短信验证码为占位实现 —— 未处理

  • 现状:ruoyi-auth 的 SmsSender 默认实现为 PlaceholderSmsSender,仅将验证码写入 Redis 并打印日志(形如 [SMS] phone=138****0000 code=123456),**不真实下发短信**。
  • 影响:注册、验证码登录两条链路在开发/测试环境可直接用日志中的验证码走通;生产不可用。
  • 后续:接入真实短信服务商(阿里云/腾讯云等),新增 SmsSender 实现类并在 nacos 配置签名/模板/密钥即可,业务代码无需改动。
  • 相关:ruoyi-auth/src/main/java/com/ruoyi/auth/service/sms/PlaceholderSmsSender.java

L2 服务商端微信能力为预留配置 —— 预留

  • 现状:wechat.partner-miniapp.*(appid=wx9fff7ff7a44e155a、secret)已写入 nacos 与 doc/nacos/dev/ruoyi-auth-dev.yml,但**无对应 @ConfigurationProperties 与消费方**,代码暂不读取。
  • 影响:服务商端(hugray-partner-miniapp)目前不提供手机号一键登录 / wx.login 相关能力,配置处于空转状态。
  • 后续:服务商端接入微信能力时启用该配置并新增消费方。
  • 相关:doc/nacos/dev/ruoyi-auth-dev.yml

二、已知风险 / 待核实

L3 C 端令牌与后台令牌共用同一套网关校验 —— 未处理

  • 现状:C 端会员(account_user)以 SysUser 作载体装入 LoginUser 签发令牌,令牌校验与后台 sys_user 令牌完全共用。
  • 风险:user_id 存在与 sys_user 数值撞号的极小概率。
  • 缓解:后台接口均有 @RequiresPermissions/@RequiresRoles,对 permissions/roles 为空的 C 端令牌一律拒绝,风险可控。
  • 后续(可选):引入令牌分级(如 C 端令牌加类型前缀并在网关区分校验)。
  • 相关:设计文档《用户端_登录注册_20261012》2.5 节

L4 运行中 nacos 与仓库 seed sql 命名空间不一致 —— 未处理

  • 现状:仓库 seed 脚本 hugray-server/sql/ry_config_20260918.sql 的 nacos 租户为 public,而服务 bootstrap.yml 使用命名空间 c75c831e-0570-4a9f-b8de-aba9087a5f37(hugray)。本次已同步写入**运行中的 nacos**(hugray 命名空间)。
  • 影响:若仅用 seed sql 重建 nacos,hugray 命名空间下的配置(网关路由/白名单、微信配置等)不会自动恢复。
  • 后续:将 seed/归档脚本与运行中 nacos 的命名空间对齐,或补充 hugray 命名空间的配置导出。
  • 相关:doc/nacos/dev/ruoyi-gateway-dev.yml、doc/nacos/dev/ruoyi-auth-dev.yml

L5 微信 getPhoneNumber:fail no permission —— 待核实

  • 现状:前端调用 getPhoneNumber 返回 detail: { errMsg: "getPhoneNumber:fail no permission" }。
  • 判断:多为开发者工具运行 AppID、公众平台「手机号获取」权限/成员权限/隐私声明未配置所致,非代码问题。
  • 后续:在微信开发者工具确认运行 AppID,并在公众平台核对主体、接口开通、成员权限、隐私声明。
  • 相关:hugray-user-miniapp/pages/login/index.vue