docs: 建立代码注释与TODO维护约定
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
# 代码注释与 TODO 约定
|
||||
|
||||
本文用于统一团队在前后端代码中编写注释和待办项的方式。注释应解释设计意图、边界条件和不明显的取舍,不重复代码本身已经清楚表达的内容。
|
||||
|
||||
## 注释原则
|
||||
|
||||
- 模块或核心类说明其职责和边界,例如 Agent 编排器、工具执行边界、凭据存储边界。
|
||||
- 异步流程说明顺序、快照、去重、回滚和竞态处理原因。
|
||||
- 安全相关流程说明默认拒绝、权限收敛、输入净化和凭据优先级。
|
||||
- 简单赋值、显然的条件判断、类型定义和展示模板不添加翻译式注释。
|
||||
- 注释随实现一并维护;实现变化后已经失真的注释应在同一提交中修改或删除。
|
||||
|
||||
## TODO 格式
|
||||
|
||||
前端使用:
|
||||
|
||||
```ts
|
||||
// TODO(editor): 描述尚未完成的能力、完成条件或替换目标。
|
||||
```
|
||||
|
||||
后端使用:
|
||||
|
||||
```python
|
||||
# TODO(agent): 描述尚未完成的能力、完成条件或替换目标。
|
||||
```
|
||||
|
||||
领域标签使用小写英文,当前约定包括 `agent`、`ai-core`、`chat`、`desktop`、`editor`、`extension`、`performance`、`security` 和 `streaming`。一个 TODO 应对应真实存在的工程缺口;小型清理工作直接完成,不长期保留无负责人、无目标的占位待办。
|
||||
|
||||
## 当前待办索引
|
||||
|
||||
以下内容可通过 `rg "TODO\\(" backend/app frontend/src` 定位,代码中的注释是最新状态:
|
||||
|
||||
| 领域 | 当前边界 |
|
||||
| --- | --- |
|
||||
| Agent / Streaming | 运行事件仍在进程内保存,后续需要持久化、`Last-Event-ID` 和断线重连 |
|
||||
| Security | 本地主密钥目前保存在数据目录,桌面端接入后迁移到系统凭据库 |
|
||||
| Extension | 扩展安装状态尚未持久化;MCP Host、进程隔离、签名与来源校验属于第二阶段 |
|
||||
| AI Core | 音频转写当前只读取文本或 Host 预生成旁路文本,后续接入本地 ASR 队列 |
|
||||
| Desktop | Workspace 仍使用 Web Mock,后续由 Tauri IPC 文件系统适配器替换 |
|
||||
| Editor / Chat | 待补文件冲突合并、受控链接对话框及会话持久化 |
|
||||
| Performance | Shiki 已复用单例,后续按首屏指标评估延迟加载或 Web Worker |
|
||||
|
||||
TODO 完成后应删除对应代码注释并同步更新本索引;若工作超过一个提交,应建立 Issue,并在 Issue 中引用代码位置,而不是在源码中记录长篇设计讨论。
|
||||
Reference in New Issue
Block a user