Skip to content

refactor(agent worker):split runtime package - #45

Merged
Heyflyingpig merged 1 commit into
developfrom
refactor(agent-worker)/split-runtime-package
Aug 6, 2026
Merged

refactor(agent worker):split runtime package#45
Heyflyingpig merged 1 commit into
developfrom
refactor(agent-worker)/split-runtime-package

Conversation

@Heyflyingpig

@Heyflyingpig Heyflyingpig commented Aug 6, 2026

Copy link
Copy Markdown
Owner

完成内容

  • worker.py 拆分为 package,入口仍是 python -m app.agent.worker
  • runtime.py 新增显式 ProcessRuntimeSlotRuntime
    • LLM 为进程级共享。
    • MCP client/session/tools 与 graph 为 slot 级资源。
    • MCP 生命周期资源由 runtime 持有,避免提前释放。
  • bootstrap.py 负责数据库/checkpoint 检查、runtime 创建和 slot 编排。
  • 单任务执行、事件写入、图执行、事件适配、结果展示分别拆入 worker 目录
  • core.py 缩减为无可变状态的轻量门面;旧 initialize_llmopen_mcp_session 和全局 LLM/graph 已移除。
  • job_service.pyroutes.py 保持原位置,管理员、监控、Web 路由的依赖方向没有变化。
  • 测试已迁移到新模块,并增加 runtime、slot 依赖和 python -m 入口测试。
  • 已同步更新 README.mdAGENTS.md开发日志

验证结果

  • Python 语法检查通过。
  • 完整后端单元测试:243 passed
  • 三个 Compose 文件均解析通过,worker 启动命令保持不变。
  • git diff --check 通过。
  • 耦合扫描确认:
    • agent_core.llmglobal llm
    • 管理员和监控代码没有反向依赖 worker runtime。
    • 仓库生产代码没有继续使用旧 core 导入路径。

额外运行管理员部署/迁移集成测试时有 262 passed, 2 failed。两个失败均涉及未修改区域:测试容器缺少 git 命令,以及部署测试仍断言旧 Dockerfile stage 文本;迁移链测试通过。本次未连接真实数据库、LLM 或 MCP 启动完整

@Heyflyingpig Heyflyingpig self-assigned this Aug 6, 2026
@Heyflyingpig
Heyflyingpig changed the base branch from main to develop August 6, 2026 09:55
@Heyflyingpig Heyflyingpig changed the title refactor(agent worker): split runtime package refactor(agent worker):split runtime package Aug 6, 2026
@Heyflyingpig
Heyflyingpig merged commit 0ed7709 into develop Aug 6, 2026
2 of 3 checks passed
@Heyflyingpig
Heyflyingpig deleted the refactor(agent-worker)/split-runtime-package branch August 6, 2026 09:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant