模块知识库/Vibe-Trading 量化交易智能体平台/Vibe-Trading 前端应用/前端共享基础设施(API、SSE、主题与工具库)/编码规范
- HTTP 客户端统一通过
request<T>(path, options) 发起,错误一律抛出带 status 字段的 ApiError,并由 isAuthRequiredError 判断 401/403。
- 所有后端端点以
export const api = { ... } 对象聚合导出,每个方法负责拼接路径与参数并调用 request。
- SSE 事件处理采用白名单注册:在
attach 中显式 addEventListener 已知的 text_delta、tool_call、mandate.proposal 等事件类型,未知事件走 fallback handler。
- 本地存储访问全部经过
safeGet/safeSet/safeRemove 包装,捕获 SecurityError/QuotaExceededError 降级为内存默认值而非抛错。
- 主题变更通过
theme-store.ts 的发布-订阅模型(publishThemeChange + useSyncExternalStore)广播,Hook 内部只写 DOM class,不直接管理全局状态。
- Swarm 状态更新遵循不可变模式:
applySwarmEvent(current, rawEvent) 根据事件 type 分支返回新的 SwarmRunStatus,并通过 updateAgent 局部替换 agents 数组。