Files
mnote/bugs/05-editor-mainline/process/5-16-sidebar-preferred-snapshot-query-overrides-live-stream-v1.md
T
lix-2026 3311bd0366 chore: document architecture gaps and add dev hot reload
- add npm dev:hot wrapper using cargo-watch and page reload polling

- add mnote-web dev hot reload endpoint and coverage

- record current architecture review and tracked bug findings across realtime, tree, editor, and AI runtimes

Verification:

- node scripts/task-dev-hot-plan-test.js

- node --check scripts/dev-hot.js

- cargo test -p mnote-web dev_hot -- --nocapture
2026-05-17 23:09:56 +08:00

1.4 KiB

5-16 [process][bug] Sidebar preferred snapshot 中 query 可覆盖 live stream v1

发现时间:2026-05-17

状态:[process]

关联主线:05-editor-mainline

1. 问题定义

Sidebar 同时启动 query/live/initial 与 tree stream,并通过 preferred snapshot 选择最终数据源。当 querytree_stream 版本相同但内容不同,当前 freshness / syncKey 逻辑可能让 query 压过 live stream。

2. 证据

3. 影响

  • Sidebar 仍存在 Convex live / HTTP / Rust stream 多链抢真相。
  • 同一版本但不同内容时,用户可能看到旧树或非 Rust stream 结果。
  • WS / SSE 收口后仍可能被 query source 覆盖。

4. 建议修复

  • 明确唯一预期来源:当 Rust stream 可用时,应由 stream 成为主真相,query 仅初始化或 fallback。
  • 同版本不同内容时必须记录诊断事件,而不是静默按 freshness 选择。
  • 增加单测覆盖同版本冲突。

5. 状态

已确认多源选择策略仍可能覆盖 live stream,尚未修复。