|
41 | 41 | | app/src-tauri/src/live_session_persist.rs | 488 | 定稿落库域(persist_final/digest_merged/handle_final_event)+ P2 flush_tail_and_persist(停止/暂停共用尾句落库)内聚 | 若再增长:flush_tail_and_persist 与 digest_merged 拆至 live_session_persist_tail.rs | |
42 | 42 | | app/src-tauri/src/db_sessions.rs | 482 | 会话仓储;批 4 delete_sessions_batch + 审查修复轮 3(transaction() 改造)——2026-09-09 实测纠偏(登记值 394 过期) | 若再增长:recent_ocr_texts 等建议查询拆至 db_sessions_queries.rs | |
43 | 43 | | app/src-tauri/src/commands_ai_enrich.rs | 479 | v0.8.0 M3(REQ-142)+ F1/F2/F3:知识补充命令域(九子项校验/预估/异步任务/采纳/撤销 + 配额去重门控 + 成本硬拦截 + 任务落库)——与精修共用任务注册表上下文,命令域内聚;2026-09 修复(章节目录注入/逐块审查回执)微增 | 若再增长:门控/拦截拆至 commands_ai_enrich_gate.rs | |
44 | | -| app/src-tauri/src/app_commands.rs | 478 | 宏约束下的**唯一**注册点:334 条 `generate_handler!` 条目是**数据不是逻辑** —— `Invoke` 按值语义使分域组合不可行(见文件头),拆成多份只会在域间新增「命令名 → 域」路由漂移面;一致性由 `scripts/check-command-registry.mjs` 机器门禁守 | 不拆(数据文件);新增命令时同步条目,由门禁强制 | |
| 44 | +| app/src-tauri/src/app_commands.rs | 478 | 宏约束下的**唯一**注册点:**312 条** `generate_handler!` 条目是**数据不是逻辑**(批 1 删除批收口实测:334 → 312,−22;此数由本行人工维护,`--write` 只刷新数字列) —— `Invoke` 按值语义使分域组合不可行(见文件头),拆成多份只会在域间新增「命令名 → 域」路由漂移面;一致性由 `scripts/check-command-registry.mjs` 机器门禁守 | 不拆(数据文件);新增命令时同步条目,由门禁强制 | |
45 | 45 | | app/src-tauri/src/region_tracker.rs | 478 | v0.4.0 M2(REQ-037)起:ROI 跟踪状态机(播放区域检测/锁定聚簇/重扫/前台切换冻结)+ 纯函数单测内联;与 RoiTracker 状态强耦合 | 若再增长:lock_roi/prior_roi 纯函数拆至 region_lock.rs | |
46 | 46 | | app/src-tauri/src/layout_analyzer.rs | 475 | v0.5.0 M3(REQ-047):规则版版面分析(行/列投影 + 表格线检测 + 区域分类启发式)内聚于同一分类管线;审查加固(公式启发 + 低信息纯色方差滤除) | 若再增长:区域分类启发式拆至 layout_classify.rs | |
47 | 47 | | app/src-tauri/src/commands_session_note.rs | 472 | 既有登记 314 为过期快照——2026-09-06 实测纠偏(v0.20 装载合成/web 分支/批量 inner 扩展后 +144) | 若再增长:convert_to_note 拆至 commands_session_note_convert.rs | |
|
117 | 117 | | app/src-tauri/src/bin/asr_forensic.rs | 321 | 定位"结尾识别不全/短句不清晰/断句不准"根因的三连验证:① 会话原始音频(session-audio/{id}.wav,16k 单声道 PCM16)离线SenseVoice 整段转写 → 与 DB 流式链路段对比(句尾是否更完整);② 对疑似截断段截取音频窗口(start-200ms..end+1200ms)单独离线转写 → 证明"音频里有没有这个尾字"(二分:链路丢 vs 源缺失);③ 200ms 块 RMS 统计 → 验证"句尾弱音块被判静音"假设的量化依据。(自动摘取,待细化) | 若再增长:按职责拆分 | |
118 | 118 | | app/src-tauri/src/db_ai_chat.rs | 321 | AI 对话双表仓储 + v0.19.1(REQ-260)retrieval/meta_json 补列与行映射(+42)——SQL/行映射内聚(db_* 文件先例) | 若再增长:消息侧读写拆至 db_ai_chat_messages.rs | |
119 | 119 | | app/src-tauri/src/engine_worker.rs | 321 | 拆分动机(三维复审 #9 + 豁免登记计划):engine.rs 在接入超时排空机制(三维复审 #5)后逼近 600 行硬拆线,按 line-limit-exemptions登记的拆分计划把 worker 循环与请求处理拆至本文件——engine.rs 保留 EnginePool 句柄与同步 API。(自动摘取,待细化) | 若再增长:按职责拆分 | |
| 120 | +| app/src-tauri/src/commands_ai_settings.rs | 318 | AI 设置命令域(视图/密钥/授权/目标 AI) + v0.19.1 ai_set_kb_qa 最小面命令(+28)——read-modify-write 同域先例(ai_set_goal_plan)内聚 | 若再增长:kb/goal 最小面命令拆至 commands_ai_settings_extra.rs | |
120 | 121 | | app/src-tauri/src/commands_ai_providers.rs | 317 | v0.11.6 M1:Provider 管理命令域(8 命令 + 视图映射 + 密钥解析口 resolve_default_provider_key/default_provider_ready)内聚于命令层;2026-09-11 探活改 chat_plain。`resolve_input`/`to_view` 与命令同域便于契约一致 | 若再增长:默认 Provider 解析与就绪门禁拆至 ai_provider_resolve.rs | |
121 | 122 | | app/src/components/AiConversationDock.tsx | 316 | 全局 AI 对话面板(REQ-274)+ 批 1 终态事件刷新接线——2026-09-09 审查纠偏实测登记(此前漏登),300-600 档 | 若再增长:会话列表段拆至 DockSessionList.tsx | |
122 | 123 | | app/src/components/SessionListPanel.test.tsx | 316 | 覆盖批 4 选择/批量交互矩阵——选择模式进出(按钮+Esc)、单击勾选、Ctrl 加/减、Shift 区间、折叠组全选不含隐藏行(P3-1 修复:全选口径=可见行序 visibleOrder 而非 filtered)、列表变化自动裁剪选集、批量删除 pending 防连点与成功清选集(P3-2)、批量转eligible 过滤。invoke 全 mock;数据为本地 props 零后端往返(面板数据驱动经 props——父层 invoke 不在本组件)。(自动摘取,待细化) | 若再增长:按职责拆分 | |
123 | | -| app/src-tauri/src/commands_ai_settings.rs | 315 | AI 设置命令域(视图/密钥/授权/目标 AI) + v0.19.1 ai_set_kb_qa 最小面命令(+28)——read-modify-write 同域先例(ai_set_goal_plan)内聚 | 若再增长:kb/goal 最小面命令拆至 commands_ai_settings_extra.rs | |
124 | 124 | | app/src/components/LiveProfileStrip.tsx | 315 | 采集时右栏由 LiveActivityPanel 独占、档案卡(ProfileDetector)被隐藏——但 M2(REQ-189)引入"会话中画面档每 2-3 分钟自动重评"后档位成为采集中动态信息,且降档需用户裁决。本组件在采集态常显档案摘要(形态×画面档×领域),并接线 live:tier-changed /live:tier-downgrade-request → confirm_tier_downgrade,补齐 M2 前端断链(此前降档请求无人应答,降档永不生效)。(自动摘取,待细化) | 若再增长:按职责拆分 | |
125 | 125 | | app/src-tauri/src/ffmpeg.rs | 313 | ffmpeg 是文件导入(音轨/关键帧)与内嵌字幕(L2)的唯一外部依赖。(自动摘取,待细化) | 若再增长:按职责拆分 | |
126 | 126 | | app/src-tauri/src/note_filter_ocr.rs | 313 | BodySource::OcrDirect 分支的精简净化链——排序 → 净化链(① 行合并评分器 → ② 行级重识别判定 → ③ 跨帧增量合并,spec §3.1)→ 符号归一(跳过口语净化/口头禅/碎片规则——OCR文本是视觉识别产物,无 ASR 的结巴/填充词/重复)→ 相邻去重→ markdown 组装("图文提取"标注段)。(自动摘取,待细化) | 若再增长:按职责拆分 | |
|
0 commit comments