开发日志记录规范
每次开发任务完成后,你必须在 docs/dev_logs/ 下创建或追加开发日志。日志具有数据库快照属性,支持后续回滚。
隐私策略:开发日志中禁止写入明文敏感信息(数据库连接串、密码、token、私有地址等);敏感信息统一记录到本地私有模块
docs/private_context/,日志仅写引用标识。
目录与文件命名
code
docs/dev_logs/{YYYY-MM-DD}/{序号}-{简短描述}.md
- •日期文件夹:当天日期,如
2026-02-07/ - •文件名:两位序号 + 连字符 + 英文简述,如
01-init-knowledge-graph.md、02-bugfix-five-issues.md - •序号在当天内自增,从
01开始
日志必须包含的内容
1. 对话记录(含背景、意图解析、LLM 思考摘要)
在日志最顶部,记录触发本次开发的完整对话。多轮对话时记录与本次变更相关的所有轮次,并按固定结构循环记录,便于几天后回看仍可理解上下文。
格式要求:
- •背景:一句话写当前业务上下文(当前模块、阶段、已知约束)
- •用户发言:用引用块
>原文完整记录,不可省略或摘要 - •用户的意图解析:1-2 句话说明本轮用户想达成的业务目标与验收方向(基于原文,避免过度推断)
- •LLM 思考摘要:1-2 句话概括本轮响应策略、关键取舍或下一步动作
markdown
## 对话记录 ### 第 1 轮 - 背景: 正在初始化知识图谱站点,需要先确定技术栈与初始节点结构。 - 用户: > 我正在研究学习AI, 创建一个网站,以graph的形式,进行知识点拓展 > 目前有三个类别 vibe coding skills, agent dev, llm fundemental - 用户的意图解析: 先搭建可扩展的图谱基础框架,并把 3 个类别作为首批核心入口。 - LLM思考摘要: 采用 React + @xyflow/react,先实现根节点与基础交互,后续按类别扩展子节点。 ### 第 2 轮 - 背景: 技术方案已确认,进入落地阶段。 - 用户: > 对,开始搭建吧 - 用户的意图解析: 用户希望立即进入实现,不再停留在方案讨论。 - LLM思考摘要: 创建项目骨架、知识图谱组件与初始数据文件,确保可运行与可继续迭代。
2. 修改时间
精确到秒的时间戳。
markdown
**修改时间**: 2026-02-07 11:28:00
3. 概述
一句话说明本次开发做了什么(业务视角)。
4. 修改文件清单
表格形式列出每个被修改/新增/删除的文件,包含路径、修改时间和变更说明。
markdown
| 文件 | 操作 | 修改时间 | 说明 | |------|------|----------|------| | `web/src/App.tsx` | 修改 | 2026-02-07 11:26:43 | 添加路由配置 | | `web/src/pages/Home.tsx` | 新增 | 2026-02-07 11:27:10 | 首页组件 |
5. 具体变更描述
对关键变更提供详细说明,包括:
- •问题(如果是 Bug 修复):原因分析
- •方案:采用的解决方案
- •影响范围:受影响的功能和模块
6. 构建验证结果
记录 TypeScript 检查、ESLint、Vite 构建、测试等验证结果。
markdown
## 验证结果 - ✔ TypeScript 类型检查通过 - ✔ ESLint 代码规范通过 - ✔ Vitest 测试通过 (6/6) - ✔ Vite 生产构建通过
7. Git 锚点
用于后续快速回放到对应代码状态。至少包含:
- •
branch:当前分支 - •
commit:本轮对应提交哈希(未提交则写N/A并说明原因) - •
tag/backup:如创建了检查点标签或备份分支需写明
示例:
markdown
## Git 锚点 - branch: `main` - commit: `abc1234` - tag: `checkpoint/2026-02-07-knowledge-trash`
8. 隐私信息引用(按需)
当本轮涉及敏感信息时,必须记录引用而非明文:
- •日志中写
privacy_ref,例如:privacy_ref: docs/private_context/refs.local.md#db-sync-20260207 - •具体敏感值放到本地
docs/private_context/(该目录默认不入库) - •禁止在日志正文、命令行示例中出现完整连接串/密码/token
执行流程
- •完成代码修改后,立即检查
docs/dev_logs/{今天日期}/目录 - •确定序号(查看已有文件数量 + 1)
- •创建日志文件,按上述模板填写所有必需内容
- •按轮次循环记录:
背景→用户(原文引用)→用户的意图解析→LLM思考摘要 - •文件修改时间从 git 或实际操作时间获取,精确到秒
- •填写 Git 锚点(branch/commit/tag);未提交需说明原因
- •敏感信息检查:若包含凭据/连接信息,改写为
privacy_ref并把明文移入docs/private_context/