任务看板(Tasks)
把 MVP 拆成小步、可独立交付的任务,让 AI 一步一步开发,避免一次生成整个项目。
使用规则
- 一次只做一个任务:每轮只领取一个状态为
TODO、且依赖均已 DONE 的任务,取最靠前的那个。
- 做完即停:完成该任务、自测通过、把状态改成
DONE 后,停下来汇报。
- 不跳步:依赖未完成的任务不能开工。
- 完成定义:以 编码规则 的验证清单为准。
- 动手前先读
00-ai-start-here.md、05-coding-rules.md 和 current-state.md。
状态图例
TODO 待开始 · DOING 进行中(同一时间最多 1 个)· DONE 已完成并验收 · BLOCKED 受阻(注明原因)
Phase 0 · 地基
| ID |
任务 |
依赖 |
验收要点 |
状态 |
| T-001 |
初始化 Go + Gin 项目骨架 |
- |
go run . 启动;/api/health 返回正常;/ 返回静态首页 |
TODO |
| T-002 |
建立配置、日志和目录结构 |
T-001 |
目录符合 04-architecture.md;配置不含真实密钥;默认数据库路径可用 |
TODO |
| T-003 |
建立 SQLite 迁移和基础测试 |
T-002 |
表结构与架构文档一致;go test ./... 可运行 |
TODO |
Phase 1 · 钉钉接口验证
| ID |
任务 |
依赖 |
验收要点 |
状态 |
| T-101 |
实现站点 CRUD API |
T-003 |
可新增、查询、更新、删除站点;列表不返回明文 secret |
TODO |
| T-102 |
实现钉钉 token client |
T-101 |
用站点配置获取 token;错误响应可读;不记录 token 明文 |
TODO |
| T-103 |
实现部门和用户 API client |
T-102 |
能封装拉子部门、部门 userid、用户详情三个调用 |
TODO |
Phase 2 · 同步与查询 API
| ID |
任务 |
依赖 |
验收要点 |
状态 |
| T-201 |
实现全量同步服务 |
T-103 |
从根部门拉部门树、用户详情并写入 SQLite;同步日志完整 |
TODO |
| T-202 |
实现部门查询 API |
T-201 |
/api/sites/{id}/departments 返回可组树的数据 |
TODO |
| T-203 |
实现人员查询 API |
T-201 |
支持 keyword、dept_id、active、page、size |
TODO |
| T-204 |
实现导出 API |
T-203 |
支持 JSON 和 CSV;导出结果服从筛选参数 |
TODO |
| T-205 |
实现统计和同步日志 API |
T-201 |
首页可获得站点概览和最近同步结果 |
TODO |
Phase 3 · 原生前端
| ID |
任务 |
依赖 |
验收要点 |
状态 |
| T-301 |
实现应用外壳和站点概览 |
T-205 |
/ 展示站点、统计、同步状态和入口按钮 |
TODO |
| T-302 |
实现站点配置页面 |
T-101 |
可维护站点;secret 输入后不在列表明文展示 |
TODO |
| T-303 |
实现部门浏览页面 |
T-202, T-203 |
左侧部门树,右侧部门成员列表 |
TODO |
| T-304 |
实现人员搜索页面 |
T-203, T-204 |
关键词、筛选、分页、导出可用 |
TODO |
| T-305 |
接入同步操作和状态反馈 |
T-201, T-205, T-301 |
页面可触发同步并展示成功 / 失败 |
TODO |
Phase 4 · 收尾与发布
| ID |
任务 |
依赖 |
验收要点 |
状态 |
| T-401 |
完整验收 MVP |
T-305 |
02-requirements.md 的 P0 验收全部通过 |
TODO |
| T-402 |
完善运行和打包文档 |
T-401 |
AGENTS.md、CLAUDE.md 和 docs/current-state.md 写清运行方式;无真实密钥进入仓库 |
TODO |
里程碑
- M1:最小 Go + Gin + SQLite 地基完成。
- M2:钉钉接口封装验证完成。
- M3:同步、查询、导出 API 完成。
- M4:原生前端 MVP 完成。
- M5:可交付 / 可运行。
待办池(Backlog)
- 定时同步。
- 登录和权限。
- 旧 JSON 数据导入。
- 人员 / 部门变更历史。
- 密钥本地加密存储。