# Project Rules — 愈心谷 Inherits: `$ESS_ROOT/product-governance/PROJECT_RULES.md`(流程) Product/DoD 权威:`.ai/`(不在此复制长文) ## ESS Intake(本仓覆盖) ```yaml ess_intake: strict ``` - **权威入口:** `$ESS_ROOT/governance/SESSION_BOOTSTRAP.md`(G0 Mode 块) - **Solo multi-role:** `$ESS_ROOT/governance/AGENT_OPERATIONS.md` - **Execution Context:** 同时只绑定 **一个** Active ECR(或一个 L1 TASK);新主题 = OUT OF SCOPE,禁止顺手改码 - **retro-ecr:** 本仓 **FAIL**(须 `Retrospective: true` + Original drift + Scope freeze + Process debt;不得伪装正序路径)。通用 ESS 默认为 WARN;脚本强制见后续门禁 PR,**规则即时约束 Agent** - **Loop / Adapter:** 不在本仓维护;已授权执行不扩展 ESS Intake 职责 ## Domain invariants 1. 语言契约:只用 `.ai/product/lexicon.md` 中的愈心谷用词;禁止竞品品牌词与恐吓/吉凶话术。 2. API 信封固定为 `{code,message,data}`;不发明表名、端点、领域同义词。 3. 调用链:UI → `@yuxingu/sdk` → Handler → Service → Repository → DB。 4. 新功能 / 扩行为:必须有 Active `.ai/product/feature-spec/.md`;L2+ 另须 Approved `docs/ECR/`;**涉后台**另须 Approved `docs/BACKEND_DESIGN/`。 5. 本地默认:本机 `go run` + Vite;compose 只起 DB。 6. Done ≠ build 通过:须过 `.ai/definition-of-done.md` 并输出 Review Report。 ## Change levels(映射) | ESS | 本仓要求 | |-----|----------| | L0 | 文档/注释/无行为;可无 ECR | | L1 | 明确 bugfix;可无新 Feature Spec,但不得扩行为 | | L2 | 功能行为变更 → Feature Spec Active + ECR Approved + HANDOFF | | L2-BLOCKED | 无 Approved ECR 时禁止改 `apps/` / `packages/` / `proto/` / `migrations/` | | L3 | 栈/包边界/架构 → ADR(`.ai/adr/`)+ ECR + ENGINEERING_SPEC | ## Forbidden(extra) - 猜需求继续写(ASK FIRST) - Architect 角色改 `apps/` / `packages/` 生产实现 - 无 Human 批准把实验当 Live 行为推广 - 提交 `config.local.yaml`、`.env`、密钥 - 同一 review turn Approve + Modify - 在已绑定 ECR 的 Execution Context 内「顺便」做第二功能 ## Completion 1. 开场 ESS Mode 块(G0)通过且 `Action: CONTINUE`(或明确 L0) 2. ESS gate(有 ECR 时):`python scripts/ess-validate.py --phase --ecr ECR-xxx` 3. 本仓 DoD:`.ai/definition-of-done.md` + `.ai/review.md` 4. 有行为变更时更新/尊重 `.ai/product/p1-status.md` 标签