Files
orbit/docs/release-checklist.md

48 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Orbit 首版交付核对清单
这份清单把“代码已实现”“当前环境已回归”和“生产拓扑仍待验收”分开记录。勾选一项必须有对应命令输出、测试日志或发布工单,不能只凭设计文档勾选。业务接入方名称、行业规则和真实外部副作用不写入平台发布物。
## 当前版本候选
| 项目 | 证据/命令 | 状态 |
| --- | --- | --- |
| 服务端与 SDK 代码来自同一提交 | `git rev-parse HEAD`;发布时记录不可变提交 | 待发布候选冻结 |
| Go 工具链 | Go 1.27.1;Docker `golang:1.27.1`,真实 `go.mod`/`GOWORK=off` | 模块级 race/vet/build 已通过;真实 MySQL/进程集成仍待发布环境 |
| 服务端单元、竞态、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 已通过 |
| 文档与示例 | 本清单、[接口手册](api/README.md)、[SDK手册](sdk/README.md)、[场景示例](examples/README.md) | 文档链接和 JSON 块已检查;宿主机全量端到端见[当前回归状态](reports/phase-7-regression-status.md) |
## 数据库与安全
| 项目 | 证据/命令 | 状态 |
| --- | --- | --- |
| 空库初始化不创建外键 | `TestIntegrationFreshInstallUsesNoForeignKeys`;[无外键基线报告](reports/phase-6-fresh-install.md) | 已通过 MySQL 8.4 |
| 历史库升级不改写迁移校验和 | `TestIntegrationNoForeignKeysUpgrade`;v7 外键70→0、索引和数据保留 | 已通过 MySQL 8.4 |
| 发布前结构核验 | `orbit-admin verify` 输出 schema v28、外键0、固定观测索引6 | 已实现,发布前必须执行 |
| 多租户、凭据轮换、权限撤销、审计脱敏 | [凭据报告](reports/phase-6-credentials.md)、P1–P5集成回归 | 功能回归已通过;密钥托管和生产审计待验收 |
| 迁移/运行账户隔离 | 目标部署权限清单及演练 | 待目标环境 |
## 正确性、故障与运维
| 项目 | 证据/命令 | 状态 |
| --- | --- | --- |
| 幂等、事务、租约、重试、未知结果和流程恢复 | P1–P5阶段报告及真实 MySQL 回归 | 功能阶段已通过 |
| 派发未送达、提交前后断线、最终信号竞争 | [故障边界报告](reports/phase-6-fault-boundaries.md)、[当前回归状态](reports/phase-7-regression-status.md) | Go 1.27.1 已通过 MySQL 存储集成及关键 SDK/Orbit 进程故障组;完整示例服务集成、跨版本矩阵和目标拓扑仍待发布环境 |
| 备份恢复 | `scripts/test-backup-restore.sh`、[恢复报告](reports/phase-6-backup-restore.md) | 隔离演练已通过;生产介质待验收 |
| MySQL 短暂不可用恢复 | `scripts/test-db-recovery.sh`、[恢复报告](reports/phase-6-db-recovery.md) | 单节点同卷演练已通过;主从/跨故障域待验收 |
| 运行观测和只读快照 | `/metrics`、`orbit-admin observe snapshot`、[观测手册](api/observability.md) | 固定基数和有界单节点快照已实现 |
| 告警、值守、回滚/前向修复 | 目标监控、值班和发布工单 | 待目标环境 |
## 容量与生产高可用
| 项目 | 必须提供的证据 | 状态 |
| --- | --- | --- |
| 受理、派发、流程推进和恢复吞吐 | 固定硬件、数据量、任务/流程混合模型,p50/p95/p99和资源曲线 | 已有受理样本、[真实Worker短/混合/中长执行样本](reports/phase-6-execution-load.md)、[Weave双分支流程样本](reports/phase-6-workflow-load.md)及[定时集中触发/积压曲线样本](reports/phase-6-backlog.md);目标硬件资源曲线、生产容量和HA仍未验收 |
| 100万+企业规模推导 | 租户、队列、连接、事件、索引和保存周期的容量模型 | 未验收,不能由租户数直接推导 |
| MySQL 复制、切换、RPO/RTO | 目标拓扑上的实际切换、复制确认、恢复点和恢复时间 | 未验收 |
| 慢消费者、重连风暴、磁盘和锁等待 | 受控故障负载及积压清空证据 | SDK 受控连续断线和真实 HTTP/WebSocket 容量1慢消费者已回归(见[重连报告](reports/phase-6-reconnect-storm.md)、[慢消费者报告](reports/phase-6-slow-consumer.md));跨节点风暴、磁盘和锁等待未验收 |
| 跨版本 SDK/服务端 | 至少一个正式旧标签与候选版本的双向矩阵 | 当前仓库无正式标签,未验收 |
发布候选只有在所有“待目标环境/未验收”项得到对应环境证据后,才能进入生产审批。当前代码和阶段回归不等同于生产高可用、容量、RPO/RTO或百万企业承诺。