Commit Graph
83 Commits
Author SHA1 Message Date
Zhou Weidong 810d9fc2dc docs(plans): 下发 K20 客户端视觉统一任务 2026-10-19 10:14:15 +08:00
Zhou Weidong 131f0c4e06 docs(plans): 记录 K19 网络文案修复 2026-10-19 10:01:18 +08:00
Zhou Weidong 28d2679b83 docs(plans): 记录 K19 账号中心交付回执 2026-10-19 09:56:22 +08:00
Zhou Weidong 6b5e70e554 docs(plans): 增加 K19 账号中心实施计划 2026-10-19 09:46:27 +08:00
Zhou Weidong 5c93ba9131 docs(plans): 下发 K19 账号中心接口对接任务 2026-10-19 09:44:41 +08:00
Zhou Weidong d3b347aa09 fix(backend): 合并 K16 注册限流配置返工 2026-10-17 23:40:37 +08:00
Zhou Weidong 21e0d7f383 docs(plans): 记录 K16 返工与限流往返验证 2026-10-17 23:40:22 +08:00
Zhou Weidong 35d92c0148 fix(backend): 后台注册限流配置优先并保留注入兜底 2026-10-17 23:39:48 +08:00
Zhou Weidong 903e7db085 docs(api): 合并注册限流配置键名修正 2026-10-17 23:35:38 +08:00
Zhou Weidong f68cd78f8b docs(api): 修正注册限流配置键名 2026-10-17 23:35:31 +08:00
Zhou Weidong 575187a678 docs(plans): 合并 K16 注册限流后台配置回执 2026-10-17 23:33:39 +08:00
Zhou Weidong c1c3c1ce9a docs(plans): 记录 K16 注册限流后台配置回执 2026-10-17 23:33:28 +08:00
Zhou Weidong 1493fce319 merge: 同步 K16 最新测试到回执分支 2026-10-17 23:32:47 +08:00
Zhou Weidong 5b7be2e28c merge: 合并注册限流缺省回退测试 2026-10-17 23:31:22 +08:00
Zhou Weidong f4003edc58 test(backend): 覆盖注册限流缺省回退 2026-10-17 23:31:11 +08:00
Zhou Weidong 56300754b3 merge: 合并 K16 后台注册限流配置修正 2026-10-17 23:29:40 +08:00
Zhou Weidong f1aaaee814 fix(backend): 改为后台配置注册限流阈值 2026-10-17 23:29:25 +08:00
Zhou Weidong 78fb99530d merge: 合并 K16 注册限流配置化 2026-10-17 23:22:51 +08:00
Zhou Weidong 758eb69f55 feat(backend): 注册限流阈值改为可配置 2026-10-17 23:22:28 +08:00
Zhou Weidong 3403a521eb docs(plans): 增加 K16 注册限流配置化计划 2026-10-17 23:16:51 +08:00
Zhou Weidong 461fb8ea15 docs(plans): K16 改为后台可配置口径 2026-10-17 23:16:31 +08:00
Zhou Weidong 6c966af5b2 docs(plans): 下发 K16 注册限流配置化任务 2026-10-17 23:15:24 +08:00
Zhou Weidong 81fcd9a817 docs(plans): 合并 K15 首页服务器修复回执 2026-10-17 23:14:08 +08:00
Zhou Weidong 8926f9b5f3 docs(plans): 记录 K15 首页服务器修复回执 2026-10-17 23:13:46 +08:00
Zhou Weidong 10794fa615 docs(plans): 合并 K14 客户端文档回执 2026-10-17 23:04:52 +08:00
Zhou Weidong 2490c78473 docs(plans): 记录 K14 客户端文档回执 2026-10-17 23:04:29 +08:00
Zhou Weidong 538a7df258 docs(plans): 下发 K14 客户端文档任务 2026-10-17 22:59:07 +08:00
Zhou Weidong 8b4e0ff5ca docs(plans): 合并 K13 开发服务器地址回执 2026-10-17 22:55:30 +08:00
Zhou Weidong 70b9823d5b docs(plans): 记录 K13 开发服务器地址回执 2026-10-17 22:55:10 +08:00
Zhou Weidong 6405dff7c5 docs(plans): 增加 K13 开发服务器地址实施计划 2026-10-17 22:49:58 +08:00
Zhou Weidong 1a5951ce98 docs(plans): 下发 K13 开发服务器地址设置 2026-10-17 22:48:10 +08:00
Zhou Weidong cd1c2bc34d docs(plans): 合并 K12 首页与空态视觉回执 2026-10-17 22:45:36 +08:00
Zhou Weidong b70449b232 docs(plans): 记录 K12 首页与空态视觉回执 2026-10-17 22:45:20 +08:00
Zhou Weidong e49664ce55 docs(plans): 增加 K12 首页与空态视觉修订计划 2026-10-17 22:40:28 +08:00
Zhou Weidong 87a37e987a docs(plans): 下发 K12 首页与空态视觉修订 2026-10-17 22:39:37 +08:00
Zhou Weidong fe2e179bdc docs(plans): 合并 K11 首页三列网格回执 2026-10-17 22:35:38 +08:00
Zhou Weidong 73292ba74d docs(plans): 记录 K11 首页三列网格实施回执 2026-10-17 22:35:19 +08:00
Zhou Weidong f97574b57e docs(plans): 增加 K11 首页三列网格实施计划 2026-10-17 22:30:39 +08:00
Zhou Weidong 2a06190cfe docs(plans): 下发 K11 首页三列网格任务 2026-10-17 22:29:26 +08:00
Zhou Weidong aa54e03d52 docs(plans): 合并 K10 统一空态回执 2026-10-17 21:56:48 +08:00
Zhou Weidong 3b2afc9f47 docs(plans): 记录 K10 统一空态实施回执 2026-10-17 21:56:35 +08:00
Zhou Weidong f1d56b1040 docs(plans): 增加 K10 统一空态实施计划 2026-10-17 17:39:28 +08:00
Zhou Weidong 3f84bc6568 docs(plans): 下发 K10 统一空态任务 2026-10-17 17:38:25 +08:00
Zhou Weidong deb6111419 docs(plans): 合并 iOS 依赖修复回执 2026-10-17 17:31:29 +08:00
Zhou Weidong a1f88b6553 docs(plans): 记录 iOS 依赖编译修复回执 2026-10-17 17:31:19 +08:00
Zhou Weidong b049db0162 docs(plans): 合并 K9 首页剧目网格回执 2026-10-17 17:25:48 +08:00
Zhou Weidong a5dad549f8 docs(plans): 记录 K9 首页剧目网格实施回执 2026-10-17 17:25:36 +08:00
Zhou Weidong 496d27334a docs(plans): 增加 K9 首页剧目网格实施计划 2026-10-17 17:21:33 +08:00
Zhou Weidong b434f6594b docs(plans): 下发 K9 首页剧目网格改造 2026-10-17 17:20:35 +08:00
Zhou Weidong ad13692b5d docs(plans): 合并 K8 登录页视觉回执 2026-10-17 17:15:53 +08:00
Zhou Weidong b5aed111a0 docs(plans): 记录 K8 登录页视觉实施回执 2026-10-17 17:15:43 +08:00
Zhou Weidong e7c11c3163 docs(plans): 增加 K8 登录页视觉实施计划 2026-10-17 17:09:29 +08:00
Zhou Weidong c33e6cdc9d docs(plans): 下发 K8 登录页视觉重设计 2026-10-17 17:07:56 +08:00
Zhou Weidong d51167550f docs(plans): 合并真机缺陷修复回执 2026-10-17 17:00:59 +08:00
Zhou Weidong ea97c8bc1b docs(plans): 记录首页轮播与观看历史真机修复回执 2026-10-17 17:00:47 +08:00
Zhou Weidong 9c6aaed645 docs(plans): 合并 K7 实施回执 2026-10-17 16:51:33 +08:00
Zhou Weidong c43604d725 docs(plans): 记录 K7 轮播与通知实施回执 2026-10-17 16:51:22 +08:00
Zhou Weidong f36fea083b docs(plans): 下发 K7 轮播图与站内信任务 2026-10-17 16:45:08 +08:00
Zhou Weidong 3afd4c6709 docs(plans): 合并 K6 缺陷修复回执 2026-10-17 16:42:23 +08:00
Zhou Weidong 0aeb9086d6 docs(plans): 记录 K6 导航与观看历史修复 2026-10-17 16:42:10 +08:00
Zhou Weidong c8c085b4e0 docs(plans): 合并 iOS SPM 修复回执 2026-10-17 16:33:11 +08:00
Zhou Weidong 7374045065 docs(plans): 记录 iOS SPM 构建修复与限制 2026-10-17 16:32:55 +08:00
Zhou Weidong 927d6ceab8 docs(plans): 合并 K6 实施回执 2026-10-17 16:17:28 +08:00
Zhou Weidong ab0d69914f docs(plans): 记录 K6 登录导航与震动回执 2026-10-17 16:17:16 +08:00
Zhou Weidong 93af19e548 docs(plans): K6 增加点击震动反馈要求 2026-10-17 16:07:05 +08:00
Zhou Weidong 79a1194257 docs(plans): 下发 K6 登录与底部导航 UI 任务 2026-10-17 16:04:11 +08:00
Zhou Weidong 61634415a9 docs(plans): 合并 K5 实施回执 2026-10-17 15:59:24 +08:00
Zhou Weidong 1bf0f654fb docs(plans): 记录 K5 主题与印尼语实施回执 2026-10-17 15:59:14 +08:00
Zhou Weidong f05476f6db docs(plans): 下发 K5 克莱因蓝主题任务 2026-10-17 15:51:04 +08:00
Zhou Weidong 61e85ab501 docs(plans): 合并 K3 修复回执 2026-10-17 15:30:07 +08:00
Zhou Weidong c2bd096ef3 docs(plans): 补记 K3 举报错误透传修复 2026-10-17 15:29:59 +08:00
Zhou Weidong 22f458606d docs(plans): 合并 K3 互动任务回执 2026-10-17 15:27:53 +08:00
Zhou Weidong 969538e6c9 docs(plans): 记录 K3 互动实施与验收回执 2026-10-17 15:27:42 +08:00
Zhou Weidong a0156ee946 docs(plans): 下发 K3 互动任务 2026-10-17 15:09:12 +08:00
Zhou Weidong 4a658fc67e docs(plans): 补齐 K2 真机验收与门禁回执 2026-10-17 15:02:28 +08:00
Zhou Weidong 698bb78aeb docs(plans): 记录 K2 实施与验收回执 2026-10-17 14:50:51 +08:00
Zhou Weidong 4c4f64323a fix(worker): 补齐 prod 密钥与 CORS 映射以通过密钥校验
worker 的 application-prod.yml 没把 JWT_ADMIN_SECRET / JWT_APP_SECRET /
MEDIA_SIGNATURE_SECRET / CORS_ALLOWED_ORIGINS 映射成 fruitshorts.* 属性,
ProdSecretGuard 读到空值即拒绝启动,compose 里 worker 一直 Restarting。

按两个入口同一口径补齐映射:不写 dev 默认值,漏配仍 fail-fast;
并显式置 signature-required=true,与两个入口一致。

门禁:mvn test 全模块 BUILD SUCCESS(0 失败 0 错误,1 项 ffmpeg smoke 按用例设计跳过)。
2026-10-16 14:32:24 +08:00
Zhou Weidong 8b46e535c5 fix(deploy): 修正 PG18 数据卷挂载路径为 /var/lib/postgresql
docker-library/postgres 自 18 起把数据目录改成 /var/lib/postgresql/<major>/,
卷继续挂 /var/lib/postgresql/data 会被 entrypoint 判定为"残留数据"并拒绝启动;
表现为 db 容器反复 Restarting,依赖它的三个服务一起起不来。

改挂父目录后本地实测:docker compose up -d 正常,db 进入 healthy。
2026-10-16 14:32:24 +08:00
Zhou Weidong db897d50d6 feat(commerce): Google Play 票据校验闭环(校验→建单→发权益 + 幂等/防重放)
为什么:风险清单 R-03 把支付票据校验列为上线阻塞项;/app/orders/verify 此前只有 disabled
占位,且 verifyAndDeliver 要求订单事先存在——而 IAP 没有下单接口,接了校验也走不通。

- 新增 GooglePlayStoreVerifier(校验 purchaseState/productId/orderId)+ StorePlatforms(平台归一化)
- 新增 GooglePlayPurchaseClient 端口与 HttpGooglePlayPurchaseClient:JDK HttpClient + 服务账号
  RS256 JWT 换 token,不引入 Google SDK 依赖;token 按过期缓存
- StoreVerifier 实现由 fruitshorts.commerce.store.verifier 选择,默认 disabled,无凭据时对外行为不变
- OrderService 补齐闭环:校验通过后按 (platform, storeProductId) 找商品建单、写 store_receipt 审计、
  发金币并推进到 DELIVERED;幂等键 (platform, storeTransactionId) 与唯一索引双保险
- 防重放:重复提交同用户返回既有订单且不再发币;票据已被他人使用返回 403;校验失败不写任何数据
- 凭据只走配置/环境变量(packageName + service account JSON),不入库不提交
- 契约同步 docs/api-phase1.md §1.8;金额微单位换算与回退价有单测覆盖
- 实测:mvn test 54 条全过(commerce 13 + app-api 41,M2 的 37 条未被打红);
  两个入口 package 通过;默认 disabled 端到端返回 200003 且 orders 表零行
2026-10-16 11:03:33 +08:00
Zhou Weidong 27e689c771 fix(config): 修复合并后 app-api 重复的 springdoc 配置键 2026-10-16 10:52:17 +08:00
Zhou Weidong efe8af6c9b docs: 补全接口契约遗漏,逐条展开系统管理与内容接口并补充 watch-history/creators 账号/media 详情 2026-10-16 10:23:25 +08:00
Zhou Weidong 66e6fc1555 feat: app-api 启用 Swagger 在线接口文档 (springdoc /doc.html) 2026-10-16 10:13:47 +08:00
Zhou Weidong 35be37c193 style: 全量补充作者标识 // Author: fruit.com.cn 2026-10-16 00:01:53 +08:00