feat: 重构项目心跳数据结构并实现项目列表API
- 新增统一项目列表Redis键和迁移工具 - 实现GET /api/projects端点获取项目列表 - 实现POST /api/projects/migrate端点支持数据迁移 - 更新前端ProjectSelector组件使用真实项目数据 - 扩展projectStore状态管理 - 更新相关文档和OpenSpec规范 - 添加测试用例验证新功能
This commit is contained in:
55
openspec/changes/refactor-project-heartbeat/tasks.md
Normal file
55
openspec/changes/refactor-project-heartbeat/tasks.md
Normal file
@@ -0,0 +1,55 @@
|
||||
## 1. Redis数据结构重构
|
||||
|
||||
- [x] 1.1 在redisKeys.js中添加projectsListKey()函数
|
||||
- [x] 1.2 创建数据迁移工具migrateHeartbeatData.js
|
||||
- [x] 1.3 实现从分散键到统一列表的迁移逻辑
|
||||
- [x] 1.4 实现getProjectsList()函数
|
||||
- [x] 1.5 实现updateProjectHeartbeat()函数
|
||||
|
||||
## 2. 后端API开发
|
||||
|
||||
- [x] 2.1 创建项目列表API routes/projects.js
|
||||
- [x] 2.2 实现GET /api/projects端点
|
||||
- [x] 2.3 实现POST /api/projects/migrate端点
|
||||
- [x] 2.4 更新logs.js兼容新数据结构
|
||||
- [x] 2.5 更新commands.js兼容新数据结构
|
||||
- [x] 2.6 在server.js中注册项目列表路由
|
||||
|
||||
## 3. 前端代码修改
|
||||
|
||||
- [x] 3.1 更新ProjectSelector.vue移除假数据
|
||||
- [x] 3.2 实现从API获取项目列表
|
||||
- [x] 3.3 实现项目状态显示
|
||||
- [x] 3.4 实现自动刷新功能
|
||||
- [x] 3.5 更新projectStore.js扩展状态管理
|
||||
- [x] 3.6 更新LogView.vue连接真实API
|
||||
- [x] 3.7 更新CommandView.vue连接真实API
|
||||
- [x] 3.8 更新MainView.vue传递项目名称
|
||||
- [x] 3.9 更新Console.vue接受项目名称属性
|
||||
- [x] 3.10 修正App.vue健康检查端点
|
||||
|
||||
## 4. 文档更新
|
||||
|
||||
- [x] 4.1 创建Redis数据结构文档
|
||||
- [x] 4.2 更新logging OpenSpec规范
|
||||
- [x] 4.3 更新command OpenSpec规范
|
||||
- [x] 4.4 更新redis-connection OpenSpec规范
|
||||
- [x] 4.5 创建OpenSpec变更提案proposal.md
|
||||
- [x] 4.6 创建OpenSpec变更提案tasks.md
|
||||
|
||||
## 5. 测试开发
|
||||
|
||||
- [ ] 5.1 编写数据迁移单元测试
|
||||
- [ ] 5.2 编写项目列表API集成测试
|
||||
- [ ] 5.3 编写ProjectSelector组件测试
|
||||
- [ ] 5.4 编写性能测试
|
||||
|
||||
## 6. 代码质量与验证
|
||||
|
||||
- [ ] 6.1 运行ESLint检查
|
||||
- [ ] 6.2 运行Prettier格式化
|
||||
- [ ] 6.3 验证项目选择功能
|
||||
- [ ] 6.4 验证日志读取功能
|
||||
- [ ] 6.5 验证命令发送功能
|
||||
- [ ] 6.6 验证数据迁移功能
|
||||
- [ ] 6.7 性能测试和优化
|
||||
Reference in New Issue
Block a user