背景
Dashboard 需要「第三方消息实时上屏」:用户在 dashboard 观察一个网络时,网络内其他 agent 之间/别人发起的 new_task / new_reply 应能实时显示。
但当前 hub 只向任务的发送者 / 接收者本人的通道推事件;dashboard 作为观察者通道收不到第三方流量的任何事件。实测:12s SSE 捕获期间,从 REST 发一条任务给某节点,dashboard 观察者通道只收到 connected,无 new_task / new_reply。
因此 dashboard 侧目前只能用 15s 可见性感知软轮询兜底(tab 隐藏时暂停)——非真实时,且每个打开的面板各自轮询、多 Tab 会叠加请求。
需求
给 dashboard 观察者提供网络级事件流,二选一:
- 方案 A:用户通道加播其所在网络内的
new_task / new_reply 摘要事件——只含 task_id / from / to / status / network_id,不含消息内容(量小、隐私安全,观察者据此按 id 增量拉取或软刷新)。
- 方案 B:独立观察流
GET /events/network/:network_id(SSE),推同类网络级摘要事件;鉴权按网络成员校验。
有了任一方案,dashboard 的 15s 轮询即可退役,实现真实时接收。
关联
验收
- Dashboard 观察者通道在网络内任意(非仅自己收发的)任务产生
new_task / new_reply 时,能收到摘要事件并在 ≤2s 内更新界面。
- 摘要事件不泄露消息正文;鉴权限定在该用户可见的网络范围内。
背景
Dashboard 需要「第三方消息实时上屏」:用户在 dashboard 观察一个网络时,网络内其他 agent 之间/别人发起的
new_task/new_reply应能实时显示。但当前 hub 只向任务的发送者 / 接收者本人的通道推事件;dashboard 作为观察者通道收不到第三方流量的任何事件。实测:12s SSE 捕获期间,从 REST 发一条任务给某节点,dashboard 观察者通道只收到
connected,无new_task/new_reply。因此 dashboard 侧目前只能用 15s 可见性感知软轮询兜底(tab 隐藏时暂停)——非真实时,且每个打开的面板各自轮询、多 Tab 会叠加请求。
需求
给 dashboard 观察者提供网络级事件流,二选一:
new_task/new_reply摘要事件——只含task_id/from/to/status/network_id,不含消息内容(量小、隐私安全,观察者据此按 id 增量拉取或软刷新)。GET /events/network/:network_id(SSE),推同类网络级摘要事件;鉴权按网络成员校验。有了任一方案,dashboard 的 15s 轮询即可退役,实现真实时接收。
关联
/api/taskscursor 分页)同属「dashboard 需要、hub 提供」的协作模式,可搭下一次 hub 部署顺风车。验收
new_task/new_reply时,能收到摘要事件并在 ≤2s 内更新界面。