From f938844ef5ed5a52776bb6a56cabdf0d52832729 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A7=E6=A3=AE=E6=9E=97?= Date: Wed, 27 May 2026 18:33:13 +0800 Subject: [PATCH] =?UTF-8?q?docs(upgrade):=20=E7=B2=BE=E7=AE=80=20V3.2.9=20?= =?UTF-8?q?=E6=AE=B5=E4=B8=BA=E7=AE=80=E7=9F=AD=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 按 upgrade.md 风格惯例(参考 V3.2.7 / V3.2.8 段),把 V3.2.9 段从展开版 (带 ">" 引言段 + 每条 3-5 行类名 / 机制 / 详细技术解释)改成每条 1-2 行 的简短风格。 upgrade.md 是面向用户的版本说明,关心"哪些场景受影响 / 是否需要升级", 详细机制保留在 PR #102 / #106 描述里。 --- upgrade.md | 24 +++++------------------- 1 file changed, 5 insertions(+), 19 deletions(-) diff --git a/upgrade.md b/upgrade.md index 92163b8f..a84ce3c1 100644 --- a/upgrade.md +++ b/upgrade.md @@ -248,23 +248,9 @@ 7. 修复: 移除 codegen 未用的 spring-context 依赖(消除 CVE-2024-38820 / CVE-2025-22233) [v3.2.9_20260527] -> 安全 / 健壮性补丁版本:业务代码改动集中在支付宝渠道的安全加固和 install 脚本 -> 健壮性,与 V3.2.8 业务镜像基本兼容;其中支付宝异步通知验签升级建议受影响 -> 部署重新构建并发布 jeepay-payment 镜像。 -1. 修复: 支付宝授权回调 state 参数解析鲁棒性——AlipayBizController.redirectAppToAppAuth / - appToAppAuthCallback 不再直接 split("_")[0]/[1],抽出 AlipayKit.parseIsvAndMchAppIdState - 工具方法做长度 / 空值校验,配 mchAppService.getById 空校验,异常或被构造的 state - 不再触发 ArrayIndexOutOfBoundsException / NPE。 -2. 修复: 支付宝异步通知补业务字段交叉校验——AlipayChannelNoticeService.doNotice - 在验签通过后再校验 out_trade_no / app_id / total_amount 三字段与本地订单一致, - 消除多商户 / 沙箱与生产串扰 / 跨订单签名穿越场景下"看似合法但内容不匹配"通知 - 误处理风险。任一字段不一致 → 记 ERROR 日志 + 返回 SUCCESS 阻断重试 + 不更新订单状态。 -3. 修复: install.sh 在 git clone 源码后加 require_ok 断言,tag 不存在或拉取失败 - 时立即硬退出,不再出现"实际是 git clone 失败但报到下游 MySQL 配置步骤"的误报。 -4. 优化: conf/{payment,manager,merchant,devCommons/config}/application.yml 里 - spring.activemq 段统一注释掉。默认 isys.mq.vender 已切到 rocketMQ 后,activemq - starter 仍会去连 activemq5:61616 重试,本次清理后启动日志不再有此类后台连接噪音。 +1. 修复: 支付宝授权回调 state 解析鲁棒性,异常或被构造的 state 不再触发 NPE / 数组越界 +2. 修复: 支付宝异步通知补 out_trade_no / app_id / total_amount 业务字段交叉校验,消除多商户 / 跨订单签名穿越场景的误处理风险(建议受影响部署重新发布 jeepay-payment 镜像) +3. 修复: install.sh git clone 失败时立即硬退出,不再让后续步骤误报根因 +4. 优化: conf/*/application.yml 默认 MQ 切到 rocketMQ 后,统一注释掉 spring.activemq 段,消除后台连接 activemq5 的噪音 5. 文档: README 增加"AI 接入助手"段,指向 jeepay-skills 仓库 - (https://github.com/jeequan/jeepay-skills),供使用 Claude / Cursor / ChatGPT - 等 AI 工具接入 Jeepay 的开发者。 -6. 优化: install.sh 默认 jeepayRef 由 V3.2.8 跟进到 V3.2.9。 +6. 优化: install.sh 默认 jeepayRef 由 V3.2.8 跟进到 V3.2.9