Skip to content

Commit 118f733

Browse files
committed
docs(rag): v0.19.3 版本文档与需求登记(REQ-261 已实施)
1 parent cf41a46 commit 118f733

3 files changed

Lines changed: 51 additions & 2 deletions

File tree

‎docs/product/requirements-pool.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -464,8 +464,8 @@
464464
| REQ-258 | 检索与索引基建:kb_chunks/kb_meta/FTS5 影子表(节级切块 ≤800 字符硬切、多态源双可空 FK)+ 生命周期(保存收口钩子重索引/删除事务内显式清理/全量重建 reindex_all + kb_index_stats 角标)+ kb_search 混合检索(FTS5 BM25 ∪ 向量余弦 → RRF 融合;LIKE 旧链保留) | P1 | 已实施 | v0.19.0 | FTS-only 可发布;影子表写入收敛 kb_index 同事务双写(不依赖触发器);**代码已交付(2026-09-03:三表 DDL + 切块/查询纯函数 + 生命周期钩子 + reindex_all/stats + kb_search;切词校准定案=trigram+2 字 LIKE 补充;RRF 函数 TDD 先行待 v0.19.3 合流)** |
465465
| REQ-259 | 本地 embedding 引擎:EmbeddingEngine trait(Noop/Onnx/Ollama 实现)+ M0 spike 定选型(内嵌 ONNX bge-small-zh-v1.5 vs Ollama /api/embeddings;中文小评测集 ~30 查询;ORT 共存必测)+ 模型分发复用 model_registry + 混合检索开启 | P1 | 已立项 | v0.19.4(spike 定案后) | 无模型 = FTS-only 降级,不阻塞 v0.19.0~2;模型文件不入库;**2026-09-03 顺延:v0.19.2 采集体验小版本用户实测插队(原 v0.19.3)** |
466466
| REQ-260 | 学习库问答「问我的学习库」:chat_sessions.retrieval 列 + chat_send 检索分支(命中列表恒可用·本地;生成经 content_gate + kb_qa_enabled 默认关)+ pack_fragments 转正 + 预算档位/成本/审计(ai_usage + meta_json 引用)+ 引用 chips 跳笔记高亮命中词 | P1 | 已实施 | v0.19.1 | 兑现 REQ-024/REQ-231 检索欠账(口径修订见设计 §十二.1);断网回退命中列表;**代码已交付(2026-09-03:retrieval/meta_json 补列 + kb 双闸门编排 + KbHits 事件 + CitationChips + 笔记内命中词搜索高亮 + 设置「学习库」段)** |
467-
| REQ-261 | 检索建议(发现路径):概念/节点详情「相关素材建议」候选(混合检索 top-K ≤10,排除已链接)→ 人工勾选确认 → 既有 link_knowledge_target 落库(白名单零迁移)+ 跨体系相似概念提示(提示型不自动合并) | P2 | 已立项 | v0.19.3 | kb_discovery 默认关(交叉点默认关延续);建议不落库零双写;**2026-09-03 顺延:v0.19.2 采集体验小版本用户实测插队** |
468-
| REQ-262 | 治理与设置:SettingsPage「学习库」段(引擎状态/模型下载/索引统计与重建/发现开关)+ FTS5 使能核查 + 中文 BM25 切词校准 | P2 | 部分落地(v0.19.0~1) | v0.19 系列随批 | 复用 speaker/OCR 模型下载 UI 范式;**已交付(2026-09-03):FTS5 使能核查(bundled 恒编 FTS5)+ 中文切词校准定案(trigram)+ 设置「学习库」段(引擎状态/问答开关与档位/统计/重建);模型下载随 v0.19.4、发现开关随 v0.19.3** |
467+
| REQ-261 | 检索建议(发现路径):概念/节点详情「相关素材建议」候选(混合检索 top-K ≤10,排除已链接)→ 人工勾选确认 → 既有 link_knowledge_target 落库(白名单零迁移)+ 跨体系相似概念提示(提示型不自动合并) | P2 | 已实施 | v0.19.3 | kb_discovery 默认关(交叉点默认关延续);建议不落库零双写;**代码已交付(2026-09-03:kb_discovery.rs 排除已链接 + feature flag + DiscoverySuggestSection 勾选确认流 + 相似提示,dd5f9b2 之后 v0.19.3 提交)**;v0.19.2 采集体验插队顺延一档 |
468+
| REQ-262 | 治理与设置:SettingsPage「学习库」段(引擎状态/模型下载/索引统计与重建/发现开关)+ FTS5 使能核查 + 中文 BM25 切词校准 | P2 | 部分落地(v0.19.0~3) | v0.19 系列随批 | 复用 speaker/OCR 模型下载 UI 范式;**已交付(2026-09-03):FTS5 使能核查 + 切词校准定案(trigram)+ 设置「学习库」段(引擎状态/问答开关与档位/统计/重建/**相关素材建议开关 v0.19.3**);模型下载随 v0.19.4** |
469469

470470
### v0.19.2 · 采集体验小版本(2026-09-03 用户实测插队立项)
471471

‎docs/versions/README.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@
5252
| v0.19.0 | [v0.19.0.md](./v0.19.0.md) — 检索与发现层·索引基建:kb 派生三表 + 生命周期钩子 + reindex_all/stats + kb_search 全库混合检索(切词校准=trigram+2 字 LIKE;FTS-only 可发布——REQ-258,ADR-029) | 版本文档(已实施 2026-09-03,真机验收待执行) |
5353
| v0.19.1 | [v0.19.1.md](./v0.19.1.md) — 读路径 A 学习库问答「问我的学习库」:📚 会话模式 + 命中恒可用 + 双闸门生成(pack_fragments 转正/预算/审计)+ 引用 chips 跳笔记高亮命中词 + 设置「学习库」段(REQ-260/262 部分) | 版本文档(已实施 2026-09-03,真机验收待执行) |
5454
| v0.19.2 | [v0.19.2.md](./v0.19.2.md) — 采集体验小版本:窗口选择增强(抖音/快手/B站客户端评分表 + z 序置顶 + 系统窗口过滤开关找回)+ 开始即录门控(15s 就绪等待自动开录/等待期无采集中控件/AV 同刻,REQ-271~273;REQ-261/259 顺延 v0.19.3/v0.19.4) | 版本文档(已实施 2026-09-03,真机验收待执行) |
55+
| v0.19.3 | [v0.19.3.md](./v0.19.3.md) — 读路径 B 检索建议(发现路径):概念「相关素材建议」候选(排除已链接)+ 勾选确认经引用通道落库(建议零双写)+ 跨体系相似概念提示(不自动合并)+ kb_discovery 默认关(REQ-261/262 余项) | 版本文档(已实施 2026-09-03,真机验收待执行) |
5556
| v0.20 | [v0.20.md](./v0.20.md) — ASR 质量增强系列(自验证路线):v0.20.0 asr_eval harness + 首轮报告(REQ-263)→ v0.20.1 DTW 接线/参数定案族/热词加固/积压验证(REQ-264~267)→ v0.20.2 全量精修/混淆画像闭环/LLM 校对(REQ-268~270) | 系列文档(2026-09-03 立项 C,待实施;ADR-030) |
5657

5758
## 沉淀规则

‎docs/versions/v0.19.3.md‎

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
# v0.19.3:读路径 B——检索建议(发现路径,建议制·默认关)
2+
3+
> 状态:**已实施**(2026-09-03;真机验收待执行)
4+
> 依据:[v0.19 检索与发现层设计([ ] 已归档)](../archive/2026-09-03/2026-09-03-v0.19-rag-retrieval-discovery-design.md) §八 · ADR-029(决策 5/治理)· REQ-261 · REQ-262(发现开关余项)
5+
> 排期注:v0.19.2 采集体验小版本用户实测插队后,检索建议本批落地为 v0.19.3(原排期 v0.19.2 顺延一档)
6+
7+
## 一句话
8+
9+
体系概念详情出现「📎 相关素材建议」:以概念名+essence 全库检索 top-K(≤10,**排除已链接**)→ 逐条勾选 → 确认后仅经既有 `link_knowledge_target` 落库(白名单 note/fragment 零迁移,幂等,**建议零双写**);跨体系相似概念只提示不合并(人工处置)。feature flag `kb_discovery` 默认关——设置 → 学习库可开启(后端 command 同步把关)。
10+
11+
## 本批已交付
12+
13+
| 层 | 内容 |
14+
|---|---|
15+
| 开关 | FeatureFlags.kb_discovery(默认 false——保守默认纪律;旧 JSON 缺失字段零迁移回退默认;roundtrip/legacy 单测)· set/get 白名单扩展 |
16+
| 数据层 | kb_discovery.rs:kb_discovery_suggest(概念取回 → 排除集=该概念 knowledge_links 已链 note/fragment → name+essence 混合检索 → 过滤截顶 → 跨体系相似提示);纯函数 normalize_name(空白/全角/大小写折叠)与 concept_name_overlap(双向包含,短边 ≥2 字防单字误报);SimilarHint/DiscoveryResult serde camelCase |
17+
| 命令层 | kb_discovery_suggest(flag 关 → 明确报错引导设置——后端不信前端隐藏;concept_id ≤0 拒绝;None→"概念不存在")· lib.rs 注册 |
18+
| 前端 | DiscoverySuggestSection(概念详情建议区:开关关零渲染;候选勾选/确认/重建议;确认逐条 link 后 onChanged + 自动刷新(已链者随即消失);相似提示黄条展示型)· KnowledgeDetailPanel 概念分支嵌入 · LearningLibraryPanel「📎 相关素材建议」开关(feature_flags 持久化) |
19+
| 契约 | types/kb.ts:KbDiscoveryResult/SimilarHint;KbHit 复用(证据候选与引用卡片同字段口径) |
20+
21+
## 测试与验证
22+
23+
- Rust:kb_discovery 6 用例(overlap 双向/单字拒绝/全角归一化、证据排除已链 note 与 fragment、跨体系相似仅跨体系、概念不存在 None)+ feature_flags kb_discovery roundtrip/legacy——`kb_discovery feature_flags` 过滤全绿
24+
- 前端:DiscoverySuggestSection 3 用例(开关关不渲染零噪音 / 开启候选逐条确认仅走 link_knowledge_target(note+fragment 两路断言)+ onChanged + 刷新 / 空候选诚实文案)——vitest 71 文件 528 用例全绿;tsc 零错误
25+
- Rust 全量:**2052 通过 / 2 失败(note_filter 预存 TD-30-B)**;clippy 零告警
26+
27+
## 治理落地
28+
29+
- 默认关:kb_discovery=false(UI 零渲染 + command 报错双保险);命中检索恒可用不受开关约束
30+
- 铁律:建议不落库、零双写——确认路径唯一 = link_knowledge_target(幂等语义既有);相似概念为提示型(不自动合并——无合并命令且语义归人,YAGNI)
31+
- 性能:按实体现算(个人量级 <100ms),无后台批处理/无自动聚类任务(设计 §八 一致)
32+
33+
## 验收(用户真机,待执行)
34+
35+
- [ ] 设置 → 学习库开启「相关素材建议」→ 概念详情出现建议区;勾选确认 → 体系页引用即现;未确认不落库
36+
- [ ] 已链接素材不再重复建议(确认后自动从候选消失);跨体系相似概念黄条提示可人工处置
37+
- [ ] 开关关闭时概念详情无建议区且直接调用 command 被拒(错误文案引导设置)
38+
- [ ] 回归:v0.19.0~2 全部既有路径(学习库问答/窗口选择/索引)零回归
39+
40+
## 关联与后续
41+
42+
- 设计/ADR:设计 §八/§9 · ADR-029 · REQ-261/REQ-262(发现开关余项随本批)
43+
- 后续:v0.19.4(REQ-259 语义增强:EmbeddingEngine spike 选型后实施——RRF 函数已就绪待合流;不阻塞本批)· `/ask` 命令别名(设计 §7.1 下批接线评估)· 真机验收批
44+
45+
## 待办
46+
47+
- [ ] 真机验收(上述 4 项)
48+
- [ ] v0.19.4 embedding 选型裁决(内嵌 ONNX vs Ollama 端点——依赖环境与分发策略)

0 commit comments

Comments
 (0)