代码托管与独立发布
- Asset
- ADP-DLV-FEAT-DOC-0014
- Feature
- git-provider-integration
- 领域
- delivery-integrations
- 作用域
- application-level
- 文档状态
- draft
- 产品生命周期
- active
- 文档 Owner
- DOC
- 事实源
- canonical-docs
- 工程 Owner
- WSI
- Development Ready
- not-ready
- 更新
- 2026/10/14
FEATURE DEVELOPMENT PACKAGE
工程就绪状态
工程 Owner:WSI · 仓库:DSP / PLN / WSI
- 原子需求与验收
- 设计与工程合同
- 代码与仓库定位
- 里程碑与工作包
- 验证计划
- 无阻断决策
- Development Ready 已通过
- 验收标准已覆盖
- 正式测试已登记
- Fixture 与环境已定义
- 测试规格已物化到正式测试
- Verification Ready 已通过
- 实现修订可定位
- 发布证据已登记
- 兼容与迁移已定义
- Runbook 与回滚已定义
查看阻断项(3)
- Development Ready 缺少:原子需求与验收
- Development Ready 缺少:里程碑与工作包
- Development Ready 缺少:验证计划
功能目标
提供 provider-neutral Git review 合同,以及 Plane 由 GitLab CI、Harbor 和 Argo CD 组成的仓库原生发布合同。
功能结论
| 主题 | 结论 |
|---|---|
| 代码入口 | 功能、版本和 CHANGELOG 都走普通 source MR;不存在特殊 Release MR。 |
| 发布决定 | 递增版本并同步 CHANGELOG 的 source MR 合入 protected master;唯一的版本变更 CI 作业创建 exact protected tag。 |
| TEST | tag pipeline 构建六个组件、封存 Harbor digests、自动合并 TEST GitOps MR;Argo CD 从 master 协调 plane-test。 |
| PRODUCTION | TEST observer 与专用业务验收通过后,exact tag pipeline 创建 PRODUCTION MR,等待其分支 CI 通过并合并 exact head;最终 observer 核对运行健康。 |
| 明确不做 | 发布链路不读取 Plane Automation execution/intent,也不单凭 TEST smoke 推进 PRODUCTION。 |
| 事实 owner | GitLab:review、tag、pipeline、MR;Harbor:immutable image/bundle;Git:desired state;Argo CD/runtime:reconciliation 与健康。 |
Git review
每个 required repo 记录 provider/repo identity、resolved target、fresh base、head/tree/diff、MR URL/state、merge commit、native approvals 与 checks verdict。创建或更新 MR 前必须基于最新 target;head、target、check 或 merge 事实漂移会使先前审核失效。多仓变更分别保留 MR 和 CI evidence。
GitLab 是当前 canonical provider。MR 合并只表示源码进入目标分支,不表示 tag 已创建、镜像已封存、TEST 已协调、运行时已健康或 PRODUCTION 已获授权。
版本、tag 与构建边界
release/package.json 是 Plane distribution 的 SemVer source,CHANGELOG.md 保存每版变更。二者与功能代码一样通过普通 source MR 审核;不存在独立类型的 Release MR。
受保护 tag autodev-v<version> 必须指向创建时 exact current protected master head、与 release/package.json version 一致,并通过 tag rule、创建者授权和 readback。不得移动或复用已存在 tag。
tag pipeline 使用 GitLab 11.5 兼容的显式 graph,依次完成 validate、六个 component build(frontend、space、admin、live、backend、proxy)、seal、TEST desired-state render 与 TEST promotion。每个 runtime reference 都是 Harbor repository@sha256:digest;promotion 不 rebuild、不 retag。
GitOps deployment
plane_gitops_promote_test 校验 sealed artifact,在独立 branch/MR 写入 canonical TEST desired state,等待该 exact head CI 后只合并该 head。Argo CD 读取 master 并协调 plane-test;GitLab CI 不持有 Kubernetes 或 Argo CD credential。
TEST PostSync smoke 只证明受限的运行时探测成功,不单独触发 PRODUCTION。TEST observer 与专用业务验收均通过后,原 exact tag pipeline 自动运行 plane_gitops_promote_production。它复制 TEST 的 bundle 和六个 component digests,创建 codex/gitops-production-autodev-v<version> MR,等待该 exact head 的分支 CI 通过后合并,由 Argo CD 协调。
控制入口
autoai/autodev-plane 的 deployments/gitlab/release/control.py 只提供只读 plan、status。唯一的版本变更 master CI 作业创建 protected tag;tag pipeline 合并 PROD MR 前必须核对 exact plane.test-acceptance/v1 evidence。CI 不持有 cluster credential。DSH/TeamCity 不提供
Plane release 控制、观察、确认或 fallback。
停止条件与验收
tag/commit/version/pipeline、六组件 digest、bundle、TEST desired state 或 MR head 任一不匹配即停止。TEST runtime readiness 必须从 Argo CD、migration、workload image 和 endpoint evidence 独立确认;GitLab job success 不能替代这些事实。PRODUCTION 只在 TEST 两项门禁与 exact MR CI 均通过后推进,并由独立 observer 证明运行健康。