模块知识库/Vibe-Trading 量化交易智能体平台/Vibe-Trading Agent 核心运行时/会话-目标-多智能体编排层(Session Goal Swarm 协同)/Swarm 多智能体 DAG 编排与执行引擎/编码规范
- 所有跨进程/跨线程共享的状态均通过 Pydantic BaseModel(
SwarmRun/SwarmTask/SwarmEvent/WorkerResult)声明,并以 model_dump_json / model_validate_json 进行磁盘序列化。
- 枚举类型统一继承
str, Enum(如 TaskStatus、RunStatus、WorkerStatus),保证 JSON 序列化结果为字符串且与外部系统兼容。
- 运行时事件通过统一的
_emit_event/_make_event 或 worker 内的 _emit 函数生成 SwarmEvent,再追加到 events.jsonl 并可选转发给 live_callback。
- 文件写入一律采用“先写
.tmp 再 os.replace”的原子模式(SwarmStore._atomic_write),并在 Windows 上对 WinError 5/32 做指数退避重试。
- 长耗时操作(LLM 流式调用、工具执行、grounding 预取)均包裹在
HeartbeatTimer 中周期性向事件日志写入心跳,供僵死进程检测与 SSE 前端保活。
- 敏感信息(内部路径、工具参数、结果)在事件与错误消息中统一经
src.tools.redaction 的 redact_internal_paths/redact_payload/redact_tool_result 处理后再输出。