DOC-106 实现 ReadingEvent 协议 #11

Closed
opened 2026-05-30 19:49:01 +08:00 by wangdl · 1 comment
Owner

实现统一 ReadingEvent:MaterialOpened/MaterialClosed/PositionChanged/Heartbeat/MarkedAsRead

每个事件包含 material_id + timestamp_ms。Rust 只生成事件,不上传。

验收标准:ReadingEvent 支持 serde、export_pending_events 能返回事件列表、有单元测试

实现统一 ReadingEvent:MaterialOpened/MaterialClosed/PositionChanged/Heartbeat/MarkedAsRead 每个事件包含 material_id + timestamp_ms。Rust 只生成事件,不上传。 验收标准:ReadingEvent 支持 serde、export_pending_events 能返回事件列表、有单元测试
wangdl added this to the M1:Document Core v0.1 milestone 2026-05-30 19:49:01 +08:00
wangdl added the
priority:p0
type:implementation
area:events
labels 2026-05-30 19:49:01 +08:00
Author
Owner

完成项

ReadingEvent 模型已定义 + serde 往返测试
5 种事件类型全部覆盖 + PartialEq derive

事件 字段
MaterialOpened material_id, timestamp_ms
MaterialClosed + active_seconds
PositionChanged + ReadingPosition
Heartbeat + active_seconds, Option
MarkedAsRead material_id, timestamp_ms

测试

  • 6 个 serde 测试全部通过(46 总计)
  • 覆盖带/不带 position 的 Heartbeat

待跟进

DOC-107 基础搜索

## 完成项 ✅ ReadingEvent 模型已定义 + serde 往返测试 ✅ 5 种事件类型全部覆盖 + PartialEq derive | 事件 | 字段 | |------|------| | MaterialOpened | material_id, timestamp_ms | | MaterialClosed | + active_seconds | | PositionChanged | + ReadingPosition | | Heartbeat | + active_seconds, Option<ReadingPosition> | | MarkedAsRead | material_id, timestamp_ms | ## 测试 - 6 个 serde 测试全部通过(46 总计) - 覆盖带/不带 position 的 Heartbeat ## 待跟进 ⬜ DOC-107 基础搜索
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: wangdl/zhixi-document-runtime#11
No description provided.