feat: establish Orbit models, migrations and development baseline
This commit is contained in:
51
docs/reports/phase-0.md
Normal file
51
docs/reports/phase-0.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# 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 示例,未发现失效链接或接入方定制标识。
|
||||
|
||||
## 复现
|
||||
|
||||
```sh
|
||||
make test
|
||||
make vet
|
||||
make build
|
||||
make integration
|
||||
```
|
||||
|
||||
普通 `go test` 会跳过需要数据库的测试;`make integration` 会创建专用数据库、运行实际约束测试,并启动真实服务执行 SDK 示例。显式设置 `ORBIT_TEST_MYSQL_DSN` 直接运行测试时,必须使用可丢弃的独立数据库。
|
||||
|
||||
## 未验证范围
|
||||
|
||||
目前没有任务处理器、Worker 协议、调度或流程执行引擎,不宣称这些能力已通过验收。尚未执行生产吞吐、长稳、多节点调度、数据库高可用、备份恢复和真实业务接入验收。这些内容在后续阶段实现并验证。
|
||||
Reference in New Issue
Block a user