linshen
|
0c9ddd5063
|
fix(data): include image model configs in backups
Include image model configuration data in app-wide export/import flows and initialize the image model manager before wiring backup services.
|
2026-05-03 13:15:18 +08:00 |
|
linshen
|
03a62630bd
|
fix(i18n): align core errors to structured codes
- Normalize IPC/plain-object errors via toErrorWithCode
- Align image adapter + storage config errors to i18n codes
- Add missing UI locale keys and update tests
|
2026-01-20 22:23:00 +08:00 |
|
linshen
|
5de5614664
|
refactor(core): 重构LLM服务为Adapter模式架构
重大架构升级:
- 引入Adapter模式,实现Provider解耦
- 新增7个Provider适配器(OpenAI、Gemini、Anthropic等)
- 精简LLMService从2000+行到300+行
- 引入TextModelConfig新类型系统,支持向后兼容
- 完善类型定义和测试覆盖
架构改进:
- 抽象基类AbstractTextProviderAdapter提供模板方法
- TextAdapterRegistry统一管理所有适配器
- 支持动态模型获取(OpenAI兼容API)
- 提供配置转换器实现平滑升级
新增文件:
- packages/core/src/services/llm/adapters/ (8个文件)
- packages/core/src/services/model/converter.ts
- packages/core/src/services/model/text-model-defaults.ts
- docs/architecture/llm-refactor.md
- 9个新增测试文件
修改文件:
- packages/core/src/services/llm/service.ts
- packages/core/src/services/model/types.ts
- packages/core/src/index.ts
- 31个测试文件更新
- UI组件和composables适配新类型
BREAKING CHANGE: 模型配置结构从ModelConfig升级为TextModelConfig
(已提供converter.ts确保向后兼容和自动转换)
测试结果:
✅ TypeScript类型检查通过 (core + ui)
✅ 563个测试通过,90个跳过
✅ Core包构建成功
|
2025-10-04 01:01:08 +08:00 |
|
linshen
|
e7687dfd8c
|
feat: 新增toolsContext预定义变量支持
- 在核心常量中添加toolsContext变量定义
- 用于快速模板中的{{toolsContext}}变量替换
- 支持系统自动注入可用工具信息
- 更新变量编辑器和导入器
- 将toolsContext加入预定义变量过滤列表
- 防止用户创建同名自定义变量产生冲突
- 完善国际化支持
- 中英文添加toolsContext变量说明文案
- 标注为系统自动注入的工具信息
- 更新相关测试用例
- 集成测试中同步更新预定义变量列表
- 确保测试覆盖新增变量的处理逻辑
这个变更为工具上下文模板提供了完整的变量系统支持。
|
2025-09-11 21:11:03 +08:00 |
|
linshen
|
71600b5081
|
feat: 重构导入导出架构
## 核心架构重构
- 创建IImportExportable接口,定义统一的导入导出规范
- 新增ImportExportError错误类,提供专门的错误处理
- 将导入导出逻辑从集中式DataManager分散到各个服务
- DataManager职责精简:从375行减至67行(-308行),仅负责协调
## 存储键架构优化
- 移动storage-keys.ts从ui包到core包,实现统一管理
- 修复存储键双重用途问题:物理存储键vs逻辑JSON导出键
- PreferenceService添加'pref:'前缀处理物理存储
- 解决数据导出不完整的关键架构缺陷
## 服务层改造
### ModelManager
- 实现IImportExportable接口(+209行,-153行)
- 添加exportData/importData/validateData方法
- 保持向后兼容的数据格式
### TemplateManager
- 实现分布式导入导出逻辑
- 移除过度设计的configurable storageKey
- 统一使用PreferenceService管理用户偏好
### HistoryManager
- 添加完整的导入导出实现
- 支持数据验证和错误处理
### PreferenceService
- 实现统一的用户设置导入导出
- 处理存储键前缀转换逻辑
- 支持builtin-template-language等核心设置
## Electron桌面端更新
- main.js: 新增148行IPC处理逻辑
- preload.js: 新增177行API暴露
- 更新所有service proxy类支持新接口
- 保持IPC通信的类型安全
## 测试体系完善
- 新增各服务专门的import-export.test.ts文件
- 创建data/import-export-integration.test.ts集成测试
- 建立AI自动化测试框架验证存储键一致性
- 更新现有测试适配新架构
## 文档与架构说明
- 创建import-export-interface-design.md设计文档
- 添加storage-key-architecture.md架构说明
- 建立AI自动化测试文档体系
- 更新workspace文档记录重构过程
BREAKING CHANGE: 导入导出接口从集中式DataManager重构为分布式服务实现,
各服务现在必须实现IImportExportable接口,存储键架构发生变化
|
2025-07-12 11:56:14 +08:00 |
|
linshen
|
037e67be3a
|
feat: 添加应用窗口图标支持,优化图标文件存在性检查
|
2025-07-06 14:21:41 +08:00 |
|
linshen
|
2f4d7429ef
|
feat: 更新文档与组件,引入应用初始化器与服务依赖注入,完成Vue Composable架构重构
- 更新 `composables-refactor-plan.md` 与 `experience.md`,记录重构成果、问题与后续计划,强调顶层声明和响应式连接。引入 `useAppInitializer`,及其对架构统一和代码复用的贡献。
- 更新多个组件与Composable文件,使其通过 `inject` 获取服务实例引用,解决了`ref` 迁移到 `reactive` 和异步回调中调用Composable函数导致的错误,优化了模板管理器的使用方式,并移除对服务单例的直接依赖。
- 修复 `templateLanguageService` 依赖注入失败的 bug,更新组件导出和模板管理器,优化代码结构与可读性。
- 将背景与目标修改为当前状态与问题,明确上层应用尚未适配底层重构的现状,并记录Web应用和浏览器插件启动失败问题,提出后续修复步骤。更新实施计划,强调对齐上层应用与底层服务架构的必要性。
|
2025-06-28 19:43:11 +08:00 |
|
linshen
|
688bb2e2bf
|
feat(core): 添加高级LLM参数配置功能
- 在模型配置中引入 `llmParams` 字段,允许用户为每个模型单独设置高级LLM参数
- 更新文档,详细说明 `llmParams` 的使用方法及示例
- 在模型管理器中实现对 `llmParams` 的验证和处理逻辑
- 增强 LLMService 以支持从 `llmParams` 中提取参数,优化模型行为控制
- 更新 UI 组件以支持高级参数的配置和展示,提升用户体验
|
2025-06-07 16:30:39 +08:00 |
|
linshen
|
80a5b7e789
|
fix(core): 更新版本号并增强UI配置导入安全性
- 将版本号更新至1.0.5
- 添加UI配置键和值的安全性验证,防止恶意键和无效值的导入
- 改进错误处理逻辑,增强导入过程的健壮性
- 添加相关单元测试以确保新功能的正确性
|
2025-05-26 22:48:06 +08:00 |
|
linshen
|
a2173548d7
|
feat(core): 重构数据管理器并添加 UI 配置导入导出功能
- 重构了 DataManager 类,增加了 UI 配置导入导出功能
- 优化了数据导入流程,能够处理部分数据导入失败的情况
- 添加了对 UI 配置数据的导入导出支持
- 重构了部分错误处理逻辑,提高了代码的健壮性
|
2025-05-26 22:48:01 +08:00 |
|