SuperAPI AI 工具集

bump-config-version

测试与质量

查看项目

更新于 10-15 21:11

技能介绍

用途:Docker Agent 的 agent 配置 schema 采用版本化包管理,每个编号包(pkg/config/v0、v1…vN)一经发布即冻结不可修改,新功能只进入 pkg/config/latest。本技能在某个已发布版本需要锁定、准备下一轮破坏性变更时执行冻结与提升。

主要能力:读取 pkg/config/latest/types.go 中的 const Version 得到当前版本 N,确认 pkg/config/vN 尚不存在;将 latest 下全部 Go 文件(含实现与测试)复制为 pkg/config/vN,并把包名改为 vN;随后重新打开 latest 供 vN+1 使用,包括提升版本常量、把 parse.go 的 previous 导入指向刚冻结的 vN、将 latest 的升级逻辑重置为 no-op 的 CloneThroughJSON;在 pkg/config/versions.go 中按数字顺序注册 vN;同步更新 agent-schema.json 的描述、version 枚举与示例。

使用方式:按步骤执行命令,如 grep '^const Version' pkg/config/latest/types.go、test ! -d pkg/config/vN && echo "ok"、cp -R pkg/config/latest pkg/config/vN、find pkg/config/vN -name '*.go' -exec sed -i '' 's/^package latest$/package vN/' {} +、jq empty agent-schema.json,最后运行 task build、task test、task lint 并提交。

适用场景:schema 发布版本需要冻结、下一轮破坏性变更开始前。

限制:N 与 vN 为占位符,需替换为实际数字;若 pkg/config/vN 已存在应停止并询问用户;不要改动 pkg/config/vN/parse.go 中指向 vN-1 的 previous 导入;schema_test.go 失败通常意味着 schema 未同步;硬编码 version: "N" 的测试夹具可能需改为 "N+1"。其他细节暂未提供。