desktop/src-tauri/src/scanner.rs
第 1 条注释,第 1 行
desktop/src-tauri/src/scanner.rs:1
//! 采集运行器:内置适配器注册表 + 全源刷新 + 间隔调度循环(M6)。第 2 条注释,第 2 行
desktop/src-tauri/src/scanner.rs:2
//! 约定:只读取用户启用的本地来源;定时任务只运行本应用采集逻辑;第 3 条注释,第 3 行
desktop/src-tauri/src/scanner.rs:3
//! 同一时刻仅一个刷新在执行(重复触发合并,V12/V23)。第 4 条注释,第 14 行
desktop/src-tauri/src/scanner.rs:14
/// 内置适配器注册表(与探针工具共用 core 实现)。第 5 条注释,第 85 行
desktop/src-tauri/src/scanner.rs:85
/// 刷新已启用来源;已运行时返回 false,手工请求保留至当前运行后执行。第 6 条注释,第 90 行
desktop/src-tauri/src/scanner.rs:90
/// 清空任务提交后执行的全源重采(含自定义计划来源);第 7 条注释,第 91 行
desktop/src-tauri/src/scanner.rs:91
/// 清空标志保持有效直到重采结束。第 8 条注释,第 96 行
desktop/src-tauri/src/scanner.rs:96
/// 逐源定时接线的过滤版:第 9 条注释,第 97 行
desktop/src-tauri/src/scanner.rs:97
/// - include(到期集合)非空:只运行这些实例(FixedTime/Interval 触发);第 10 条注释,第 98 行
desktop/src-tauri/src/scanner.rs:98
/// - include=None 的全局自动刷新:排除自定义计划尚未到期的实例,第 11 条注释,第 99 行
desktop/src-tauri/src/scanner.rs:99
/// 仅有实际完成运行结果的计划才能推进下次时间。第 12 条注释,第 156 行
desktop/src-tauri/src/scanner.rs:156
// 日汇总分区用用户统计时区(V04/V12:日界随用户时区;此前误用 UTC 导致第 13 条注释,第 157 行
desktop/src-tauri/src/scanner.rs:157
// UI 按本地时区查询永远为空——2026-09-26 修复,验证记录见 m6 修订)。第 14 条注释,第 167 行
desktop/src-tauri/src/scanner.rs:167
// 仅提升本应用生成且已核对的 Copilot/Qwen 输出根目录。第 15 条注释,第 168 行
desktop/src-tauri/src/scanner.rs:168
// 其他辅助导出仍需独立验证。第 16 条注释,第 179 行
desktop/src-tauri/src/scanner.rs:179
// F2:刷新前修订号——本轮采集重写的 daily_usage 行 revision 均大于它第 17 条注释,第 180 行
desktop/src-tauri/src/scanner.rs:180
// (retention 之后还会再 bump,不能用"当前 revision"等于过滤)。第 18 条注释,第 200 行
desktop/src-tauri/src/scanner.rs:200
// 全局间隔排除尚未到期的自定义计划来源;若加载排除集第 19 条注释,第 201 行
desktop/src-tauri/src/scanner.rs:201
// 失败则记录失败并跳过本次全局采集,保留逐源采集节奏,第 20 条注释,第 202 行
desktop/src-tauri/src/scanner.rs:202
// 不按全局间隔读取自定义计划来源。第 21 条注释,第 238 行
desktop/src-tauri/src/scanner.rs:238
// 逐源定时成败归属:实例 → 本轮实际运行结果(到期计划按真实结果推进)。第 22 条注释,第 241 行
desktop/src-tauri/src/scanner.rs:241
// 两个解析槽在文件读取期间释放写锁;元数据、归档与提交仍用同一写者。第 23 条注释,第 273 行
desktop/src-tauri/src/scanner.rs:273
// 进度:按适配器序号估算(完成后百分百精确;运行中含当前适配器的第 24 条注释,第 274 行
desktop/src-tauri/src/scanner.rs:274
// 文件级进度由各适配器内部掌握,此处用粗粒度近似+ETA)。第 25 条注释,第 344 行
desktop/src-tauri/src/scanner.rs:344
// 逐实例记录真实成败(RunStatus::Succeeded 才算成功);第 26 条注释,第 345 行
desktop/src-tauri/src/scanner.rs:345
// 适配器整体失败时没有实例运行结果,其下次采集时间保持不变。第 27 条注释,第 380 行
desktop/src-tauri/src/scanner.rs:380
// Copilot premium 请求额度(本机 copilot-user-cache.json;账户级请求配额,第 28 条注释,第 381 行
desktop/src-tauri/src/scanner.rs:381
// 非 token,独立展示)。采集失败只记摘要,不影响本轮其他来源。第 29 条注释,第 424 行
desktop/src-tauri/src/scanner.rs:424
// 分级归档保留:采集后按设置执行(明细→小时→物化周期→日→周/月;单事务)。第 30 条注释,第 471 行
desktop/src-tauri/src/scanner.rs:471
// F2 费用回填:采集改写了当日事件(数据修订)⇒ 按当前价格设置重算第 31 条注释,第 472 行
desktop/src-tauri/src/scanner.rs:472
// 受影响未封存日的日成本行。估算未启用时跳过(显式重算仍可用)。第 32 条注释,第 521 行
desktop/src-tauri/src/scanner.rs:521
// F2 在线刷新(models.dev):启用且缓存过期时后台刷新一次;第 33 条注释,第 522 行
desktop/src-tauri/src/scanner.rs:522
// 失败仅记操作日志/诊断,不阻塞采集,不改写既有估算。第 34 条注释,第 526 行
desktop/src-tauri/src/scanner.rs:526
// 仅有实际完成结果的到期实例推进 next_due。第 35 条注释,第 527 行
desktop/src-tauri/src/scanner.rs:527
// 已完成的失败记 running_error;未访问、中断、合并的实例不推进时间。第 36 条注释,第 528 行
desktop/src-tauri/src/scanner.rs:528
// 未到期的不动,错过时点醒来后仍只补一次)。第 37 条注释,第 589 行
desktop/src-tauri/src/scanner.rs:589
// 操作日志仅记录选定的采集完成计数。第 38 条注释,第 620 行
desktop/src-tauri/src/scanner.rs:620
/// 系统触发遵循已保存的用户设置和相同逐源到期时间。第 39 条注释,第 621 行
desktop/src-tauri/src/scanner.rs:621
/// 即使本应用系统任务删除失败,停用的自动采集仍保持停用。第 40 条注释,第 656 行
desktop/src-tauri/src/scanner.rs:656
/// 间隔调度循环:按设置的全局间隔触发刷新;间隔 0 = 暂停自动提取。第 41 条注释,第 657 行
desktop/src-tauri/src/scanner.rs:657
/// 错过时点(休眠)醒来后立即补一次扫描(V23 补扫合并语义:只补一次)。第 42 条注释,第 661 行
desktop/src-tauri/src/scanner.rs:661
// 仅自动采集允许时执行一次 Startup 采集。第 43 条注释,第 723 行
desktop/src-tauri/src/scanner.rs:723
// 逐源定时:无全局刷新在跑时,触发到期实例(FixedTime 语义;第 44 条注释,第 724 行
desktop/src-tauri/src/scanner.rs:724
// 与手动/全局合并由 refresh 单飞保证,同源不并发)。第 45 条注释,第 725 行
desktop/src-tauri/src/scanner.rs:725
// 到期探测失败不静默跳过:记诊断留痕,下轮重试。第 46 条注释,第 757 行
desktop/src-tauri/src/scanner.rs:757
/// 调度状态:零表示停用,设置变化重置到期时间;第 47 条注释,第 758 行
desktop/src-tauri/src/scanner.rs:758
/// 唤醒后错过多个间隔,也仅触发一次采集。第 48 条注释,第 1060 行
desktop/src-tauri/src/scanner.rs:1060
// 未发现用量文件表示该来源未访问,没有已完成的运行结果。