2.1 KiB
2.1 KiB
Query Source Policy Design
Goal
在不改动 plan mode 主链的前提下,重构 query.answer 的来源判定,让系统先决定“查内部还是查外部”,再进入检索与回答生成。
Confirmed Baseline
plan mode、requirement workspace、draft confirm 不动。- 只改
query.answer链路。 source_policy成为一等公民,最少支持:internalexternaluncertain
uncertain在 v1 按用户偏好默认external优先,不做 internal/external 同轮混搜。- 现有分散短路逻辑只清理“来源判定类短路”,保留 workflow 锁定类短路。
- embedding 不再允许静默回退伪向量;优先使用真实 embedding 引擎,本地可用时允许走本地 embedding。
Scope
In Scope
query.answer的来源判定、RAG 语义收口、检索域限制、回答主链短路收口。- embedding 真实化。
- 相关测试与运行时文档同步。
Out of Scope
pmflow_semantic_context_decision对query/plan的上游分流。- requirement-plan / draft confirm 主链行为。
- 新拆仓、新服务化。
Implementation Direction
- 在
query.answer网关前移source_policy,并带审计字段进入 RAG。 - 用单次 query 语义判定同时输出
query_type / source_policy / retrieval_domains / subject_focus / scope_hint。 answer scene不再重复决定来源,只负责回答风格、deep intent 与 snapshot focus。source_policy=internal时只允许内部检索域。source_policy=external时只允许外部检索域。source_policy=uncertain时 v1 直接按 external-first 收敛成外部域,不做混搜。- embedding 改为真实 provider 链路:优先显式 embedding provider,本地可用时允许走 Ollama embedding;否则显式失败,不再回伪向量。
Risks
- 需要避开当前工作区里已经存在的 requirement-plan 修正,避免误伤。
- 若 internal/external 规则表定义过窄,可能造成
uncertain过多。 - embedding 从伪向量改成显式失败后,可能暴露历史依赖伪向量“凑合可用”的路径。