Files
orbit/docs/release-checklist.md

6.1 KiB
Raw Blame History

Orbit 首版交付核对清单

这份清单把“代码已实现”“当前环境已回归”和“生产拓扑仍待验收”分开记录。勾选一项必须有对应命令输出、测试日志或发布工单,不能只凭设计文档勾选。业务接入方名称、行业规则和真实外部副作用不写入平台发布物。

当前版本候选

项目 证据/命令 状态
服务端与 SDK 代码来自同一提交 git rev-parse HEAD;发布时记录不可变提交 待发布候选冻结
Go 工具链 Go 1.27.1;Docker golang:1.27.1,真实 go.mod/GOWORK=off 模块级 race/vet/build、MySQL 存储/进程组、24 个 SDK 示例及两个独立业务模块真实集成已通过;发布环境仍需复核
容器发布物 make image;容器发布说明 native linux/arm64 与显式 linux/amd64 镜像构建已通过,支持注入版本身份并由 /version 核对;生产镜像标签、摘要、签名和目标编排环境仍需冻结
发布物身份清单 orbit-admin release manifest;运维接口 已实现无需数据库的机器可读清单,包含构建身份、协议版本和全部迁移校验和;正式发布仍需把清单、镜像摘要与目标库 verify 输出一并冻结
服务端单元、竞态、vet、build make test && make vet && make build Go 1.27.1 Docker 等价命令已通过;宿主机 make 因未安装 Go 不能作为本机证据
当前协议线一致 make protocol-check 已通过:HTTP /v1、Worker/Event v1、流程 schema 1
SDK 独立性和发布门禁 make sdk-check Go 1.27.1 Docker 下独立 module、示例和业务模块 race/vet/build 已通过
文档与示例 本清单、接口手册、SDK手册、场景示例 文档链接和 JSON 块已检查;宿主机全量端到端见当前回归状态

数据库与安全

项目 证据/命令 状态
空库初始化不创建外键 TestIntegrationFreshInstallUsesNoForeignKeys;无外键基线报告 已通过 MySQL 8.4
历史库升级不改写迁移校验和 TestIntegrationNoForeignKeysUpgrade;v7 外键70→0、索引和数据保留 已通过 MySQL 8.4
发布前结构核验 orbit-admin verify 输出 schema v28、外键0、固定观测索引6 已实现,发布前必须执行
Go 数据模型与 SQL 中文注释 TestFreshInstallBaselineHasChineseModelComments;数据模型说明 当前基线逐表、逐字段门禁已通过;后续新增字段必须同步模型注释和 SQL COMMENT
多租户、凭据轮换、权限撤销、审计脱敏 凭据报告、P1–P5集成回归 功能回归已通过;密钥托管和生产审计待验收
迁移/运行账户隔离 目标部署权限清单及演练 待目标环境

正确性、故障与运维

项目 证据/命令 状态
幂等、事务、租约、重试、未知结果和流程恢复 P1–P5阶段报告及真实 MySQL 回归 功能阶段已通过
派发未送达、提交前后断线、最终信号竞争 故障边界报告、当前回归状态 Go 1.27.1 已通过 MySQL 存储、关键 SDK/Orbit 进程故障组、24 个示例串跑和两个独立业务模块集成;跨版本矩阵和目标拓扑仍待发布环境
备份恢复 scripts/test-backup-restore.sh、恢复报告 Go 1.27.1 构建的当前二进制已通过隔离恢复;生产介质待验收
MySQL 短暂不可用恢复 scripts/test-db-recovery.sh、恢复报告 Go 1.27.1 构建的当前二进制已通过单节点同卷演练;主从/跨故障域待验收
运行观测和只读快照 /metrics、orbit-admin observe snapshot、观测手册 固定基数和有界单节点快照已实现
告警、值守、回滚/前向修复 目标监控、值班和发布工单 待目标环境

容量与生产高可用

项目 必须提供的证据 状态
受理、派发、流程推进和恢复吞吐 固定硬件、数据量、任务/流程混合模型,p50/p95/p99和资源曲线 已有受理样本、真实Worker短/混合/中长执行样本、Weave双分支流程样本及定时集中触发/积压曲线样本;目标硬件资源曲线、生产容量和HA仍未验收
100万+企业规模推导 容量模型:租户、队列、连接、事件、索引和保存周期的参数化推导 已建立计算方法和演算样例;目标业务数据、硬件、拓扑和生产容量仍未验收,不能由企业数直接承诺
MySQL 复制、切换、RPO/RTO 隔离 GTID 复制与手工提升演练;目标拓扑上的实际切换、复制确认、恢复点和恢复时间 隔离源库/副本复制、手工提升和原幂等键重放已通过;自动切换、目标拓扑、RPO/RTO仍未验收
慢消费者、重连风暴、磁盘和锁等待 受控故障负载及积压清空证据 SDK 受控连续断线和真实 HTTP/WebSocket 容量1慢消费者已回归(见重连报告、慢消费者报告);跨节点风暴、磁盘和锁等待未验收
跨版本 SDK/服务端 至少一个正式旧标签与候选版本的双向矩阵 历史提交 a50d5fa 的稳定任务 API 双向 smoke 已通过(见报告);正式标签和全协议矩阵仍未验收

发布候选只有在所有“待目标环境/未验收”项得到对应环境证据后,才能进入生产审批。当前代码和阶段回归不等同于生产高可用、容量、RPO/RTO或百万企业承诺。