feat: 移除多个模块中的 TODO 注释,优化代码可读性

This commit is contained in:
whatevertogo
2026-03-13 04:15:02 +08:00
parent ae5d6dc692
commit 2e990f81e0
7 changed files with 32 additions and 83 deletions

View File

@@ -110,33 +110,6 @@
- 支持流式能力 (stream_handler)
- 内置能力llm.chat, memory.*, db.*, platform.*
- 支持自定义能力注册
TODO: (架构完善):
- Transport 缺少 TCP Socket 传输实现
- Transport 缺少 Unix Domain Socket 传输实现
- Transport 缺少共享内存传输实现(高性能场景)
- Peer 缺少消息压缩支持(大数据传输)
- Peer 缺少消息签名验证(安全通信)
- CapabilityRouter 缺少能力版本控制
- CapabilityRouter 缺少能力权限控制
- CapabilityRouter 缺少能力调用计数/限流
- HandlerDispatcher 缺少处理器超时控制
- HandlerDispatcher 缺少处理器重试机制
- HandlerDispatcher 缺少处理器依赖注入容器
- loader.py 缺少插件热重载支持
- loader.py 缺少插件依赖解析
- loader.py 缺少插件沙箱隔离
- bootstrap.py 缺少优雅关闭的超时机制
- bootstrap.py 缺少健康检查端点
- 缺少分布式部署支持(多节点 Supervisor
- 缺少插件状态持久化和恢复
TODO: (功能迁移):
- 旧版 api/context.py 的功能需要迁移到新版 Context
- 旧版 api/conversation_mgr.py 的会话管理需要迁移
- 旧版 stars/filter/ 的过滤器需要评估迁移必要性
- 旧版 stars/registry/ 的注册表功能已被 loader.py 替代
- 旧版 galaxy.py 的虚拟星层管理已被 bootstrap.py 替代
"""
from .bootstrap import (

View File

@@ -22,12 +22,14 @@ Supervisor 管理多个 Worker 进程Worker 运行单个插件。
- 聚合所有 handler 并向 Core 注册
- 路由 Core 的调用请求到对应 Worker
- 处理 Worker 进程崩溃和重连
- handler ID 冲突检测和警告
WorkerSession: Worker 会话
- 管理单个插件 Worker 进程
- 通过 Peer 与 Worker 通信
- 提供 invoke_handler 和 cancel 方法
- 处理连接关闭回调
- 自动清理已注册的 handlers
PluginWorkerRuntime: 插件 Worker 运行时
- 加载单个插件
@@ -56,7 +58,7 @@ Supervisor 管理多个 Worker 进程Worker 运行单个插件。
1. discover_plugins() 发现所有插件
2. 为每个插件创建 WorkerSession
3. 调用 session.start() 启动 Worker 进程
4. 等待 Worker 初始化完成
4. 等待 Worker 初始化完成或连接关闭
5. 聚合所有 handler 并向 Core 发送 initialize
6. 等待 Core 的 initialize_result
@@ -71,15 +73,6 @@ Supervisor 管理多个 Worker 进程Worker 运行单个插件。
信号处理:
- SIGTERM: 设置 stop_event触发优雅关闭
- SIGINT: 设置 stop_event触发优雅关闭
TODO:
- 添加 Worker 进程健康检查
- 添加 Worker 进程自动重启
- 添加优雅关闭的超时机制
- 添加插件启动超时配置
- 添加分布式部署支持(多节点 Supervisor
- 添加插件状态持久化和恢复
- 添加 WebSocket 传输的 Supervisor 模式
"""
from __future__ import annotations

View File

@@ -5,12 +5,12 @@
核心概念:
CapabilityDescriptor: 能力描述符,声明能力名称、输入输出 Schema 等
CallHandler: 同步调用处理器,返回单次结果
StreamHandler: 流式调用处理器,返回异步迭代器
FinalizeHandler: 流式结果聚合器
CallHandler: 同步调用处理器,签名 (request_id, payload, cancel_token) -> dict
StreamHandler: 流式调用处理器,签名 (request_id, payload, cancel_token) -> AsyncIterator
FinalizeHandler: 流式结果聚合器,签名 (chunks) -> dict
内置能力:
llm.chat: 同步 LLM 聊天
llm.chat: 同步 LLM 聊天(内置 echo 实现)
llm.chat_raw: 同步 LLM 聊天(完整响应)
llm.stream_chat: 流式 LLM 聊天
memory.search: 搜索记忆
@@ -78,15 +78,6 @@
# 执行能力
result = await router.execute("my_plugin.calculate", {"x": 42}, stream=False, ...)
stream_result = await router.execute("my_plugin.stream", {}, stream=True, ...)
TODO:
- 添加能力版本控制
- 添加能力权限控制
- 添加能力调用计数/限流
- 添加能力调用超时配置
- 添加能力健康检查
- 添加能力缓存支持
- 添加能力熔断机制
"""
from __future__ import annotations

View File

@@ -58,13 +58,6 @@
- PlainTextResult: 调用 event.reply()
- str: 调用 event.reply()
- dict with "text": 调用 event.reply(str(item["text"]))
TODO:
- 添加处理器超时控制
- 添加处理器重试机制
- 添加处理器依赖注入容器
- 添加处理器中间件支持
- 添加处理器调用链追踪
"""
from __future__ import annotations

View File

@@ -72,15 +72,6 @@ plugin.yaml 格式:
python: "3.11"
components:
- class: my_plugin.main:MyComponent
TODO:
- 添加插件热重载支持
- 添加插件依赖解析
- 添加插件沙箱隔离
- 添加插件签名验证
- 添加插件版本约束
- 添加插件仓库支持
- 添加插件配置 Schema 验证
"""
from __future__ import annotations

View File

@@ -10,7 +10,20 @@
- 能力调用(同步/流式)
- 取消处理
- 连接生命周期管理
消息处理:
入站:
ResultMessage -> 唤醒等待的 Future
EventMessage -> 投递到流式队列
InitializeMessage -> 调用 initialize_handler
InvokeMessage -> 创建任务调用 invoke_handler
CancelMessage -> 取消对应的任务
出站:
initialize() -> InitializeMessage
invoke() -> InvokeMessage(stream=False)
invoke_stream() -> InvokeMessage(stream=True)
cancel() -> CancelMessage
与旧版对比:
旧版 JSON-RPC:
- 分离的 JSONRPCClient 和 JSONRPCServer
@@ -51,13 +64,10 @@
invoke_stream() -> InvokeMessage(stream=True)
cancel() -> CancelMessage
TODO:
- 添加消息优先级支持
- 添加消息过期时间支持
- 添加消息重试计数支持
- 添加消息追踪 ID (trace_id) 支持
- 添加连接状态变更回调
- 添加心跳检测机制
取消机制:
- CancelToken 用于检查取消状态
- 入站任务在收到 CancelMessage 时被取消
- 早到取消:在任务执行前检查 cancel_token避免竞态条件
"""
from __future__ import annotations

View File

@@ -2,12 +2,19 @@
定义 Transport 抽象基类及其实现,负责底层的消息传输。
传输层只关心"发送字符串""接收字符串",不处理协议细节。
传输实现:
Transport: 抽象基类,定义 start/stop/send/wait_closed 接口
StdioTransport: 标准输入输出传输
- 进程模式: 通过 command 参数启动子进程
- 文件模式: 通过 stdin/stdout 参数指定文件描述符
传输类型:
Transport: 抽象基类,定义 start/stop/send 接口
StdioTransport: 标准输入输出传输,支持进程模式和文件模式
WebSocketServerTransport: WebSocket 服务端传输
WebSocketClientTransport: WebSocket 客户端传输
- 单连接限制,支持心跳配置
- 通过 port 属性获取实际监听端口
- 自动重连需要外部实现
与旧版对比:
旧版传输层:
@@ -53,15 +60,6 @@
await transport.start()
await transport.send(json_string)
await transport.stop()
TODO:
- 添加 TCP Socket 传输实现
- 添加 Unix Domain Socket 传输实现
- 添加共享内存传输实现(高性能场景)
- 添加消息压缩支持
- 添加断线重连机制WebSocketClientTransport
- 添加连接状态变更回调
- 添加带宽限制支持
"""
from __future__ import annotations