Files
Nexus/.cursor/rules/perfect-implementation.mdc
T
2026-07-08 22:31:31 +08:00

63 lines
2.6 KiB
Plaintext

---
description: 完美实现原则 — 禁止降级/妥协/技术债;设计文档与技术文档先行;每次修改写 changelog
alwaysApply: true
---
# 完美实现与文档纪律
## 实现标准(强制)
**所有设计和实现都必须是完美实现。**
- ❌ **不允许为了实现而实现** — 每一行代码、每一个接口必须有明确目的,达到项目既定的安全、架构与质量标准
- ❌ **不允许降级实现** — 不得以「先用着」「以后再改」为由降低安全、性能、可维护性或用户体验
- ❌ **不允许妥协实现** — 发现问题必须根治,不得用绕过、静默吞错、硬编码掩盖代替修复
- ❌ **不允许留技术债** — 不得留下 TODO/FIXME/「临时方案」延后处理;当场能修必须当场修
- ✅ **无法完美实现时必须停下** — 与用户沟通并确认替代方案后,才能换方案;不得擅自从权或自行降级
## 文档纪律(强制)
### 设计文档
- 所有**新功能、架构变更、非平凡重构**必须先有设计文档,再写代码
- 设计文档路径:`docs/design/specs/YYYY-MM-DD-<topic>-design.md`
- 设计文档至少包含:背景与目标、方案对比、选定方案及理由、接口/数据模型、安全与性能约束、验收标准
### 技术文档(开发前)
- 开发前输出技术文档(实施说明),路径:`docs/design/plans/YYYY-MM-DD-<topic>.md` 或 `docs/reports/<step>/engineering-report.md`
- 技术文档至少包含:涉及文件清单、实现步骤、依赖与配置变更、测试要点、回滚方式
- 项目里**已有模块但缺文档的,在改动时一并补全**,不得只改代码不留档
### Changelog(每次修改)
- **每一次**有意义的代码或配置修改,必须在 `docs/changelog/` 新增或更新记录
- 命名:`YYYY-MM-DD-<简短主题>.md`
- 每条记录至少包含:日期、变更摘要、动机、涉及文件、是否需迁移/重启、验证方式
- 禁止把 changelog 写在 commit message 里代替项目文档
## 执行顺序
```
需求确认 → 设计文档 → 技术文档 → 实现 → 测试验证 → changelog →(必要时)更新 CLAUDE.md/AGENTS.md
```
## 禁止示例
```python
# ❌ 技术债
# TODO: fix later
pass # workaround
# ❌ 降级
except Exception:
return None # 静默失败
# ❌ 无文档直接大改
# (新增整模块却无任何 docs/design 或 docs/changelog 记录)
```
## 允许的唯一例外
经用户**明确书面确认**后,方可采用非完美方案;须在 changelog 中记录例外原因、影响范围与后续补齐计划。