ForcePilot/docs/develop-guides/roadmap.md
Kris 9e503becd3
Some checks failed
Deploy VitePress site to Pages / build (push) Has been cancelled
Deploy VitePress site to Pages / Deploy (push) Has been cancelled
feat(plugin): 实现完整的插件注册管理系统
新增了插件相关的完整领域模型、应用服务、基础设施实现,包括:
1. 插件状态、注册模式、来源等基础枚举和数据结构
2. 插件清单解析、发现、加载工具类
3. 插件注册表领域服务和内存存储实现
4. 插件相关的命令、查询、事件定义
5. 插件REST API接口和DTO映射
6. 集成了原有通道适配器到插件系统
7. 新增内置插件注册和自动发现能力
2026-05-31 16:44:13 +08:00

78 lines
4.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 开发路线图
路线图可能会经常变更,如果有强烈的建议,可以在 [issue](https://github.com/xerrors/Yuxi/issues) 中提。
日志添加规范For Agent:
- 同一版本的多次功能更新时,应以功能为单位进行更新,比如之前添加了 A 功能的更新,在后续的更新中修复了因 A 功能引入的 bug那么这个修复说明应该和 A 功能描述放在一起,而不是新增一条修复记录,功能更新同理。
### 看板
- Langfuse 增加 self-host 模式支持,补齐私有化部署与配置说明(已支持 cloud待调试
- 检索测试中,添加问答
- 集成 Memory基于 deepagents 的文件后端实现,需要考虑定位
- Yuxi-cli 相关的功能,放在后续版本中实现(不是类似于编程助手,而是管理平台的工,等各个 router 接口优化之后)
- 完善测试基准自动生成功能,目前的实现过于简单,无法覆盖实际需求
- 完善 Skills 的环境变量注入
- 拓宽检索的知识源统一多知识源channel目前已知知识库/知识图谱/网页,可拓展:个人知识库、数据库、历史对话等
- 前置任务,多知识库并行检索(扩展 query_kb
- 新增 query_keywords 工具,专门用于基于关键词命中的排序,也结合词频(和 BM25 的区别?)
- 参考 AgenticRAG 方案扩展当前 Search 工具:基于知识库工具返回的 resource_id/file_id 改进 Search 返回递增文件序列 ID完善 Find 与 Open 能力Summary 暂缓
- 评估,基于 Agent 的评估,这里应该是结合 Langfuse 实现
### Bugs
- 目前的知识库的图片存在公开访问风险
### BREAKING CHANGE不兼容变更0.7 版本再实现)
- 将自定义provider 的实现逻辑,从文件移动到数据库中,并将相关处理代码,移出 config 文件,放到 provider 模块中
- 已补充方案文档:`docs/vibe/2026-04-18-custom-provider-db-refactor-plan.md`明确采用“provider 一行、models 放 JSON、移除 provider 默认模型”的落地方案
- 优化知识库的 API 接口设计,使用 /{db_id}/xxx 的形式,整合 mindmap / eval 接口
- 移除 v1 版本的 provider 统一接口,改为 v2 版本的 provider 模块接口
## 版本记录
### 0.6.3 开发记录
- 多渠道网关 Router 渠道适配器优化DDD 重构)
- C04: Container 添加 Registry 引用、快照方法、require() 方法,显式化容器字段
- C04-B: DeliveryService/OutboxRetryWorker/WsConnectionManager 迁移到 Registry 读取适配器
- C04-C: 路由层移除直接操作 adapters统一通过 PluginRegistryAppService 访问
- R01: Metrics 端点添加认证
- R02: 公共方法 resolve_config() 替代私有属性访问
- R03: 新增 ActiveSessionExistsExceptiondeactivate 时检查活跃会话
- R04: 重复绑定校验DuplicateBindingException + IntegrityError 捕获)
- R05: 正向缓存写入create_binding 后写缓存而非删缓存)
- R06: ConfigService 注入 AuthService配置热更新时同步 auth_password 凭证
- R09: SSE ticket 机制POST /channel/sse/ticket 获取一次性 ticketGET /channel/sse 用 ticket 兑换)
- R10: 修正 can_activate 逻辑,新增 can_deactivate/can_reload 状态检查
- R11: Channel Status 补全 active_sessions/ws_connected 字段
- R12: Channel Status 并发检查asyncio.gather 并行 is_healthy + count_sessions
- R13: Readyz 使用 pg_manager.is_initialized 公共属性
- R14: Readyz 并发检查各组件
- R15: Readyz 支持 degraded 状态200 返回)
- R16: Bindings PATCH 端点(部分更新 agent_config_id/is_enabled
- R19: 插件列表 status 参数使用 Literal 类型校验
- R20: Binding 创建时外键校验AgentConfigLookupPort
- R21: 通用异常固定错误消息InvalidPluginStateException/ActiveSessionExistsException
- R22: SSE 单 session 连接数限制MAX_CONNECTIONS_PER_SESSION=5
- R23: SSE JSON 转义json.dumps 替代 f-string
- R24: Event publish 失败日志级别降为 warning
- R25/R30: 容器字段显式化plugin_registry_impl/plugin_app_service
- R26: 插件 manifest/config-schema 端点添加 response_model
- R28: healthz timeline 通过环境变量控制
- R29: 审计追踪channel_auth_operator_depends 返回操作者标识)
- R31: activate/deactivate/reload 路由调用 can_* 方法前置校验
- C02: 新增 ErrorResponse 统一错误响应模型
- C03: Container.require() 统一 None 检查
---
历史版本发布记录已迁移到 [版本变更记录](./changelog.md)。
维护说明:
- roadmap 仅保留未来规划(看板/Bugs/里程碑方向)。
- 具体版本发布内容统一维护在 changelog。