diff --git a/docs/TODO.md b/docs/TODO.md index b4103e4..d4cf5cc 100644 --- a/docs/TODO.md +++ b/docs/TODO.md @@ -1,273 +1,39 @@ -# SingerOS 总体待办清单 +核心流程: -> **最后更新:2026-04-25** -> **架构版本:v3.1(三核架构 + 领域驱动设计)** -> -> 本文档是SingerOS项目的总体待办清单,按优先级和阶段划分。 -> 详细的Server和Worker任务分别参见: -> - [TODO_SERVER.md](./TODO_SERVER.md) - Server端具体任务 -> - [TODO_WORKER.md](./TODO_WORKER.md) - Worker端具体任务 +- [ ] 数字员工 CRUD +- [ ] 数字员工绑定对应worker服务,启停管理 +- [ ] 会话管理CRUD +- [ ] agent运行流程(接收、处理、响应)@裴 +- [ ] 消息发送、调用执行流程。NATS订阅消费->页面响应 ---- +授权管理: -## 当前关注重点 +- [ ] 第三方账户授权接入(github等) +- [ ] -1. **API接口规范** - 需要完善API接口定义,为前端开发提供明确的接口契约 -2. **会话管理体系** - 需要建立Session/Conversation数据模型和管理API,支持多轮对话场景 -3. **事件流转验证** - 需要验证Webhook→Event→Agent→Response完整链路的可行性 -4. **架构模块完善** - 需要根据v3.1架构文档补充Execution Engine等关键模块 +上下文优化: ---- +- [ ] 记忆模块 @裴 +- [ ] 上下文压缩 +- [ ] 自我学习进化 +- [ ] 错误、异常捕获/纠正,提升稳定性 +- [ ] 对话响应风格优化 -## P0 - 紧急任务(1-2周内必须完成) +流程能力完善: -### 目标:让前端可以开始开发,同时打通核心事件链路 +- [ ] 共享工作目录 +- [ ] 项目绑定 +- [ ] 消息渠道拓展、IM、webhook -#### P0-1: API接口定义(立即开始) +定制流程/示例skill -**优先级:★★★★★** -**目的:前端不再闲着,可以基于接口定义和Mock数据开发** +- [ ] PR Review +- [ ] ... -- [ ] 数字员工管理API - - 创建、查询、更新、删除、启用/停用数字员工 - - 支持分页列表查询 - - [详细任务 → TODO_SERVER.md](./TODO_SERVER.md#1-数字员工管理) - -- [ ] 会话管理API - - 创建会话、发送消息、查询会话历史 - - 支持流式响应(SSE) - - [详细任务 → TODO_SERVER.md](./TODO_SERVER.md#2-会话管理) +基础模块完善 -- [ ] 项目绑定API - - 项目CRUD、GitHub OAuth授权、账号管理 - - [详细任务 → TODO_SERVER.md](./TODO_SERVER.md#3-项目绑定) - -#### P0-2: NATS Stream会话控制(第2周) - -**优先级:★★★★** -**目的:实现基于SessionID的事件路由和隔离** - -- [ ] Session-based Stream策略设计 -- [ ] Session Stream生命周期管理 -- [ ] Consumer Group管理 -- [ ] 消息TTL和清理策略 -- [ ] [详细任务 → TODO_WORKER.md](./TODO_WORKER.md#1-nats-jetstream优化) - -#### P0-3: 会话上下文管理(第2周) - -**优先级:★★★★** -**目的:Agent支持会话历史和上下文** - -- [ ] SessionContext存储接口 -- [ ] 基于Redis的短期记忆 -- [ ] Agent Run时注入会话历史 -- [ ] 对话轮次限制 -- [ ] [详细任务 → TODO_WORKER.md](./TODO_WORKER.md#2-会话上下文管理) - ---- - -## P1 - 重要任务(3-4周完成) - -### 目标:完善架构模块,打通事件流转 - -#### P1-1: Execution Engine实现(架构要求) - -**优先级:★★★★** -**目的:符合v3.1架构文档要求,Event Engine与Execution Engine解耦** - -- [ ] Execution Engine核心逻辑 -- [ ] 任务分发器 -- [ ] 同步/异步执行器 -- [ ] 重试和超时控制 -- [ ] Orchestrator重构使用Execution Engine -- [ ] [详细任务 → TODO_WORKER.md](./TODO_WORKER.md#3-execution-engine实现) - -#### P1-2: Event Engine完善 - -**优先级:★★★** -**目的:事件路由插件化,去除硬编码** - -- [ ] 独立Router提取 -- [ ] 内置事件处理器(PR/Issue/Push) -- [ ] [详细任务 → TODO_WORKER.md](./TODO_WORKER.md#4-event-engine完善) - -#### P1-3: GitHub PR Review完整链路 - -**优先级:★★★★★** -**目的:端到端验证MVP核心功能** - -- [ ] PR Diff获取能力 -- [ ] PR Review发布能力 -- [ ] code-review Skill实现 -- [ ] Webhook配置 -- [ ] 端到端测试 -- [ ] [详细任务 → TODO_WORKER.md](./TODO_WORKER.md#6-github-pr-review完整链路) - ---- - -## P2 - 次要任务(5-6周完成) - -### 目标:前端功能完善,Skill系统落地 - -#### P2-1: 前端功能开发 - -**优先级:★★★** -**目的:完整的用户界面** - -- [ ] 数字员工管理页面 -- [ ] 会话页面(消息气泡、流式打字机) -- [ ] 会话历史侧边栏 -- [ ] 项目绑定界面 -- [ ] [详细任务 → TODO_SERVER.md](./TODO_SERVER.md#5-前端协同) - -#### P2-2: Skill实现 - -**优先级:★★** -**目的:将SKILL.md转换为可执行的Go代码** - -- [ ] code-review Skill -- [ ] weather Skill -- [ ] commit-conventions Skill -- [ ] humanizer-zh Skill -- [ ] [详细任务 → TODO_WORKER.md](./TODO_WORKER.md#5-skill实现) - ---- - -## P3 - 扩展任务(后续规划) - -### 长期能力建设 - -- [ ] Memory系统(长期记忆/RAG) -- [ ] Workflow Engine(DAG编排) -- [ ] Policy Engine(权限控制) -- [ ] Model Router(多模型管理) -- [ ] 多租户隔离 -- [ ] RBAC权限 -- [ ] 成本管理 -- [ ] 其他渠道Connector(GitLab、飞书、企业微信) -- [ ] Edge Runtime -- [ ] Remote Runtime -- [ ] Runtime Manager - ---- - -## 里程碑 - -### Phase 1(Week 1)- 接口定义完成 ✅ 进行中 -- [ ] 数字员工API定义完成 -- [ ] 会话管理API定义完成 -- [ ] 项目绑定API定义完成 -- [ ] DTO和数据模型定义完成 -- [ ] 前端可以基于Mock开始开发 - -**交付物:** -- TODO_SERVER.md 完整定义 -- API文档 -- Mock数据和服务 - -### Phase 2(Week 2)- 会话控制完成 -- [ ] NATS Stream会话管理实现 -- [ ] Session上下文持久化 -- [ ] Agent支持会话历史 -- [ ] 前端会话页面对接真实API - -**交付物:** -- Session管理API可用 -- SSE流式响应可用 -- 前端可以发送消息并收到流式响应 - -### Phase 3(Week 3)- 事件流转打通 -- [ ] Execution Engine实现 -- [ ] Event Engine完善 -- [ ] GitHub PR Review端到端跑通 -- [ ] 前端会话功能完整 - -**交付物:** -- 测试仓库创建PR后自动收到AI Review -- Review包含具体的代码分析 -- 无错误日志 - -### Phase 4(Week 4)- MVP完善 -- [ ] 所有P0/P1任务完成 -- [ ] Issue自动回复可用 -- [ ] 前端功能完善 -- [ ] 稳定性优化 - -**交付物:** -- MVP功能完整可用 -- 系统稳定性 > 99% -- 端到端延迟 < 30秒 - ---- - -## 任务分配建议 - -### 后端团队(2-3人) - -**后端开发A(API方向):** -- 数字员工管理API -- 会话管理API -- 项目绑定API - -**后端开发B(事件方向):** -- Execution Engine实现 -- Event Engine完善 -- NATS Stream管理 -- GitHub工具实现 - -**前端开发(1人):** -- 数字员工管理页面 -- 会话页面 -- 项目绑定页面 -- API对接和WebSocket/SSE - ---- - -## 风险控制 - -### 关键风险 - -1. **API设计不合理** - 需要反复调整 - - 缓解:先出接口文档评审,再实现 - -2. **NATS Stream策略复杂** - 可能影响性能 - - 缓解:先实现基础版,后续优化 - -3. **Execution Engine与Orchestrator解耦困难** - - 缓解:先定义清晰接口,逐步迁移 - -### 不允许做的事情 - -- ❌ 不要设计复杂Agent(Plan/Reflect) -- ❌ 不要做Memory系统(短期除外) -- ❌ 不要做多租户 -- ❌ 不要做过度的Workflow Engine - ---- - -## 成功标准 - -### MVP验收(Phase 3完成后) - -- [ ] 可以创建一个代码助手数字员工 -- [ ] 可以绑定GitHub仓库 -- [ ] 可以通过GitHub PR事件触发任务 -- [ ] 可以自动分析代码并生成Review -- [ ] 可以回写PR审查评论到GitHub -- [ ] 可以查看任务执行记录 -- [ ] 审查质量达到人工审查的60%以上 -- [ ] 端到端延迟小于30秒 -- [ ] 系统稳定性大于99% - ---- - -## 相关文档 - -- [ARCHITECTURE.md](./ARCHITECTURE.md) - 架构设计文档(v3.1) -- [PRD.md](./PRD.md) - 产品需求文档(v2.0) -- [TODO_SERVER.md](./TODO_SERVER.md) - Server端详细任务 -- [TODO_WORKER.md](./TODO_WORKER.md) - Worker端详细任务 - ---- - -*最后更新:2026-04-25* +- [ ] 账户、租户体系 +- [ ] 数据库版本管理 +- [ ] 响应结构规范 +- [ ] 业务规则、数据配置 +- [ ] ci/cd diff --git a/docs/TODO_SERVER.md b/docs/TODO_SERVER.md deleted file mode 100644 index 5f72724..0000000 --- a/docs/TODO_SERVER.md +++ /dev/null @@ -1,250 +0,0 @@ -# TODO_SERVER - Server端详细任务清单 - -> **最后更新:2026-04-25** -> -> 本文档定义Server端的具体开发任务,按模块和优先级划分。 - ---- - -## Server职责定义 - -根据v3.1架构文档,Server端(Assistant Service)负责: - -1. **接口层(Interface Layer)** - - 对外统一API入口 - - 用户请求处理 - - 多渠道统一访问 - -2. **连接层** - - Connector注册和管理 - - Webhook接收(GitHub、GitLab等) - - 事件标准化和发布 - -3. **会话管理** - - Session创建和维护 - - 消息历史存储 - - 流式响应(SSE/WebSocket) - -**注意:** Server端在Phase 1-2阶段仍包含Orchestrator,后续逐步分离到Worker。 - ---- - -## 1. 数字员工管理 - -**优先级:P0-1(最优先)** - -### 目标 - -实现数字员工的完整生命周期管理,包括创建、查询、更新、删除和状态切换。 - -### 需要完成的工作 - -1. **数据模型定义** - - 定义数字员工的请求和响应数据结构 - - 定义查询参数和分页响应结构 - - 定义配置请求和响应结构 - -2. **Service层实现** - - 实现创建数字员工的业务逻辑 - - 实现查询单个数字员工的业务逻辑 - - 实现分页列表查询的业务逻辑 - - 实现更新数字员工的业务逻辑 - - 实现删除数字员工的业务逻辑 - - 实现启用/停用数字员工的业务逻辑 - -3. **HTTP Handler实现** - - 实现创建数字员工的HTTP处理函数 - - 实现查询单个数字员工的HTTP处理函数 - - 实现分页列表查询的HTTP处理函数 - - 实现更新数字员工的HTTP处理函数 - - 实现删除数字员工的HTTP处理函数 - - 实现启用/停用数字员工的HTTP处理函数 - - 完成路由注册 - -4. **测试** - - 编写Service层单元测试 - - 编写API集成测试 - ---- - -## 2. 会话管理 - -**优先级:P0-2** - -### 目标 - -实现完整的会话管理能力,支持创建会话、发送消息、查询历史,并支持流式响应。 - -### 需要完成的工作 - -1. **数据模型定义** - - 定义会话数据模型 - - 定义消息数据模型 - - 定义会话和消息的请求响应结构 - -2. **数据库迁移** - - 创建会话表 - - 创建消息表 - -3. **Service层实现** - - 实现创建会话的业务逻辑 - - 实现查询会话详情的业务逻辑(含消息历史) - - 实现分页列表查询的业务逻辑 - - 实现发送消息并触发Agent的业务逻辑 - - 实现删除会话的业务逻辑 - - 实现归档会话的业务逻辑 - -4. **HTTP Handler实现** - - 实现创建会话的HTTP处理函数 - - 实现查询会话详情的HTTP处理函数 - - 实现分页列表查询的HTTP处理函数 - - 实现发送消息的HTTP处理函数 - - 实现删除会话的HTTP处理函数 - - 完成路由注册 - -5. **SSE流式响应** - - 实现流式响应的HTTP处理函数 - - 定义SSE事件格式 - - 实现EventSink适配器(接收Agent流式事件) - - 实现心跳机制(防止连接超时) - -6. **测试** - - 编写Service层单元测试 - - 编写API集成测试 - - 进行SSE压力测试 - ---- - -## 3. 项目绑定 - -**优先级:P0-3** - -### 目标 - -实现项目与数字员工的绑定管理,包括GitHub OAuth授权流程和账号管理。 - -### 需要完成的工作 - -1. **数据模型定义** - - 定义项目数据模型 - - 定义安装数据模型 - - 定义项目和OAuth的请求响应结构 - - 定义授权账号响应结构 - -2. **Service层实现** - - 实现创建项目绑定的业务逻辑 - - 实现查询项目详情的业务逻辑 - - 实现分页列表查询的业务逻辑 - - 实现更新项目配置的业务逻辑 - - 实现删除项目绑定的业务逻辑 - - 实现获取已授权账号列表的业务逻辑 - -3. **GitHub OAuth流程完善** - - 完善OAuth状态管理(防止CSRF) - - 实现Token持久化 - - 实现Refresh Token处理 - - 实现Installation事件处理(Webhook) - -4. **HTTP Handler实现** - - 实现创建项目的HTTP处理函数 - - 实现查询项目的HTTP处理函数 - - 实现分页列表查询的HTTP处理函数 - - 实现更新项目的HTTP处理函数 - - 实现删除项目的HTTP处理函数 - - 实现GitHub OAuth的HTTP处理函数 - - 实现GitHub OAuth回调的HTTP处理函数 - - 实现获取已授权账号列表的HTTP处理函数 - - 完成路由注册 - -5. **测试** - - 编写Service层单元测试 - - 编写API集成测试 - ---- - -## 4. GitHub PR Review能力 - -**优先级:P1-3** - -### 目标 - -实现GitHub PR Review所需的能力,包括获取PR代码差异和发布Review。 - -### 需要完成的工作 - -1. **能力实现** - - 实现获取PR代码差异的能力 - - 实现发布PR Review的能力 - - 实现获取PR讨论历史的能力 - -2. **能力注册** - - 注册PR相关能力 - -3. **测试** - - 编写单元测试 - - 进行集成测试(需要GitHub Token) - ---- - -## 5. 前端协同 - -**优先级:P2-1** - -### 目标 - -为前端开发提供完整的API文档和Mock数据,确保前端可以并行开发。 - -### 需要完成的工作 - -1. **API文档** - - 编写数字员工管理API文档 - - 编写会话管理API文档 - - 编写项目绑定API文档 - - 编写SSE事件格式说明 - - 编写错误码定义 - -2. **Mock服务** - - 提供数字员工CRUD Mock数据 - - 提供会话和消息Mock数据 - - 提供项目绑定Mock数据 - - 提供SSE流式响应Mock数据 - ---- - -## 6. 基础设施完善 - -**优先级:P1** - -### 目标 - -完善Server端的基础设施,包括数据库迁移管理、错误处理和请求验证。 - -### 需要完成的工作 - -1. **数据库迁移管理** - - 实现自动迁移机制 - - 实现迁移版本管理 - -2. **错误处理中间件** - - 实现统一错误响应格式 - - 实现错误日志记录 - - 实现错误码映射 - -3. **请求验证中间件** - - 实现请求参数验证 - - 实现验证错误格式化 - -4. **注册中间件** - - 完成中间件注册 - ---- - -## 依赖关系 - -- 数据结构定义 → Service实现 → Handler实现 → 路由注册 → 前端对接 -- 数据库迁移 → Service实现 → 单元测试 → 集成测试 -- GitHub能力 → PR Review链路 - ---- - -*最后更新:2026-04-25* diff --git a/docs/TODO_WORKER.md b/docs/TODO_WORKER.md deleted file mode 100644 index 8934508..0000000 --- a/docs/TODO_WORKER.md +++ /dev/null @@ -1,384 +0,0 @@ -# TODO_WORKER - Worker端详细任务清单 - -> **最后更新:2026-04-25** -> -> 本文档定义Worker端的具体开发任务,按模块和优先级划分。 - ---- - -## Worker职责定义 - -根据v3.1架构文档,Worker端负责: - -1. **控制面(Control Plane)** - - Event Engine:事件路由与分发 - - Memory:会话上下文管理 - - Policy Engine:权限控制 - -2. **执行面(Execution Plane)** - - Execution Engine:任务执行调度 - - Agent Runtime:LLM推理和工具调用 - - Skill执行:技能调用和执行 - -**注意:** 当前代码中Orchestrator(Event Engine)在Server中运行,Phase 2阶段需要逐步分离到Worker进程。 - ---- - -## 1. NATS JetStream优化 - -**优先级:P0-2** - -### 目标 - -实现基于Session的事件路由和隔离,优化NATS JetStream的Stream策略。 - -### 需要完成的工作 - -1. **Stream策略设计** - - 设计Session-based Stream策略 - - 设计Events Stream策略 - -2. **Session Stream管理器实现** - - 实现为Session创建Stream的能力 - - 实现删除Session Stream的能力 - - 实现发布用户消息的能力 - - 实现发布助手消息的能力 - - 实现发布流式事件的能力 - - 实现订阅Session事件的能力 - -3. **Consumer Group管理** - - 定义持久化Consumer命名规范 - - 实现Consumer配置管理 - - 实现Consumer健康检查 - -4. **消息TTL和清理策略** - - 实现Stream级别Retention策略 - - 实现定期清理过期Session - - 实现消息压缩(可选) - -5. **集成** - - Session创建时初始化Stream - - Session关闭时清理资源 - -6. **测试** - - 编写单元测试 - ---- - -## 2. 会话上下文管理 - -**优先级:P0-3** - -### 目标 - -实现会话上下文的存储和管理,支持Agent在运行时注入会话历史。 - -### 需要完成的工作 - -1. **会话存储接口定义** - - 定义会话存储接口 - - 定义会话上下文结构 - -2. **基于Redis的短期记忆实现** - - 实现Redis存储 - - 实现会话数据序列化 - - 实现TTL管理 - - 实现消息历史限制 - -3. **Agent集成** - - Agent Run时加载Session历史 - - 构建Messages列表 - - 注入到请求上下文 - -4. **对话轮次限制** - - 实现对话轮次限制配置 - - 实现超出限制时的截断逻辑 - - 可选:实现摘要压缩 - -5. **测试** - - 编写单元测试 - - 进行集成测试(需要Redis) - ---- - -## 3. Execution Engine实现 - -**优先级:P1-1(架构核心)** - -**重要性:** 这是v3.1架构文档要求的关键模块,当前代码中缺失。Execution Engine负责将Event Engine与Agent Runtime解耦。 - -### 目标 - -实现Execution Engine,负责任务执行调度,与Event Engine解耦。 - -### 需要完成的工作 - -1. **目录结构创建** - - 创建execution目录和相关子目录 - -2. **接口定义** - - 定义Execution Engine接口 - - 定义Executor接口 - - 定义Task类型 - -3. **Engine核心实现** - - 实现执行器注册表 - - 实现任务分发逻辑 - - 实现并发控制 - - 实现执行历史追踪(可选) - -4. **同步执行器实现** - - 实现同步执行任务(阻塞直到完成) - - 集成超时控制 - - 集成错误处理 - -5. **异步执行器实现** - - 实现异步执行任务(立即返回,后台执行) - - 实现任务队列 - - 实现任务状态追踪 - -6. **重试控制实现** - - 实现重试策略配置 - - 实现指数退避算法 - - 实现重试条件判断 - -7. **超时控制实现** - - 实现超时Context创建 - - 实现超时自动取消 - - 实现超时错误返回 - -8. **与Orchestrator集成** - - 重构Orchestrator使用Execution Engine - - 创建AgentRun执行器 - - 创建Skill执行执行器 - -9. **测试** - - 编写单元测试 - - 进行集成测试 - ---- - -## 4. Event Engine完善 - -**优先级:P1-2** - -### 目标 - -完善Event Engine,实现事件路由插件化,去除硬编码。 - -### 需要完成的工作 - -1. **独立Router提取** - - 实现事件路由器 - - 实现注册Handler能力 - - 实现获取Handler能力 - - 实现路由事件到Handler能力 - -2. **内置Handler目录和实现** - - 创建builtins目录 - - 定义Handler接口 - -3. **PR Handler实现** - - 实现解析PR事件(opened、updated、closed) - - 实现提取PR信息 - - 实现创建Agent Run任务 - - 实现调用Execution Engine执行 - -4. **Issue Handler实现** - - 实现解析Issue事件 - - 实现提取Issue信息 - - 实现创建Agent Run任务 - - 实现调用Execution Engine执行 - -5. **Push Handler实现** - - 实现解析Push事件 - - 实现提取commits信息 - - 可选:实现触发代码审查或CI - -6. **Orchestrator重构** - - 重构Orchestrator使用Router - - 注册内置Handler - - 删除硬编码switch-case - -7. **测试** - - 编写单元测试 - - 进行集成测试 - ---- - -## 5. Skill实现 - -**优先级:P2-2** - -### 目标 - -将SKILL.md转换为实际可执行的Go代码,实现核心Skills。 - -### 需要完成的工作 - -1. **code-review Skill实现** - - 实现代码审查Skill - - 实现Prompt构建 - - 实现结果解析 - -2. **weather Skill实现(示例)** - - 实现天气查询Skill - - 集成天气API - -3. **commit-conventions Skill实现** - - 实现commit message格式验证Skill - - 实现格式验证逻辑 - -4. **humanizer-zh Skill实现** - - 实现中文表达优化Skill - - 实现文本优化逻辑 - -5. **Skill注册** - - 实现Skill注册功能 - - 实现自动加载skills目录下的所有Skill - -6. **测试** - - 编写单元测试 - - 进行集成测试 - ---- - -## 6. GitHub PR Review完整链路 - -**优先级:P1-3(MVP核心)** - -### 目标 - -端到端验证GitHub PR自动审查流程,确保从Webhook接收到Review发布的完整链路正常工作。 - -### 端到端流程 - -1. GitHub Webhook → Server接收 -2. 事件标准化 → 发布到NATS -3. Event Engine消费 → Router路由到PRHandler -4. PRHandler提取信息 → 创建Task -5. Execution Engine执行 → AgentRunExecutor -6. Agent Run → 调用code-review Skill或LLM -7. Skill执行 → 调用获取PR diff的能力 -8. LLM分析 → 生成审查意见 -9. Skill执行 → 调用发布PR Review的能力 -10. 结果返回 → 发布Review到GitHub - -### 需要验证的点 - -- [ ] Webhook签名验证正确 -- [ ] 事件正确发布到NATS -- [ ] Event Engine正确消费事件 -- [ ] PRHandler正确提取PR信息 -- [ ] Agent正确执行code-review -- [ ] 能力调用成功(需要GitHub Token) -- [ ] Review正确发布到GitHub -- [ ] 审查意见质量可接受 - -### 需要完成的工作 - -1. **配置准备** - - 配置GitHub Webhook订阅 - - 准备测试仓库 - - 配置OAuth Token - -2. **验证各组件** - - 验证Webhook签名验证 - - 验证事件发布 - - 验证PRHandler执行 - - 验证code-review Skill - - 验证PR Diff能力 - - 验证Publish Review能力 - -3. **端到端测试** - - 创建测试PR进行端到端测试 - - 验证Review发布结果 - - 检查日志无错误 - - 进行性能测试(延迟<30秒) - ---- - -## 7. Worker进程分离(后续) - -**优先级:P3** - -### 目标 - -将Orchestrator从Server进程分离到独立Worker进程。 - -### 需要完成的工作 - -1. **Worker启动逻辑实现** - - 实现Worker启动逻辑 - - 加载配置 - - 初始化NATS Subscriber - - 初始化Execution Engine - - 初始化Orchestrator - -2. **Server端调整** - - Server端移除Orchestrator - - Server端保留Publisher - -3. **部署配置更新** - - 更新部署配置 - - 更新Docker Compose - -4. **测试** - - 测试独立Worker - ---- - -## 8. 测试和文档 - -**优先级:P2** - -### 目标 - -为Worker端各模块编写充分的测试和文档。 - -### 需要完成的工作 - -1. **单元测试** - - Execution Engine单元测试 - - Event Engine单元测试 - - Session Store单元测试 - - Skill单元测试 - -2. **集成测试** - - NATS集成测试 - - Execution Engine集成测试 - - Event Engine集成测试 - - PR Review链路集成测试 - -3. **文档** - - Worker架构说明 - - Execution Engine设计文档 - - Event Engine设计文档 - - NATS Stream设计规范 - - 部署指南 - ---- - -## 依赖关系 - -- NATS Stream管理 → Session上下文 → Agent Run注入历史 -- Execution Engine → SyncExecutor/AsyncExecutor → AgentRunExecutor/SkillExecutor -- Event Engine Router → PR/Issue/Push Handler → AgentRunExecutor → Agent Runtime → 能力调用 -- Session上下文 → Agent Runtime - ---- - -## 与Server端的协作点 - -| Worker任务 | 依赖的Server任务 | 说明 | -|-----------|-----------------|------| -| Session上下文管理 | Session数据模型 | 共用Session ID | -| NATS Stream管理 | Session创建API | Session创建时初始化Stream | -| Agent Run注入历史 | SendMessage API | SendMessage触发Agent Run | -| Execution Engine | Assistant Service | Execute调用Agent Runner | -| PR Handler | GitHub Webhook | Webhook发布事件到NATS | -| PR Review链路 | GitHub PR能力 | 能力实现在backend/tools/ | - ---- - -*最后更新:2026-04-25*