模块知识库/Vibe-Trading 量化交易智能体平台/Vibe-Trading Agent 核心运行时/多渠道 IM 接入与 WebUI 网关/IM 渠道运行时与消息总线/编码规范
- 入站/出站消息统一封装为
InboundMessage / OutboundMessage dataclass,并通过 MessageBus 的 publish_* / consume_* 方法在渠道与运行时之间传递。
- 渠道适配器继承
BaseChannel,仅实现 start/stop/send 三个抽象方法,其他能力(流式 delta、reasoning 块、文件编辑事件)通过可选覆写钩子扩展。
- 权限校验遵循固定顺序:allowlist → pairing store 批准列表 → 拒绝,未授权 DM 自动调用
generate_code 下发配对码。
- 配对存储的所有读写操作均包裹在
threading.Lock 中,以保证 CLI、REST 与异步 channel handler 共享同一份 JSON 文件的线程安全。
- 持久化文件写入一律采用「写临时文件 +
Path.replace」的原子替换模式,避免并发读取读到半写数据。
- 运行时错误统一捕获并在
OutboundMessage.metadata 中标记 _channel_runtime: True、busy/error 等标志,以便上层区分业务异常与系统异常。