1 changed files with 66 additions and 0 deletions
@ -0,0 +1,66 @@ |
|||
|
|||
## CDD 纪律 |
|||
|
|||
- 你**只修改前端代码**,禁止修改后端仓库任何文件 |
|||
- 如果你发现 `openapi.yaml` 与实际后端返回不符,**停止开发,上报问题**,等 YAML 更新后再重新生成 API 代码 |
|||
- 每次后端接口变更后,必须执行 `npm run api:generate` 重新生成类型 |
|||
- 禁止为了"让代码跑通"而修改生成的 `src/generated/api/` 目录下的任何文件 |
|||
|
|||
|
|||
--- |
|||
|
|||
## 附录:Git 开发规范(必须遵守) |
|||
|
|||
> 远程仓库已配置完成,每次 commit 后立即 push。 |
|||
|
|||
### 分支策略 |
|||
- 直接在 `main` 分支上开发,不创建 feature 分支 |
|||
- 每次 commit 后立即 `git push origin main` |
|||
|
|||
### Commit 格式(Conventional Commits) |
|||
``` |
|||
type(scope): subject |
|||
``` |
|||
|
|||
**Type**: `feat` `fix` `refactor` `test` `docs` `chore` `style` |
|||
|
|||
**Scope(前端)**: `page` `component` `store` `api` `router` `type` `asset` `config` `contract` |
|||
|
|||
**示例**: |
|||
```bash |
|||
feat(page): implement article list with pagination |
|||
feat(component): add ArticleCard and Pagination |
|||
fix(api): handle 401 auto-refresh token correctly |
|||
chore(api-gen): regenerate types from openapi.yaml v0.2 |
|||
style(component): fix indentation in AdminLayout |
|||
``` |
|||
|
|||
### 少量多次标准(核心) |
|||
- **单 commit 单意图**:一个 commit 只做一件事 |
|||
- **文件数 ≤ 10**,**行数 ≤ 200** |
|||
- **每次 commit 前必须 `npm run build` 通过(无 TS 错误)** |
|||
- **commit 后 30 秒内必须 push** |
|||
- **提交信息用英文,祈使句,首字母小写,≤ 50 字符** |
|||
|
|||
### 与 CDD 结合的提交顺序 |
|||
1. 契约变更:`feat(contract): xxx`(由架构 Owner 发起) |
|||
2. 后端实现:`feat(api): implement xxx endpoint`(Agent1 执行) |
|||
3. 前端生成:`chore(api-gen): regenerate from openapi.yaml` |
|||
4. 前端对接:`feat(page): xxx` |
|||
|
|||
### 禁止行为 |
|||
- `git commit -m "update"` / `git commit -m "fix bug"` |
|||
- 一次性提交 20+ 个无关文件 |
|||
- 提交有 TypeScript 类型错误的代码 |
|||
- 本地 commit 后数小时不 push |
|||
- 绕过 openapi.yaml 直接手写 API 类型 |
|||
|
|||
### 标准流程 |
|||
```bash |
|||
git pull --rebase origin main # 提交前同步 |
|||
git add -p # 交互式添加(推荐) |
|||
git diff --cached # 自我审查 |
|||
git commit -m "type(scope): subject" |
|||
git push origin main # 立即推送 |
|||
``` |
|||
|
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue