## 背景 当前 ZMQ SUB 已能接收并解析 Laser 消息,但 `src/zmq/zmq.rs` 的 `LaserMsg` 分支没有将数据保存到可供消费者读取的状态中,消息会被丢弃。与此同时,`AGENTS.md` 将 Laser 描述为通过 `ZMQ SUB → SharedData` 进入 UI,文档与实际行为不一致。 ## 需要完成的改动 - 为 Laser 消息定义并保留合适的共享状态表示(可扩展 `SharedData` 或恢复/接入专用 `LaserObservation` 的写入端)。 - 在 `src/zmq/zmq.rs` 的 `LaserMsg` 处理分支中,将已解析的消息写入该状态,而不是仅获取锁后丢弃。 - 将 Laser UI 的读取路径连接到同一最新状态,明确 Serial TX 是否需要消费该数据;若不需要,应保持其不受影响。 - 更新 `AGENTS.md` 和相关数据流文档,使其准确反映最终实现。 - 补充测试,至少覆盖有效 Laser 消息更新状态、无效消息不破坏已有状态,以及未知/不支持消息的处理。 ## 验收标准 1. 收到有效 Laser ZMQ 消息后,UI 可通过其既定 reader/snapshot 读取到对应的最新状态。 2. 消息解析或状态写入失败不会导致 ZMQ SUB 工作线程退出。 3. 测试覆盖写入成功与异常输入场景。 4. 文档不再宣称尚未实现的数据路径可用。 ## 关联 - 来源 PR: https://github.com/Alliance-Algorithm/radar-egui/pull/11 - 来源审查评论: https://github.com/Alliance-Algorithm/radar-egui/pull/11#discussion_r3656315075 - 请求人: @HarryPotter1tech
背景
当前 ZMQ SUB 已能接收并解析 Laser 消息,但
src/zmq/zmq.rs的LaserMsg分支没有将数据保存到可供消费者读取的状态中,消息会被丢弃。与此同时,AGENTS.md将 Laser 描述为通过ZMQ SUB → SharedData进入 UI,文档与实际行为不一致。需要完成的改动
SharedData或恢复/接入专用LaserObservation的写入端)。src/zmq/zmq.rs的LaserMsg处理分支中,将已解析的消息写入该状态,而不是仅获取锁后丢弃。AGENTS.md和相关数据流文档,使其准确反映最终实现。验收标准
关联