feat(taobao): add native mini program with shared backend
Preserve H5 flows while adding Taobao identity, native capture, reports and isolated local development. Fix canceled province selection and expired-session logout. Record passing local regressions, two pre-existing H5 assertion failures and pending platform validation.
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
# 本地 Review 与提交说明(2026-10-19)
|
||||
|
||||
范围:当前淘宝小程序新增代码、共享后端的淘宝账号与渠道扩展、原有冲突解决结果。仅本地提交,不部署或修改线上服务。
|
||||
|
||||
## Review 结果
|
||||
|
||||
- Git 无未合并条目;检查了账号来源隔离、网关验签和登录 challenge、照片分片、异步检测、本人历史报告、相机权限及页面离开后的取消流程。
|
||||
- 修复淘宝档案页的省市选择:更换省份后取消,再打开时,城市列表必须恢复到已确认省份,不能残留取消的草稿城市。
|
||||
- 修复淘宝会话过期后的退出:401 表示会话已失效,清理本地身份和照片/报告状态并完成退出;网络失败仍提示错误,不伪称服务端已撤销会话。
|
||||
- 本轮新增修复均在淘宝目录。H5 页面、样式、评分及报告文案源文件未修改;共享后端扩展已做 H5 回归。
|
||||
- 当前没有真实淘宝开发账号。后续使用独立淘宝账号,由公司主账号管理员添加为目标应用的开发成员。
|
||||
|
||||
## 验证
|
||||
|
||||
- `cd taobao; npm test`:16 项通过,覆盖接口集成、身份与历史隔离、分片和任务、相机流程、权限、报告模型、省市取消恢复、过期退出。
|
||||
- `npm run check:shared`:淘宝 vendor 中评分、报告呈现和文案与 H5 一致。
|
||||
- `npm run test:h5`:四组浏览器回归通过(游客隐私、HTTPS `/state/` 微信授权及退出、报告持久化及后台 CSV、异步侧脸图层)。仅固定样本,不消耗付费接口。
|
||||
- 补查 10 个 H5 单元脚本:8 个通过,2 个已有失败。通过脚本为 accounts、wrinkle-jobs、wrinkle-views、weighted-total、display-age-recommendation、care-selection、acne-three-view、vita-independent。
|
||||
- 已有失败 `h5/test/tone-dark-circle.js:13`:预期透亮感 9.1,现有实现返回 9.25。使用 HEAD 评分源码及测试可复现,本轮未改评分。
|
||||
- 已有失败 `h5/test/factual-copy.js:9`:旧文案基线仍要求轮廓文案包含眼袋/黑眼圈描述,当前文案已移除;执行 HEAD 测试同样失败,相关源文件及旧基线本轮均未改动。保留问题供后续核对,未为本次提交放宽旧断言或修改 H5 行为。
|
||||
|
||||
## 继续开发前的已知边界
|
||||
|
||||
- 真实淘宝账号授权、AppKey/Secret、云网关及返回大图限制未实测。
|
||||
- Android/iOS 相机权限、照片方向、原生 canvas、cover-view 与视觉对齐待 IDE/真机验收。
|
||||
- 相机仍为三步手动拍摄,未迁移 H5 实时姿态与自动拍摄。
|
||||
- IDE 官方本地云应用调试使用 `test` 环境并需要初始化时传递启动 options;当前代码默认本机直连模拟代理,正式外部服务配置为 `online`。拿到开发权限后需接入并验证 IDE 调试链路,不能将本地样本通过等同于真实平台通过。
|
||||
- 商品跳转需要真实商品 ID 和平台能力配置。
|
||||
@@ -0,0 +1,15 @@
|
||||
# 淘宝小程序当前架构(2026-10-18)
|
||||
|
||||
本轮用户确认:允许改共享后端,必须保持现有H5功能和显示一致;淘宝使用自己的账号体系与历史报告;共用后端并区分渠道;先本地验证,不动线上服务器。
|
||||
|
||||
此前V1.0方案中的三项判断已更正:
|
||||
|
||||
- 外部服务使用淘宝云网关,不把支付宝 `my.request` 直接作为正式网络方案。
|
||||
- 淘宝账号来自网关签名校验后的平台OpenId,不沿用H5匿名游客,不接收客户端自报身份作为登录凭据。
|
||||
- 网关有限时、限体积,采用64KiB分片上传和服务端异步检测任务,而不是三张base64合并发送并等待45秒。
|
||||
|
||||
运行方式、模块职责、认证流程、共享规则同步、测试和真实平台待验收项统一维护在 [../README.md](../README.md),以实际代码和该说明为准。
|
||||
|
||||
后端主入口仍为 `h5/server.js`:H5继续使用原路由;淘宝扩展位于 `h5/lib/taobao-routes.js`、`taobao-auth.js`、`taobao-session.js`。账号使用同一个服务端存储,微信和淘宝分别限定会话来源与报告所有者。
|
||||
|
||||
H5页面、样式、前端脚本和素材本轮均未改动。渠道字段仅由服务端路由确定,H5游客即使传 `channel: taobao` 也不改变不留存行为。
|
||||
Reference in New Issue
Block a user