docs(docs): 调整分支策略为仅 main 直推
ci / 质量门禁 (push) Canceled after 0s

背景:用户确认仓库只保留 main,不再创建任何远程分支或走 PR 合并。

改动:
- 01-Git规范 V1.1:仅 main 直推,禁止非 main 分支推送、force push 与 Merge commit;
- AGENTS V1.1:变更流程改为直接提交并推送 main;
- 07-CodeReview:PR 模板改为提交说明,合并流程改为推送与推送后观察;
- 03/06/工程规范 README 同步去除 PR 措辞;
- CI 仅保留 push main 与 workflow_dispatch 触发。

影响面:仅流程与文档,无代码/数据/接口变更。
回滚方式:git revert 本提交即可恢复旧流程。
验证:format:check、lint、typecheck 全绿(10/10)。
This commit is contained in:
Stev_Wang committed 2026-11-02 17:40:01 +08:00
1 parent 046dad463e
commit dd01b89214
7 files changed
+74 -81

No files matched your search

+5 -5
View File
@@ -14,8 +14,8 @@
| 层级 | 工具 | 范围 | 运行时机 |
| --- | --- | --- | --- |
| 单元 | Vitest | Service、工具函数、状态机、命名 / 表单引擎 | 每次提交(CI + 本地) |
| 集成 | Vitest + Testcontainers(PG 18 / Redis 7.4 / MinIO) | Repository、队列、迁移、事务 | 每次 PR(CI) |
| 契约 | OpenAPI + `oasdiff` | 接口兼容性 | 每次 PR |
| 集成 | Vitest + Testcontainers(PG 18 / Redis 7.4 / MinIO) | Repository、队列、迁移、事务 | 每次 push `main`(CI) |
| 契约 | OpenAPI + `oasdiff` | 接口兼容性 | 每次 push `main` |
| E2E | Playwright | 主链路(登录 → 生成 → 预览 → 勾选 → 导出) | 主干 + 发布前 |
| 性能 | k6 | 列表 / 任务提交 / SSE | 发布前(仅 staging) |
| 视觉回归 | 图片像素比对 | PSD 合成产物 | 改动 `packages/render` 时 |
@@ -61,7 +61,7 @@ install --frozen-lockfile
→ format:check → lint --max-warnings=0 → typecheck
→ unit test(coverage)→ build
→ integration(Testcontainers)→ openapi:diff
→ e2e(main / 发布分支)→ 镜像构建 + 漏洞扫描
→ e2e(main)→ 镜像构建 + 漏洞扫描
```
| 阶段 | 阻断条件 |
@@ -76,7 +76,7 @@ install --frozen-lockfile
| 安全 | 高危漏洞 > 0 |
- `TST-20` 流水线并行化按包拆分(Turborepo),但门禁结论必须在聚合 job 上判定。
- `TST-21` 禁止通过 `--passWithNoTests`、跳过集成测试等方式「修绿」;豁免须技术负责人批准并留 PR 记录。
- `TST-21` 禁止通过 `--passWithNoTests`、跳过集成测试等方式「修绿」;豁免须技术负责人批准并留提交说明记录。
- `TST-22` flaky 测试 24 小时内修复或移除并登记,**禁止**重试 3 次掩盖。
---
@@ -89,7 +89,7 @@ install --frozen-lockfile
| 其他 `FEATURE_*` | 按里程碑临时开关,上线稳定后删除 |
- `TST-23` 未完成功能必须藏在开关后,**禁止**半成品直接可见。
- `TST-24` 开关必须有默认值、有 owner、有清理期限(写进 PR 或配置注释)。
- `TST-24` 开关必须有默认值、有 owner、有清理期限(写进提交说明或配置注释)。
- `TST-25` 开关组合不得导致数据不一致(关闭后已产生的数据仍可读)。
---