2.5 KiB
2.5 KiB
P0 基础阶段验证记录
日期:2026-09-17。范围:数据模型、MySQL 迁移、基础 HTTP 与 SDK 健康调用。
环境
- macOS arm64,Go 1.27.1 官方工具链,下载摘要已核对。
- MySQL 8.4.10,Docker 独立临时容器;随机凭据、回环随机端口,测试结束后删除容器。
- MySQL 驱动
github.com/go-sql-driver/mysql v1.10.1,依赖版本记录于 go.mod/go.sum。 - 使用真实 MySQL,不以 Mock 代替迁移或数据库约束验证。
验证结果
| 项目 | 结果 |
|---|---|
| 服务端编译 | 已通过 |
服务端 go test -race ./... |
已通过 |
服务端 go vet ./... |
已通过 |
| 两个迁移调用竞争同一数据库锁 | 已通过 |
| 30 个模型与实际数据库列名一致性 | 已通过 |
| 跨命名空间关联拒绝 | 已通过 |
| 非法任务状态、缺少租约与超尝试预算拒绝 | 已通过 |
| 本地事务回滚 | 已通过 |
| 幂等键作用域与唯一约束 | 已通过 |
| 流程发布版本不可修改 | 已通过 |
| 查询轮次、任务唯一性与预算约束 | 已通过 |
| 状态事件与审计记录不可改写 | 已通过 |
| dirty 迁移与校验和漂移阻断 | 已通过 |
| SDK HTTP 契约与错误边界 | 已通过 |
| 迁移 CLI → 真实服务 → SDK 健康示例 | 已通过 |
| 文档链接、示例与接入方标识清理 | 已通过 |
| 模型与数据库中文注释 | 30 个模型的持久化字段及 30 张表、366 个列注释已补齐,DDL 再次验证通过 |
数据库集成用例首轮约 7.37 秒,最终复核约 2.12 秒,中文注释补齐后再验证约 1.91 秒;这只是功能测试耗时,不是容量基准。最终端到端输出为 liveness=alive readiness=ready scope=database_and_schema。
文档检查覆盖基础阶段 17 个 Markdown 文件(随后新增 AGENTS.md 维护中文注释规范)、69 个本地链接和 4 个 JSON 示例,未发现失效链接或接入方定制标识。
复现
make test
make vet
make build
make integration
普通 go test 会跳过需要数据库的测试;make integration 会创建专用数据库、运行实际约束测试,并启动真实服务执行 SDK 示例。显式设置 ORBIT_TEST_MYSQL_DSN 直接运行测试时,必须使用可丢弃的独立数据库。
未验证范围
目前没有任务处理器、Worker 协议、调度或流程执行引擎,不宣称这些能力已通过验收。尚未执行生产吞吐、长稳、多节点调度、数据库高可用、备份恢复和真实业务接入验收。这些内容在后续阶段实现并验证。