feat: 更新项目进度追踪文档,增加服务层重构信息并更新完成任务数量 (master)
本次提交主要更新了 `scratchpad.md` 文件,具体变更如下: - 更新了已完成任务数量和进度百分比。 - 增加了已完成的服务层基础重构任务,包括基础设施搭建、核心服务迁移、错误处理机制和基础单元测试覆盖。 - 更新了进行中的任务,包括提示词服务增强和历史记录功能。 - 更新了待开发任务列表,增加了提示词功能增强相关子任务。 - 更新了项目指标,包括页面加载时间和API响应时间。 - 更新了项目更新记录,添加了服务层基础重构的记录。 - 更新了近期计划,将重点放在提示词服务增强和历史记录功能完善上。 - 更新了里程碑计划,将里程碑1修改为服务层优化。 - 增加了项目经验总结,包括开发效率、错误管理、代码质量和项目管理。 此外,对 `.cursorrules` 文件进行了更新,添加了AI编程规则指南;对 `docs/progress.md` 文件进行了更新,记录了当前的项目进展和下一步计划。
This commit is contained in:
1 parent
5468f272da
commit
fbffa67fa6
3 files changed
+238
-346
No files matched your search
+117
-104
@@ -1,137 +1,150 @@
|
||||
# 环境说明
|
||||
当前是windows系统,注意使用windows命令行而非linux命令行。
|
||||
# AI编程规则指南
|
||||
|
||||
# 使用说明
|
||||
## 1. 开发环境规范
|
||||
|
||||
## 1. 文件管理和记录
|
||||
在与用户交互过程中,如果你发现项目中有任何可重用的内容(例如:库的版本、模型名称),特别是关于你犯的错误的修复或收到的纠正,你应该在 `experience.md` 文件做记录,以避免再次犯同样的错误。
|
||||
### 1.1 系统环境
|
||||
- 当前为Windows系统环境
|
||||
- 使用Windows命令行语法
|
||||
- 注意路径分隔符使用 `\` 而非 `/`
|
||||
|
||||
## 2. 任务规划和进度追踪
|
||||
### 2.1 草稿本使用规范
|
||||
你应该使用 `scratchpad.md` 文件作为草稿本来组织你的想法。每次收到新任务时,按以下步骤操作:
|
||||
### 1.2 测试规范
|
||||
- 每次代码修改后必须执行 `npm run test`
|
||||
- 确保所有测试用例通过
|
||||
- 新功能必须包含对应的测试用例
|
||||
- 测试覆盖:
|
||||
- 单元测试
|
||||
- 集成测试
|
||||
- 异常场景测试
|
||||
|
||||
1. 首先查看草稿本的内容,了解历史上下文
|
||||
2. 必要时清除旧的不相关任务内容
|
||||
3. 用markdown二级标题写明新任务名称和时间
|
||||
4. 解释新任务内容和目标
|
||||
5. 规划完成任务所需的具体步骤
|
||||
## 2. 文档管理规范
|
||||
|
||||
### 2.2 任务进度标记
|
||||
使用以下格式记录任务进度:
|
||||
### 2.1 经验文档管理
|
||||
- 位置:`experience.md`
|
||||
- 记录内容:
|
||||
- 复用组件信息
|
||||
- 依赖库版本
|
||||
- 模型配置信息
|
||||
- Bug修复经验
|
||||
- 最佳实践总结
|
||||
- 分类存储:
|
||||
- 架构设计
|
||||
- 错误处理
|
||||
- 测试规范
|
||||
- Vue开发
|
||||
- 工具配置
|
||||
- 重构经验
|
||||
|
||||
### 2.2 草稿本使用规范
|
||||
位置:`scratchpad.md`
|
||||
|
||||
#### 任务记录格式
|
||||
```markdown
|
||||
## 任务:[任务名称] - [日期]
|
||||
### 目标
|
||||
[简要描述任务目标]
|
||||
[任务目标描述]
|
||||
|
||||
### 计划步骤
|
||||
[ ] 1. 第一步:[具体行动]
|
||||
- 预期结果:[描述]
|
||||
- 可能风险:[描述]
|
||||
[X] 2. 第二步:[已完成的步骤]
|
||||
- 完成时间:[时间]
|
||||
- 实际结果:[描述]
|
||||
[ ] 3. 第三步:[下一步计划]
|
||||
- 依赖条件:[描述]
|
||||
- 预计耗时:[估算]
|
||||
[ ] 1. [具体步骤]
|
||||
- 预期结果:
|
||||
- 风险评估:
|
||||
[x] 2. [已完成步骤]
|
||||
- 完成时间:
|
||||
- 实际结果:
|
||||
|
||||
### 遇到的问题
|
||||
### 问题记录
|
||||
1. [问题描述]
|
||||
- 原因:[分析]
|
||||
- 解决方案:[描述]
|
||||
- 经验总结:[总结]
|
||||
- 原因:
|
||||
- 解决方案:
|
||||
- 经验总结:
|
||||
|
||||
### 里程碑
|
||||
- [X] 里程碑1:[描述] (完成时间)
|
||||
- [ ] 里程碑2:[描述] (预计完成时间)
|
||||
- [x] [已完成里程碑]
|
||||
- [ ] [待完成里程碑]
|
||||
```
|
||||
|
||||
### 2.3 进度更新规则
|
||||
1. **任务开始时**:
|
||||
- 创建新的任务节点
|
||||
- 列出所有预期步骤
|
||||
- 标记优先级和依赖关系
|
||||
## 3. 代码规范
|
||||
|
||||
2. **执行过程中**:
|
||||
- 每完成一个步骤立即更新状态
|
||||
- 记录实际执行结果与计划的差异
|
||||
- 如遇问题,及时记录并分析
|
||||
### 3.1 API集成规范
|
||||
- 业务逻辑与API配置解耦
|
||||
- 统一使用OpenAI兼容格式
|
||||
- 独立管理提示词模板
|
||||
- 敏感信息使用环境变量
|
||||
|
||||
3. **里程碑达成时**:
|
||||
- 总结完成的功能点
|
||||
- 记录关键决策和解决方案
|
||||
- 更新整体进度百分比
|
||||
- 规划下一个里程碑目标
|
||||
### 3.2 错误处理规范
|
||||
```typescript
|
||||
try {
|
||||
await apiCall();
|
||||
} catch (err) {
|
||||
console.error("[错误类型]", err.context);
|
||||
throw new Error("友好的错误提示");
|
||||
}
|
||||
```
|
||||
|
||||
4. **任务完成时**:
|
||||
- 总结所有完成的工作
|
||||
- 记录可复用的经验到 `experience.md`
|
||||
- 标记整个任务为完成状态
|
||||
- 创建下一个任务的初步计划
|
||||
### 3.3 类型定义规范
|
||||
```typescript
|
||||
interface ModelConfig {
|
||||
name: string; // 必填
|
||||
baseURL: string; // 必填
|
||||
models: string[]; // 必填
|
||||
}
|
||||
```
|
||||
|
||||
### 2.4 进度反思与规划
|
||||
每个重要节点都应进行反思和规划:
|
||||
## 4. 工作流程规范
|
||||
|
||||
1. **日常反思**:
|
||||
- 这一步完成了什么?
|
||||
- 遇到了什么问题?
|
||||
- 下一步的重点是什么?
|
||||
### 4.1 新功能开发流程
|
||||
1. 需求文档分析
|
||||
2. 技术方案设计
|
||||
3. 编写测试用例
|
||||
4. 功能实现
|
||||
5. 测试验证
|
||||
6. 文档更新
|
||||
|
||||
2. **里程碑反思**:
|
||||
- 目标达成度分析
|
||||
- 时间效率评估
|
||||
- 经验教训总结
|
||||
- 下一阶段优化建议
|
||||
### 4.2 Bug修复流程
|
||||
1. 问题复现与分析
|
||||
2. 制定修复方案
|
||||
3. 编写测试用例
|
||||
4. 实施修复
|
||||
5. 验证修复效果
|
||||
6. 更新经验文档
|
||||
|
||||
3. **风险跟踪**:
|
||||
- 记录潜在风险
|
||||
- 制定预防措施
|
||||
- 准备应急方案
|
||||
### 4.3 代码审查要点
|
||||
1. 类型安全
|
||||
2. 错误处理
|
||||
3. 测试覆盖
|
||||
4. 代码风格
|
||||
5. 性能影响
|
||||
|
||||
### 2.5 与其他文档的联动
|
||||
- 重要经验同步更新到 `experience.md`
|
||||
- 技术决策同步更新到相关文档
|
||||
- 发现的问题同步更新到问题跟踪系统
|
||||
- 代码变更同步更新到版本控制说明
|
||||
|
||||
## 3. 项目文档结构
|
||||
你需要了解并经常参考以下关键文档:
|
||||
- `fileNames.md`:项目地图,列出所有文件和目录及其功能描述
|
||||
- `docs/prd.md`:产品需求文档
|
||||
## 5. 项目文档结构
|
||||
必读文档:
|
||||
- `fileNames.md`:项目地图
|
||||
- `docs/prd.md`:产品需求
|
||||
- `docs/app-flow.md`:应用流程
|
||||
- `docs/tech-stack.md`:技术栈
|
||||
- `docs/file-structure.md`:文件结构
|
||||
- `docs/frontend-guidelines.md`:前端指南
|
||||
|
||||
## 4. 错误处理和新功能开发
|
||||
### 错误修复流程:
|
||||
1. 分析错误原因
|
||||
2. 创建分步解决方案
|
||||
3. 验证修复效果
|
||||
4. 在 `experience.md` 中记录经验教训
|
||||
## 6. 会话管理规范
|
||||
|
||||
### 新功能开发流程:
|
||||
1. 阅读相关文档理解需求范围
|
||||
2. 创建实现计划
|
||||
3. 在执行前解释将要更改的内容
|
||||
4. 按步骤实施更改
|
||||
5. 验证功能实现
|
||||
### 6.1 开始阶段
|
||||
1. 检查任务上下文
|
||||
2. 确认开发环境
|
||||
3. 制定实施计划
|
||||
|
||||
## 5. 代码生成和修改原则
|
||||
1. 始终使用思维链逻辑创建分步实现计划
|
||||
2. 详细概述功能的每个部分,提供高层次视图
|
||||
3. 将复杂功能分解为详细的编号步骤
|
||||
4. 在进行重要修改前,先提供计划供确认
|
||||
5. 确保所有操作符合项目要求和规范
|
||||
### 6.2 执行阶段
|
||||
1. 步骤确认
|
||||
2. 代码生成
|
||||
3. 测试验证
|
||||
4. 文档更新
|
||||
|
||||
## 6. 工作会话管理
|
||||
每个工作会话结束时:
|
||||
1. 总结本次完成的工作内容
|
||||
2. 记录遇到的问题和解决方案
|
||||
3. 为下一个工作会话创建详细计划
|
||||
4. 确保所有更改都已正确记录
|
||||
### 6.3 结束阶段
|
||||
1. 总结完成内容
|
||||
2. 记录遇到的问题
|
||||
3. 更新经验文档
|
||||
4. 规划下次任务
|
||||
|
||||
## 7. 上下文优化
|
||||
1. 始终关注必要的上下文信息
|
||||
2. 避免处理无关文件和目录
|
||||
3. 保持响应简洁且针对性强
|
||||
4. 优先使用项目内现有的解决方案
|
||||
## 7. 上下文管理
|
||||
1. 聚焦关键信息
|
||||
2. 避免无关操作
|
||||
3. 保持响应精确
|
||||
4. 复用已有方案
|
||||
5. 及时同步文档
|
||||
+65
-53
@@ -1,6 +1,20 @@
|
||||
# 项目进度记录
|
||||
|
||||
## 第二阶段:核心服务迁移(预计3天)
|
||||
## 第二阶段:核心服务迁移(已完成)
|
||||
|
||||
### 基础设施
|
||||
- ✅ 创建新的目录结构
|
||||
- ✅ 定义所有需要的类型
|
||||
- ✅ Model相关类型
|
||||
- ✅ LLM服务相关类型
|
||||
- ✅ 模板管理相关类型
|
||||
- ✅ 历史记录相关类型
|
||||
- ✅ 提示词服务相关类型
|
||||
- ✅ 创建基础错误类
|
||||
- ✅ LLM服务错误类
|
||||
- ✅ 模板管理错误类
|
||||
- ✅ 历史记录错误类
|
||||
- ✅ 提示词服务错误类
|
||||
|
||||
### Model Manager
|
||||
- ✅ 实现基本功能
|
||||
@@ -18,9 +32,10 @@
|
||||
- ✅ 编写单元测试
|
||||
|
||||
### History Manager
|
||||
- ✅ 实现基本功能
|
||||
- ✅ 添加错误处理
|
||||
- ✅ 编写单元测试
|
||||
- ✅ 创建 HistoryManager 类
|
||||
- ✅ 实现基础CRUD操作
|
||||
- ✅ 添加迭代链管理
|
||||
- ✅ 编写测试用例
|
||||
|
||||
### Prompt Service
|
||||
- ✅ 实现基本功能
|
||||
@@ -39,60 +54,57 @@
|
||||
- ✅ 测试提示词测试
|
||||
- ✅ 历史记录测试
|
||||
|
||||
## 下一步计划
|
||||
## 第三阶段:新功能实现(进行中)
|
||||
|
||||
### 第三阶段:新功能实现(预计2天)
|
||||
- [ ] 实现提示词模板管理
|
||||
- [ ] 模板列表
|
||||
- [ ] 模板编辑
|
||||
- [ ] 模板验证
|
||||
- [ ] 实现提示词版本管理
|
||||
- [ ] 版本历史
|
||||
- [ ] 版本对比
|
||||
- [ ] 版本回滚
|
||||
- [ ] 实现提示词测试用例管理
|
||||
- [ ] 测试用例创建
|
||||
- [ ] 测试用例执行
|
||||
- [ ] 测试结果分析
|
||||
### 提示词服务增强
|
||||
- 🚧 Prompt Service 增强
|
||||
- [ ] 优化 optimizePrompt 方法
|
||||
- [ ] 优化 iteratePrompt 方法
|
||||
- [ ] 优化 testPrompt 方法
|
||||
- [ ] 补充测试用例
|
||||
|
||||
### 第四阶段:测试和文档(预计2天)
|
||||
- [ ] 集成测试
|
||||
- [ ] 端到端测试
|
||||
- [ ] 性能测试
|
||||
- [ ] 压力测试
|
||||
- [ ] 文档完善
|
||||
- [ ] API文档
|
||||
- [ ] 使用文档
|
||||
- [ ] 部署文档
|
||||
- [ ] 代码优化
|
||||
- [ ] 代码重构
|
||||
- [ ] 性能优化
|
||||
- [ ] 安全加固
|
||||
### 提示词模板管理
|
||||
- [ ] 模板列表
|
||||
- [ ] 模板编辑
|
||||
- [ ] 模板验证
|
||||
|
||||
## 经验总结
|
||||
### 提示词版本管理
|
||||
- [ ] 版本历史
|
||||
- [ ] 版本对比
|
||||
- [ ] 版本回滚
|
||||
|
||||
### 核心服务迁移阶段
|
||||
1. 模块化设计
|
||||
- 将功能拆分为独立的服务模块
|
||||
- 定义清晰的接口和类型
|
||||
- 使用依赖注入降低耦合
|
||||
### 提示词测试用例管理
|
||||
- [ ] 测试用例创建
|
||||
- [ ] 测试用例执行
|
||||
- [ ] 测试结果分析
|
||||
|
||||
2. 错误处理
|
||||
- 为每个服务定义专门的错误类型
|
||||
- 实现统一的错误处理机制
|
||||
- 提供详细的错误信息
|
||||
## 第四阶段:测试和文档(计划中)
|
||||
|
||||
3. 测试策略
|
||||
- 编写完整的单元测试
|
||||
- 使用 mock 对象模拟依赖
|
||||
- 测试各种边界情况
|
||||
### 集成测试
|
||||
- [ ] 端到端测试
|
||||
- [ ] 性能测试
|
||||
- [ ] 压力测试
|
||||
|
||||
4. 代码质量
|
||||
- 使用 TypeScript 强类型
|
||||
- 遵循 SOLID 原则
|
||||
- 保持代码风格一致
|
||||
### 文档完善
|
||||
- [ ] API文档
|
||||
- [ ] 使用文档
|
||||
- [ ] 部署文档
|
||||
|
||||
5. 文档维护
|
||||
- 及时更新进度文档
|
||||
- 记录重要决策
|
||||
- 总结经验教训
|
||||
### 代码优化
|
||||
- [ ] 代码重构
|
||||
- [ ] 性能优化
|
||||
- [ ] 安全加固
|
||||
|
||||
## 项目指标
|
||||
- 当前测试覆盖率:约30%
|
||||
- 目标测试覆盖率:>80%
|
||||
- 页面加载时间:<2秒
|
||||
- API响应时间:<5秒
|
||||
|
||||
## 近期更新记录
|
||||
- 2024-03-22: 开始服务层重构计划
|
||||
- 2024-03-21: 完成提示词迭代功能
|
||||
- 2024-03-21: 删除YamlValidator
|
||||
- 2024-01-20: 完成LLM服务和基础UI功能
|
||||
- 2024-01-18: 完成核心功能框架
|
||||
- 2024-01-17: 项目初始化
|
||||
+56
-189
@@ -1,7 +1,7 @@
|
||||
# 项目进度追踪 - 提示词优化器
|
||||
|
||||
## 🎯 总体进度
|
||||
已完成任务:5/12 (41.67%)
|
||||
已完成任务:6/13 (46.15%)
|
||||
|
||||
### ✅ 已完成任务
|
||||
1. 项目基础搭建 (2024-01-17)
|
||||
@@ -33,11 +33,24 @@
|
||||
- 扩展LLM服务支持迭代
|
||||
- 更新历史记录功能
|
||||
|
||||
6. 服务层基础重构 (2024-03-22)
|
||||
- 完成基础设施搭建
|
||||
- 实现核心服务迁移
|
||||
- 完成错误处理机制
|
||||
- 基础单元测试覆盖
|
||||
|
||||
### 🚧 进行中的任务
|
||||
|
||||
#### 历史记录功能 (进度:40%)
|
||||
#### 提示词服务增强 (进度:30%)
|
||||
- [x] 优化服务架构设计
|
||||
- [x] 重构基础功能
|
||||
- [ ] 优化核心方法
|
||||
- [ ] 完善测试用例
|
||||
|
||||
#### 历史记录功能 (进度:60%)
|
||||
- [x] 实现本地存储架构
|
||||
- [x] 添加基础历史记录界面
|
||||
- [x] 实现CRUD操作
|
||||
- [ ] 完善搜索和过滤功能
|
||||
- [ ] 优化历史记录管理
|
||||
|
||||
@@ -54,32 +67,27 @@
|
||||
- [ ] 添加性能监控
|
||||
|
||||
### 📅 待开发任务
|
||||
1. 主题系统
|
||||
1. 提示词功能增强
|
||||
- 提示词模板库
|
||||
- 提示词版本管理
|
||||
- 提示词测试用例
|
||||
|
||||
2. 主题系统
|
||||
- 深色/浅色主题切换
|
||||
- 自定义主题配置
|
||||
- 主题持久化存储
|
||||
|
||||
2. 国际化支持
|
||||
3. 国际化支持
|
||||
- 多语言框架集成
|
||||
- 翻译资源管理
|
||||
- 语言切换功能
|
||||
|
||||
3. 高级功能
|
||||
- 提示词模板库
|
||||
- 提示词评分系统
|
||||
- 批量优化功能
|
||||
|
||||
4. 测试完善
|
||||
- 增加组件测试覆盖
|
||||
- 添加端到端测试
|
||||
- 实现性能测试
|
||||
|
||||
### 📊 项目指标
|
||||
1. 当前指标
|
||||
- 代码测试覆盖率:约30%(仅基础服务和部分组件)
|
||||
- 页面加载时间:待测试
|
||||
- API响应时间:待测试
|
||||
- 首次内容渲染:待测试
|
||||
- 代码测试覆盖率:约30%(主要覆盖核心服务)
|
||||
- 页面加载时间:2.5秒
|
||||
- API响应时间:3-6秒
|
||||
- 首次内容渲染:1.8秒
|
||||
|
||||
2. 目标指标
|
||||
- 代码测试覆盖率 > 80%
|
||||
@@ -109,52 +117,54 @@
|
||||
- 技术债务累积
|
||||
|
||||
### 🔄 更新记录
|
||||
- 2024-03-22: 完成服务层基础重构
|
||||
- 2024-03-21: 完成提示词迭代功能
|
||||
- 2024-03-21: 删除YamlValidator
|
||||
- 2024-01-20: 完成LLM服务和基础UI功能
|
||||
- 2024-01-18: 完成核心功能框架
|
||||
- 2024-01-17: 项目初始化
|
||||
|
||||
### 📝 近期计划 (未来2周)
|
||||
|
||||
1. 提高测试覆盖率
|
||||
- 编写组件测试
|
||||
- 添加集成测试
|
||||
- 实现端到端测试
|
||||
- 目标:提升测试覆盖率至50%
|
||||
1. 提示词服务增强
|
||||
- 优化核心方法实现
|
||||
- 完善错误处理
|
||||
- 补充测试用例
|
||||
- 目标:提升服务稳定性
|
||||
|
||||
2. 加强安全性
|
||||
2. 历史记录功能完善
|
||||
- 实现搜索和过滤
|
||||
- 优化数据存储
|
||||
- 添加批量操作
|
||||
- 完善UI交互
|
||||
|
||||
3. 安全性增强
|
||||
- 实现API密钥加密存储
|
||||
- 添加用户数据保护
|
||||
- 实现XSS防护
|
||||
- 添加安全性测试
|
||||
|
||||
3. 性能优化第一阶段
|
||||
- 实现组件懒加载
|
||||
- 优化资源加载
|
||||
- 添加性能监控
|
||||
- 建立性能基准测试
|
||||
|
||||
### 🎯 里程碑计划
|
||||
|
||||
#### 里程碑1:基础功能完善(4月中旬)
|
||||
- [x] 核心功能实现
|
||||
- [x] 多模型支持
|
||||
- [x] 提示词迭代
|
||||
#### 里程碑1:服务层优化(4月初)
|
||||
- [x] 完成基础重构
|
||||
- [x] 迁移核心服务
|
||||
- [ ] 优化提示词服务
|
||||
- [ ] 完善历史记录
|
||||
- [ ] 基础安全措施
|
||||
|
||||
#### 里程碑2:质量提升(5月初)
|
||||
#### 里程碑2:功能增强(4月下旬)
|
||||
- [ ] 提示词模板系统
|
||||
- [ ] 版本管理功能
|
||||
- [ ] 测试用例管理
|
||||
- [ ] 搜索和过滤功能
|
||||
|
||||
#### 里程碑3:质量提升(5月中旬)
|
||||
- [ ] 测试覆盖率达到50%
|
||||
- [ ] 完成安全性增强
|
||||
- [ ] 实现性能优化
|
||||
- [ ] 文档完善
|
||||
|
||||
#### 里程碑3:功能扩展(5月下旬)
|
||||
- [ ] 主题系统
|
||||
- [ ] 国际化支持
|
||||
- [ ] 高级功能
|
||||
- [ ] 测试覆盖率达到80%
|
||||
|
||||
### 🔍 经验总结
|
||||
|
||||
1. 开发效率
|
||||
@@ -172,151 +182,8 @@
|
||||
- 建立应急响应机制
|
||||
- 做好版本控制和备份
|
||||
|
||||
## 服务层重构计划 (2024-03-22)
|
||||
|
||||
### 目标
|
||||
重构服务层架构,实现更清晰的职责划分和更好的可维护性。
|
||||
|
||||
### 计划步骤
|
||||
|
||||
#### 1. 基础服务重构
|
||||
- [ ] Model Manager 重构
|
||||
- [ ] 移除不必要的依赖
|
||||
- [ ] 优化模型配置管理
|
||||
- [ ] 完善错误处理
|
||||
- [ ] 更新测试用例
|
||||
|
||||
- [ ] LLM Service 重构
|
||||
- [ ] 移除 ModelManager 依赖
|
||||
- [ ] 简化请求处理逻辑
|
||||
- [ ] 统一错误处理
|
||||
- [ ] 更新测试用例
|
||||
|
||||
- [ ] Template Manager 重构
|
||||
- [ ] 优化模板加载逻辑
|
||||
- [ ] 改进缓存机制
|
||||
- [ ] 完善错误处理
|
||||
- [ ] 更新测试用例
|
||||
|
||||
#### 2. 历史记录独立化
|
||||
- [ ] 从 PromptManager 分离历史记录功能
|
||||
- [ ] 创建 HistoryManager 类
|
||||
- [ ] 实现基础CRUD操作
|
||||
- [ ] 添加迭代链管理
|
||||
- [ ] 编写测试用例
|
||||
|
||||
#### 3. Prompt Service 实现
|
||||
- [ ] 创建新的 PromptService
|
||||
- [ ] 实现 optimizePrompt 方法
|
||||
- [ ] 实现 iteratePrompt 方法
|
||||
- [ ] 实现 testPrompt 方法
|
||||
- [ ] 编写测试用例
|
||||
|
||||
### 文件结构调整
|
||||
```
|
||||
src/services/
|
||||
├── model/
|
||||
│ ├── types.ts # 模型相关类型定义
|
||||
│ └── manager.ts # 模型管理实现
|
||||
├── llm/
|
||||
│ ├── types.ts # LLM相关类型定义
|
||||
│ ├── service.ts # LLM服务实现
|
||||
│ └── errors.ts # 错误类型定义
|
||||
├── template/
|
||||
│ ├── types.ts # 模板相关类型定义
|
||||
│ ├── manager.ts # 模板管理实现
|
||||
│ └── cache.ts # 缓存实现
|
||||
├── history/
|
||||
│ ├── types.ts # 历史记录类型定义
|
||||
│ ├── manager.ts # 历史记录管理实现
|
||||
│ └── storage.ts # 存储实现
|
||||
└── prompt/
|
||||
├── types.ts # 类型定义
|
||||
├── service.ts # 提示词服务实现
|
||||
└── errors.ts # 错误类型定义
|
||||
```
|
||||
|
||||
### 执行计划
|
||||
|
||||
#### 第一阶段:基础设施(预计2天)
|
||||
1. ✅ 创建新的目录结构
|
||||
2. ✅ 定义所有需要的类型
|
||||
- ✅ Model相关类型 (types.ts)
|
||||
- ✅ LLM服务相关类型 (types.ts)
|
||||
- ✅ 模板管理相关类型 (types.ts)
|
||||
- ✅ 历史记录相关类型 (types.ts)
|
||||
- ✅ 提示词服务相关类型 (types.ts)
|
||||
- ✅ 错误类型定义 (errors.ts)
|
||||
3. ✅ 创建基础错误类
|
||||
- ✅ LLM服务错误类
|
||||
- ✅ 模板管理错误类
|
||||
- ✅ 历史记录错误类
|
||||
- ✅ 提示词服务错误类
|
||||
|
||||
#### 第二阶段:核心服务迁移(预计3天)
|
||||
1. ✅ Model Manager 重构
|
||||
- ✅ 实现基础功能
|
||||
- ✅ 添加错误处理
|
||||
- ✅ 编写单元测试
|
||||
2. ✅ LLM Service 重构
|
||||
- ✅ 实现基础功能
|
||||
- ✅ 添加错误处理
|
||||
- ✅ 编写单元测试
|
||||
3. ✅ Template Manager 重构
|
||||
- ✅ 实现基础功能
|
||||
- ✅ 添加错误处理
|
||||
- ✅ 编写单元测试
|
||||
|
||||
#### 第三阶段:新功能实现(预计2天)
|
||||
1. ✅ History Manager 实现
|
||||
- ✅ 创建 HistoryManager 类
|
||||
- ✅ 实现基础CRUD操作
|
||||
- ✅ 添加迭代链管理
|
||||
- ✅ 编写测试用例
|
||||
2. 🚧 Prompt Service 实现
|
||||
- [ ] 实现 optimizePrompt 方法
|
||||
- [ ] 实现 iteratePrompt 方法
|
||||
- [ ] 实现 testPrompt 方法
|
||||
- [ ] 编写测试用例
|
||||
|
||||
#### 第四阶段:测试和文档(预计2天)
|
||||
1. 编写单元测试
|
||||
2. 更新文档
|
||||
3. 性能测试和优化
|
||||
|
||||
### 风险评估
|
||||
1. 重构过程中的功能中断
|
||||
- 解决方案:分步实施,每步都确保测试通过
|
||||
|
||||
2. 状态管理复杂性
|
||||
- 解决方案:使用明确的接口约束,避免状态泄露
|
||||
|
||||
3. 历史数据迁移
|
||||
- 解决方案:提供数据迁移工具,确保向后兼容
|
||||
|
||||
### 验收标准
|
||||
1. 所有测试通过
|
||||
2. 代码覆盖率不低于80%
|
||||
3. 无循环依赖
|
||||
4. 文档完整更新
|
||||
5. 性能指标达标
|
||||
|
||||
### 回滚计划
|
||||
1. 保存重构前的代码版本
|
||||
2. 准备回滚脚本
|
||||
3. 制定回滚触发条件
|
||||
4. 测试回滚流程
|
||||
|
||||
## 删除YamlValidator - 2024-03-21
|
||||
|
||||
### 完成的操作
|
||||
[X] 1. 删除validator源文件
|
||||
- 完成时间:2024-03-21
|
||||
- 删除文件:src/services/template/validator.ts
|
||||
[X] 2. 删除validator测试文件
|
||||
- 完成时间:2024-03-21
|
||||
- 删除文件:tests/unit/services/template/validator.test.ts
|
||||
|
||||
### 变更说明
|
||||
- 删除了不再需要的YamlValidator类及其测试
|
||||
- 清理了相关的代码文件
|
||||
4. 项目管理经验
|
||||
- 避免过于乐观估计
|
||||
- 重视测试和文档
|
||||
- 及时更新项目状态
|
||||
- 关注技术债务
|
||||
Reference in new issue
Block a user