30 lines
2.1 KiB
Markdown
30 lines
2.1 KiB
Markdown
# Cyrene v2 开发铁律(AGENTS.md)
|
||
|
||
> 本文件是**项目级开发铁律**,由运行环境在**每次工作会话时自动注入**。即使发生上下文压缩/丢失,以下约束仍会强制生效。**必须遵守**,违反即偏离。
|
||
|
||
## 1. 先读设计,再写代码
|
||
- 动任何代码**前**:先读 `DevDocs/开发时间线.md`(当前里程碑 + §3 功能状态清单),确定这一步属于哪个里程碑/功能。
|
||
- 具体功能实现:先读对应 `DevDocs/design/*.md`,**按其规格实现,不得自行发挥**(design/01~13 是权威设计)。
|
||
|
||
## 2. 按里程碑推进,不跳步、不漂移
|
||
- 严格按 **M0 → M12** 顺序。每个功能的依赖与归属见时间线 §2/§3。
|
||
- 不得「想到什么做什么」。**新需求/新想法:先写入设计或时间线清单,再开发**,不脱离清单。
|
||
- 上下文压缩后:**先读 `DevDocs/工作小结.md`** 恢复锚点,再继续,**不得凭印象跳走**。
|
||
|
||
## 3. 每阶段审查并勾选
|
||
- 阶段完成:后端 `go build ./...` + `go vet ./...` + `go test ./...` 全绿;前端 `tsc --noEmit` + `vite build` 通过。
|
||
- 在 `DevDocs/开发时间线.md` §3 勾选状态:`✅ 已完成` / `⚠️ 未完成/阻塞`(⚠️ 必须记录原因与延后里程碑)。
|
||
- 与 `DevDocs/design/*` 比对:不一致时以设计为准——先改设计文档或修正代码,**不允许带着偏离堆叠**。
|
||
|
||
## 4. 改动前确认归属
|
||
- 修改任一文件/功能前,明确它在哪个里程碑、对应哪份 design 文档;改完同步该文档(若设计变了)。
|
||
|
||
## 5. 实时同步工作小结
|
||
- 每完成一步,更新 `DevDocs/工作小结.md`:当前里程碑 / 进度 / 已完成+未完成 / 关键决策 / 变更日志。
|
||
|
||
## 6. 小步提交 + 频繁验证
|
||
- 小粒度 commit;每步 build/test 通过再提交;提交信息按 Git 规范(feat/fix/refactor/docs/chore,scope 用模块名)。
|
||
|
||
## 7. 不信任记忆,信任清单
|
||
- 关键决策、架构铁律、用户红线(如身份识别靠元数据、不靠提示词)都记录在 `DevDocs/工作小结.md` 的「关键决策」区;压缩后回读,不得丢失。
|