auto-sync: 2026-06-06 08:10:56

This commit is contained in:
cfdaily
2026-06-06 08:10:56 +08:00
parent c51b0249f1
commit f94c46a6b3
+29 -2
View File
@@ -450,6 +450,33 @@ P1 必须先配好以下工具,否则机械门控跑不起来:
| `pytest-cov` | 覆盖率 | `pip install pytest-cov` |
| `act-runner` | CI 执行器 | 下载 Go 二进制 |
### 8.5 CI 隔离测试环境(E2E 安全运行)
E2E 自动跑的核心前提:**不污染生产环境**。通过 CI 隔离环境实现:
```
CI 临时测试环境(每次 CI 自动创建)
├─ 独立 venv(每次 CI 新建)
├─ 临时 SQLitetmpdir,跑完销毁)
├─ 临时端口(8084,不和生产 8083 冲突)
├─ 启动 FastAPI 服务 → 跑 E2E → 关闭
└─ 跑完整个 tmpdir 删除,不留痕迹
生产环境(~/.sanguo_projects/)完全不受影响
```
**效果**E2E 可以在每次 PR 到 main 时自动跑,无需担心污染生产数据或影响生产服务。
**环境总结**
| 环境 | 位置 | 用途 | 生命周期 |
|------|------|------|---------|
| 开发 | `~/.openclaw/sanguo_projects/` | 改代码、本地调试 | 常驻 |
| CI 测试 | CI runner 临时目录 | lint/unit/integration/E2E | CI 跑完即销毁 |
| 生产 | `~/.sanguo_projects/` | 正式运行服务 | 常驻 |
**schema 变更检查**(可选):CI 中加一步对比数据库 schema 变更,检测破坏性操作(删字段/改类型)。检测到则提 Issue 人工确认。可通过配置开关强制绕过。
---
## §9. 完整开发流程(端到端)
@@ -490,8 +517,8 @@ P1 必须先配好以下工具,否则机械门控跑不起来:
└─ 部署失败 → 自动回滚 → 人工介入
7. 验证
└─ 日常迭代:标准门控已覆盖
└─ E2E:用户手动触发(不自动跑
└─ CI 隔离环境中自动跑 E2E(不污染生产)
└─ 用户测试(手动
└─ 发现问题 → 新开 Issue(经 Review 后再开发)
```