7643094f1d10b26f6d1c88f4e55ff8914c8b7a0a
共享内核下沉(跨模块共享的"身份/组织/安全"类型进 common) - AdminUserEntity/AdminUserMapper、ShopManageGroupEntity/ShopManageGroupMapper → common - AdminAuthSupport(33 文件 17 模块引用)、JwtService、AuthProperties、DeviceSessionPolicy → common/security(原先放在 admin/auth 里,任何模块用一次就多一条跨模块边) 端口化(消费方声明接口、数据方实现) - task/spi:ResultFileJobHandler 新增 resolveResultFileUrl 钩子(BRAND 特例从 Worker 收回); Worker 改为调用 handler.onSuccess(该钩子历史上从未被调用,withdraw 的收尾靠 Worker 里的 WITHDRAW 特判硬编码——现两者都归位,task 侧不再 import withdraw/brand) - admin/spi/UserSecretCleanupPort(删除用户级联清理密钥)、notification/spi/ProxyBalancePort (代理余额探测)、shopdatacrawl/spi/ManagedShopNamesPort(可管店铺名) - shopkey/spi/GroupDeletionGuardPort:分组删除守卫改由各业务模块实现(invalidasin/dedupe 两个实现), shopkey 不再直连它们的 Mapper 棘轮与量化(2026-09-14 实测) - ArchitectureBoundaryTest:task→业务 119 → **0**(基线钉死为 0,新增跨模块动作必须走 task/spi) - 跨模块 import 行数 650 → 605;双向依赖对 8 → **0**(usersecret/permission/shopkey 三向环、 task↔withdraw、task↔brand、admin↔permission、admin↔usersecret、dedup↔shopkey、 invalidasin↔shopkey、notification↔usersecret、shopdatacrawl↔shopduplicatecheck 全部拆解) 测试同步:接口契约 8→9、品牌 Handler 钩子契约、worker 的 10 个测试构造实参、通知/管理测试端口化。 mvn test 2881 全绿。
Description
No description provided
Languages
Java
70.5%
TypeScript
16.8%
Vue
11.9%
Python
0.5%
JavaScript
0.2%
Other
0.1%