Repository navigation
v1.4.0 - Maintainability Refactor
sureai v1.4.0 — 可维护性重构版本
完成 v1.2.0 全维度团队检视报告的最后一版整改。本版本为纯内部重构,公共 API 行为签名零变更,全工程 812 测试 0 失败。
♻️ Refactor
- AbstractAiClient 拆分(682 → 368 行,−46%):抽出 RetryExecutor(重试/熔断/限流/指标/错误映射)、RequestBuilder(请求构建+签名钩子链)、MultipartBodyBuilder(multipart 拼装)三个包内协作类;18 个 protected/public 成员签名逐字不变,全部子类零修改。
- OpenAiCompatClient 拆分(841 → 340 行,−60%):抽出 10 个能力域策略类(Chat/Stream/Image/Video/Audio/Embedding/Moderation/FineTune 等),10 个平台 Client 零修改。
- Util 单例样板抽取:新增通用
SingletonHolder(DCL 容器),17 个平台 Util 迁移,主源码净减 341 行。 - 删除 10 处平台 Client 重复的 applyDefaultBaseUrl 方法(−108 行),统一委托 AiConfig.withBaseUrlIfAbsent。
🆕 Added
- Client 能力面收口:新增
Capability枚举(14 项)与 guard 机制;DeepSeek/Grok/Mistral/LlamaCpp/Moonshot 逐平台审计声明能力,调用不支持的方法时立即快速失败并给出清晰 AiException(此前要等上游 4xx)。 - 测试分类:JUnit4 @category(Unit/Slow/E2e)+
-PfastMaven profile,快速回归 801 测试。 - CI 治理:OS 矩阵(ubuntu/macos/windows)、tag 触发的发布 workflow、benchmark 月度/手动 workflow。
📊 质量
- 812 测试 0 失败(+13:SingletonHolder 8 + CapabilityGuard 5);core 覆盖率 86.6%
- checkstyle / spotbugs / license 门禁全绿;运行期第三方依赖仍有且仅有
sure-core:0.2.0
说明:OpenAI/Azure/Doubao/Qwen/Zhipu 五平台本轮保守保留全量能力声明(其能力边界需对照官方文档逐项核实,贸然缩减有误伤风险),列入后续迭代。
Full Changelog: v1.3.0...v1.4.0