该 workflow 没有实际价值: - 仓库按策略不提供测试源码(*_test.go 被 .gitignore 屏蔽),因此其中的 go test 步骤在干净克隆上只是空转(打印 no test files 后通过),它连 "测试是否存在"都不会告诉你,自然守不住行为回归。 - 剩下的 go build / go vet 收益也很有限 —— 真正会用到编译产物的 docker.yml 在发版打 tag 时本就会完整构建一次。 删除后仓库只保留 docker.yml(打 tag 时构建并推送镜像),不再有多余的自动化。 同步清理对它的引用: - CHANGELOG 的"新增 CI 校验"条目(改述为"没有自动化质量门") - .gitignore 里测试策略注释中指向 ci.yml 的那句 - docs/UPSTREAM_ADAPTER_GUIDE.md 第 7 节(原表述"CI 跑不到你的测试"已不准确, 改为"没有任何自动化会跑你的测试")
面向 多渠道多上游适配器 愿景的落地文档,分两部分:第一部分逐行核对现有火山适配器的真实契约(包的职责划分、主干对适配器的 7 项硬性依赖、MetricsRecorder 埋点约定、格式降级规则、以及 6 条实测踩过的上游协议坑);第二部分给出 Provider 抽象的目标设计与分阶段实施计划(阶段 0 抽接口零行为变更 -> 阶段 1 provider 入库 -> 阶段 2 配置命名空间化 -> 阶段 3 metrics 加 provider 维度 -> 阶段 4 管理界面 -> 阶段 5 第二个真实适配器)。 同时如实记录三处现状缺陷,避免按文档实施时踩坑:voice.resource_id 是火山专属概念却成了全表 NOT NULL 通用列;store/migrate.go 的迁移框架定义了 Migration/migrations 但切片为空、migrate() 从不读取它(实际只做 CREATE TABLE IF NOT EXISTS,对已存在的表不做任何变更),且 schema_version 的 INSERT 未传值、实际写入版本号是 0;setting/config.go 整体耦合 volcano.Options,主干因此无法插入第二个上游。