Skip to content

feat(package): context-knowledge-query 按证据链查询 - #82

Merged
qiansc merged 1 commit into
mainfrom
feat/context-knowledge-query-evidence-chain
Oct 24, 2026
Merged

qiansc merged 1 commit into
mainfrom
feat/context-knowledge-query-evidence-chain

Conversation

@qiansc

@qiansc qiansc commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

Summary

把随包分发的 context-knowledge-query Skill 改写为按证据链查询:从知识包页面出发,按需扩展到链接页面与候选页面,直接追溯结论记录的出处,在记录提交上沿 import、调用调查代码,并在剩余缺口不影响结论时停止。适用于无工作区的知识包场景的检索规则与工作区侧检索保持同一水平。

Compatibility

None。只改 Skill 文本(中英两份)及检查它的测试;Skill 名称、metadata.shared、检索脚本与包结构不变,版本号不变。

Verification

见下方「自测情况」。

Checklist

  • bun run verify:full passes.(由 CI 执行)
  • Lifecycle changes include route and recovery tests.(不涉及)
  • Published package metadata and local pack behavior were checked when affected.(不涉及)
  • English and Simplified Chinese user documentation remain behaviorally equivalent.
  • Runtime code remains compatible with Node.js 20+.
  • No generated output, secrets, private sources, or local workspaces are included.

背景

0.7.84 的 context-knowledge-query 主要是旧 knowledge-query 的多包版本:一次导航、一次检索,回源只有一张表。工作区侧检索中决定答案质量的做法——按“剩余缺口是否会改变结论”决定是否继续深入、直接追溯出处、按提交调查代码、版本基线、有条件结论——都没有带进知识包。

改动

  • 新增「边界」:只读;临时材料放 .tmp/context-knowledge-query/;标题、片段和出处条目只用于定位,不代表已读原文;遵守本地/离线/远程读取约束。
  • 新增「沿证据链查询」:确定范围 → 导航 → 在包内扩展到链接页面与候选 → 追溯出处(不先询问;单个出处失败只影响依赖它的结论)→ 调查代码 → 停止;每一环后按“剩余未知是否会改变结论、条件或范围”决定是否继续;关键缺口无法补上时给出有条件结论;不穷举、不为补充说法扩大调查。
  • 「检索」:依据命中片段选页、零结果先检查查询含义再放宽、嘈杂时按包/根/路径收窄。
  • 「读取出处」:出处身份或版本无法确定时保留包内结论并说明;复用已读原文。
    • 记录提交上的代码:优先已配置的只读代码服务;否则浅历史 + 延迟内容 + 先配稀疏范围、核对提交、git ls-tree 定位模块、身份核对与单写入者、不改用户检出、不用默认分支代替。
    • 调查代码:从记录位置开始、同名定义按实际 import 解析、批量读取、不遍历整张调用图、区分实现/契约/测试/运行时/推断、符号常量须读定义。
    • 版本:记录提交是出处基线,不是当前分支头或线上状态;仅在需要时用实际 diff 做有限比较。
    • 文档与笔记:读正文与相关附件,未读链接不是证据。
  • 「回答」:直接回答并把条件放在结论旁、复杂问题讲机制、关键证据紧挨结论、多包分别引用、包之间或包与出处冲突时说明各自版本。
  • 新增「知识更新」:发现页面过期或缺失时向用户说明页面、证据与出处,供维护者更新;不修改已安装的包。

风险

  • 回源与代码调查只在剩余缺口可能改变结论时发生,并受宿主授权与访问方式约束;读不到时保留包内结论并说明。
  • 临时克隆只写入 .tmp/context-knowledge-query/,不改用户检出。

向后兼容

  • Skill 名称、frontmatter(含 metadata.shared)、检索脚本参数与输出不变;各包副本仍逐字节相同。
  • 已发布的知识包重新构建后才会带上新文本。

自测情况

  • pluginWorkspaceGuard.test.ts、projectV060.test.ts、projectContextKnowledgeQueryScript.test.ts、projectQuerySkillMigration.test.ts、packageSite.test.ts:38 个用例全部通过(模板章节、中英对应、无包专有变量、渲染后无作者说明等)。

🤖 Generated with Claude Code

…discipline

Rewrite the shared package query Skill around an evidence chain: navigate
package pages, widen to linked pages and candidates, trace each claim's
recorded sources directly, investigate code at the recorded commit along
imports and calls, and stop when remaining gaps cannot change the answer.
Port the applicable inspect-search rules for package-only use: sparse
commit-pinned retrieval, duplicate-definition and version handling, document
evidence, conditional answers and knowledge-update reporting.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@qiansc
qiansc merged commit 13a1954 into main Oct 24, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant