diff --git a/.task/feature-ext8-remaining-shared-reads.md b/.task/feature-ext8-remaining-shared-reads.md index b1d8b11b..94499e4b 100644 --- a/.task/feature-ext8-remaining-shared-reads.md +++ b/.task/feature-ext8-remaining-shared-reads.md @@ -7,7 +7,9 @@ - 权威仓:ssh://git@git-ssh.u1680832.nyat.app:31411/weichen/Agent-System-Dev.git;目标分支:main;R0(initial_base_sha)= 28a4dbcbf4d61d44b1e0300993962da419e98666 - 工作区:/home/weichen/projects/Agent-System-Dev-wt-feature-ext8-remaining-shared-reads(worktree);分支:feature/ext8-remaining-shared-reads -- 授权与交付终点:<本次允许的动作与终点;未授权事项写明> +- 授权与交付终点:用户目标(含合入清理)+ 验证器指令备选线「EXT-8 余项切片(引用/图 + 查询、hostapi 面、向量通道共享——关号最后三块)」。允许:Backend 实现 + 双 PR + + CI 绿后合入 + 清理。v0.2.0 tag 复核:未打(本轮再验,4 仓 0)。 - 交付模式:manual(逐阶段人工评审);明确授权后可记为 authorized-continuous - 自动推进授权:无;授权范围:无;授权来源:无;授权终点:无;停止条件:无(未授权) - 当前阶段:需求拆解;当前增量:I1(待定义) @@ -15,7 +17,23 @@ ## 目标与非目标 -<预期结果、受影响入口/模块/契约;明确不做什么。> +**范围(EXT-8 关号三块)**: +1. **向量通道共享**:store 增 \`SearchKnowledgeVectorsShared(requester, vec, topK, pred)\` + (他人 owner 行 + 谓词后置);rag.Pipeline 增 \`RetrieveShared(ctx, requester, q, + allow func(docOwner, projectID))\`——本人两路(向量+全文)如常,追加共享两路(向量 + Shared + 全文 Shared),RRF 融合后裁剪;embedder 不可用时共享仍走全文(现状)。 + server.searchKnowledge:Retriever 实现 RetrieveShared 时整体走共享版(否则现状+FTS + 共享追加,与切片 2 相同)。 +2. **hostapi 面**:\`GET /host/v1/knowledge/search\` 在本人结果外追加经 EXT-8 适配器 + 放行的共享命中——hostapi Server 增可选 Authorizer(组合根注入同一 authzSlot), + 以 Search 回调形态传入共享追加逻辑(hostapi 不直接依赖 store 细节)。 +3. **引用(retrieval hit 的 Ref 下载)与图/列表口径**:工件三入口+SSE 已在切片 1/2 交付; + 本轮补断言「共享命中的 Ref 可经 /api/artifacts/{id}/content 取回」(同适配器判定), + 作为引用链路一致性的红→绿验收(endpoint 已存在,断言钉口径)。 +**红测**:A 向量共享(SwitchingEmbedder 档:他人向量命中授权后可检,未授权拒); +B hostapi 共享追加(同一 authorizer);C 共享命中 Ref 可下载(一致性钉)。 +**非目标**:图查询专用端点(基座无图面——RDM 追溯网在下游,其共享经工件/知识两口径 +覆盖,卡内说明);EXT-6/7/10、EXT-12 完整形态。 ## 关联方向与规划