piagent_
← /资讯
2026年9月15日community

pi 把文档提升评测搬进一次性容器,补齐扩展事件钩子类型导出

9 月 15 日合入 pi 的两个 PR 出自同一位作者 christianklotz,而且都不碰代理主循环,各自加固一块基建:#9635 把文档提升(documentation lift)评测改造成每个组合独占一个全新 Docker 容器,#9642 补齐了 #9511 逐条列出的扩展事件钩子类型导出,还捎带修复了一处 Bedrock 缓存计价回归。两者都还没进入任何已打 tag 的 release,将随 pi 的下一个版本一同发布。

#9635 先把宿主侧评测与 Docker 里的文档提升对比拆开,再让计划中的每个 (case, variant, model, repetition) 组合在各自全新的容器里运行——被阻塞的组合只上报、不再让整批评测跟着中止。评测套件本身也顺势简化:改用原生的 describeEval、显式 run、确定性裁判与真实的 ModelRuntime 检查,场景与夹具则搬到使用它们的评测定义旁边。

#9642 关闭的 #9511 记录了类型导出的零散现状:BeforeProviderRequestEvent 可以导入,AfterProviderResponseEvent 却不行,issue 还按事件逐条列出缺失清单——ResourcesDiscoverEvent、SessionBeforeSwitchResult、MessageEndEventResult、ModelSelectEvent、ThinkingLevelSelectEvent 等等。这次修复把 ExtensionAPI.on() 用到的全部扩展事件与结果类型从包入口导出,把 MessageEndEventResult 和 ThinkingLevelSelectEvent 加进 extensions barrel,并让 ModelSelectSource 与 ModelSelectEvent 一同可用。部分类型仍保持内部;PR 里也留了一句——内部/导出的边界或许值得日后再正式梳理。

同一 PR 里还有一处作者自己在摘要里标注为不相关的修复:Bedrock 缓存成本的回归检查,现在会尊重 CI 期间重新生成的按 profile 区分的目录计价。完整的缺失类型清单在 #9511,容器隔离方案在 #9635——下一个版本切出之前,两篇都不长,值得先读一遍。

source: https://github.com/earendil-works/pi/pulls?q=is%3Apr+merged%3A2026-09-15+is%3Aclosed