DOC-FULL-004 P0 | ActiveTimeTracker 【status:todo】 #53

Closed
opened 2026-06-07 11:33:12 +08:00 by wangdl · 2 comments
Owner

v2 设计

iOS 控制 tick 节奏(Timer 15s),Rust 计算 delta。Rust 不创建 timer。

方法

start / pause / resume / tick / close

规则

  • 时间倒退 delta=0
  • pause 期间不计时
  • close 返回残余 delta
  • 毫秒余数累计到下一次
## v2 设计 iOS 控制 tick 节奏(Timer 15s),Rust 计算 delta。Rust 不创建 timer。 ## 方法 start / pause / resume / tick / close ## 规则 - 时间倒退 delta=0 - pause 期间不计时 - close 返回残余 delta - 毫秒余数累计到下一次
wangdl added this to the M-DOC-FULL:Document Runtime 完整阅读内核与学习事件协议 milestone 2026-06-07 11:33:12 +08:00
wangdl changed title from DOC-FULL-004 P0 | activeSecondsDelta 计算器 to DOC-FULL-004 P0 | ActiveTimeTracker 2026-06-07 11:45:14 +08:00
wangdl changed title from DOC-FULL-004 P0 | ActiveTimeTracker to DOC-FULL-004 P0 | ActiveTimeTracker 【status:todo】 2026-06-07 19:15:01 +08:00
Author
Owner

审查结论:document runtime 当前有文件类型识别/MaterialType/PreviewMode/DocumentInfo(基本)/Markdown解析/Text解析/ImageMeta/Search(V1 Markdown+Text)/NoteAnchor(V1)/ReadingEvent(V1)/ReadingPosition(V1)/EventBuffer(V1基础)/iOS构建/UniFFI绑定/docs。但 V2 核心模型(ReadingSession/EventV2/ActiveTimeTracker)不存在,EventBuffer 缺 ack/failed,Position 缺 camelCase+clamp,PDF/EPUB/Office 为 stub,测试覆盖不足 V2。

本 Issue: ActiveTimeTracker 不存在。iOS ReadingEventCollector 用 Timer 15s 控制 tick,Rust 不参与计时。

状态: status:todo
工作类型: work:new-module

## 审查结论:document runtime 当前有文件类型识别/MaterialType/PreviewMode/DocumentInfo(基本)/Markdown解析/Text解析/ImageMeta/Search(V1 Markdown+Text)/NoteAnchor(V1)/ReadingEvent(V1)/ReadingPosition(V1)/EventBuffer(V1基础)/iOS构建/UniFFI绑定/docs。但 V2 核心模型(ReadingSession/EventV2/ActiveTimeTracker)不存在,EventBuffer 缺 ack/failed,Position 缺 camelCase+clamp,PDF/EPUB/Office 为 stub,测试覆盖不足 V2。 **本 Issue**: ActiveTimeTracker 不存在。iOS ReadingEventCollector 用 Timer 15s 控制 tick,Rust 不参与计时。 **状态**: status:todo **工作类型**: work:new-module
Author
Owner

完成

time_tracker.rs (155行)

模型: ActiveTimeTracker{last_tick_ms, is_active, remainder_ms}

方法: start/pause/resume/tick/close

规则

  • iOS控制tick,Rust不创建timer
  • 时间倒退delta=0
  • pause期间不计时
  • remainder_ms 毫秒余数累计到下个tick
  • 43s阅读 = 15+15+13 = 43

测试: 8 passed (85 total)

## 完成 ✅ `time_tracker.rs` (155行) ### 模型: ActiveTimeTracker{last_tick_ms, is_active, remainder_ms} ### 方法: start/pause/resume/tick/close ### 规则 - iOS控制tick,Rust不创建timer - 时间倒退delta=0 - pause期间不计时 - remainder_ms 毫秒余数累计到下个tick - 43s阅读 = 15+15+13 = 43 ✅ ### 测试: 8 passed (85 total)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

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