Replies: 1 comment
-
✅ 验证结论(取证)把本仓(security)的
→ 即:已发布 0.2.1 即修复版,子仓升到 0.2.1 即可解除「带病」。 仍请主仓定夺(子仓不各自发明基线):
本仓 PR #8 暂保持 draft,待主仓拍板基线后转 ready。 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
背景
HashMatrixData/hashmatrix-security)HashMatrixData/hashmatrix)· libs-java / platform-parentio.hashmatrix:hashmatrix-starter-security(经platform-parent的 BOM 锁版本)现象
hashmatrix-security#4的 PR(CImvn -B -ntp clean verify)红,集成切片InfraConnectivityIT有 3 个既有「网关预认证」用例失败:X-User/X-Roles调业务 API即:网关下发的身份头在 CI 里未被认证(带身份仍按匿名 → 401)。本地
mvn clean verify却全绿——典型「works on my machine」。根因(已逐字节核实)
hashmatrix-starter-security:0.2.0同一版本号下存在两份不同制品:SecurityErrorAdvice/ 预认证317c7d8…~/.m2(mvn install装入)18d22a5…c592f3e…决定性证据:本地那份「0.2.0」与已发布 0.2.1 的安全类逐字节 SHA 完全一致(
SecurityFilterChainConfiguration/GatewayPreAuthFilter/SecurityProperties/SecurityAutoConfiguration全部相同)。→ 结论:0.2.1 的代码被以
0.2.0版本号mvn install进了部分开发者本地缓存,本地构建静默用上修复版 → 绿;CI 拉真·已发布 0.2.0(旧/缺修复)→ 红。且「本地 install 覆盖已发布 release」会持续掩盖该问题。影响面
凡 inherit
platform-parent:0.2.0(BOM 锁 starter 系列 0.2.0)的子服务,CI 都会踩到这份坏掉的已发布 0.2.0;本地若装过 0.2.1-as-0.2.0 则本地绿、CI 红,难以自查。讨论点 / 期望主仓定夺
0.2.0如何处理?(已发布 release 应不可变,建议勿原地重发 0.2.0,而是统一弃用并升 ≥0.2.1。)platform-parent的 BOM 是否把 starter 系列上锁到0.2.1?子仓应统一升 parent 到哪个版本作为 blessed 基线?mvn install以已发布 release 版本号覆盖本地缓存(迭代用-SNAPSHOT或新版本号),避免再次「本地绿 / CI 红」。引用
HashMatrixData/hashmatrix-securityPR feat(deploy): Helm umbrella + per-tenant chart + values 分层 + ESO + helm-deploy SKILL #8 的security CIrun(Build + test (unit + integration)步骤)HashMatrixData/hashmatrix#26(permit-paths 默认)、#27(repackage×failsafe)可能的落点
我方临时处置
security#4 的 PR 暂不合入(不带病开发),待主仓给出 blessed starter 版本后,本仓升 parent/依赖、CI 重跑转绿再合。
Beta Was this translation helpful? Give feedback.
All reactions