Skip to content

[BUG] 跨仓兼容门禁应显式绑定并核验候选 Core 版本 #229

Open

Description

@Aias00

已确认问题

verify-extensions-compatibility.sh 将候选 Core 安装到临时 Maven 仓库,却以未覆盖 argi.version 的 clean test 构建 Extensions。当前 Extensions 默认 argi.version=2.1.0-RC1,而候选 Core 为 2.1.0-RC2-SNAPSHOT。使用临时仓库并不能确保 Maven 选中候选坐标,门禁可能验证旧版或因旧版解析失败中断。

证据:https://github.com/agentic-ai-java/argi/blob/76d44429fdaa6a69320e21a1cb77119d0889d792/tools/scripts/verify-extensions-compatibility.sh#L108;Extensions https://github.com/agentic-ai-java/argi-extensions/blob/495414b76a37aca4d7c1022d973a8e5b9a7e92e6/pom.xml#L157。

人工显式 -Dargi.version=2.1.0-RC2-SNAPSHOT 验证后,73 个模块为 67 成功、6 编译失败。本单的脚本问题来自参数/默认值检查;没有声称已执行未修改脚本的全套隔离仓库测试。

交付与验收

  • 从候选 Core 的 effective version 取得实际版本并显式传给 Extensions,支持已发布和 SNAPSHOT,不能写死 revision 占位符。
  • 在执行前/依赖解析后输出并核验候选坐标,防止静默回退到 Extensions 默认值;保留临时仓库隔离。
  • 覆盖两个仓库版本不同、默认版本可解析/不可解析和显式选择错误版本的脚本测试。
  • 候选故意引入不兼容 API 时门禁必须失败;测试日志可证明实际使用候选工件。
  • 兼容修复分模块交付,不能用排除失败模块换取全绿。

基线、关系与变更约束

已验证 Core 76d44429fdaa6a69320e21a1cb77119d0889d792 / Extensions 495414b76a37aca4d7c1022d973a8e5b9a7e92e6。关联:#185;agentic-ai-java/argi-extensions#30。

局部修复不等待全局 Agent/Workflow/Loop 重构。优先复用现有中立契约;若改公共 API、配置或持久数据,说明替代方案、消费者影响、目标版本与迁移/回滚步骤。不得以跳过检查、删除测试或向 Core 重新引入供应商 SDK 解决问题。

已拆分的候选兼容修复

agentic-ai-java/argi-extensions#44、agentic-ai-java/argi-extensions#45、agentic-ai-java/argi-extensions#46、agentic-ai-java/argi-extensions#47、agentic-ai-java/argi-extensions#48、agentic-ai-java/argi-extensions#49。门禁修复负责验证选中候选工件,模块修复各自负责通过编译和行为回归。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions