2.2 KB · updated 2026-07-31 · md

v0.20.1.zh.md

docs/i18n/release-notes/v0.20.1.zh.md

Tesserae v0.20.1 — 长会话完整捕获

<!-- translations:start -->

English · 한국어 · 日本語 · Русский · Español · Français · Deutsch

<!-- translations:end -->

发布于 2026-07-14 · PyPI · GitHub 发布 · pip install --upgrade tesserae==0.20.1

这是为长 agent 会话而推出的一个 bug 修复版本——如果 Tesserae 正常工作,这对所有人都很重要。

300 转截断 bug

会话导入(_claude_turns / _codex_turns)在达到 每个会话 300 转 后会无声地停止捕获。下游的所有内容——分块 LLM 提取器、会话发现、决策、类型图——都只能看到一个长会话的前 300 转。马拉松式会话后期部分的洞察、决策和 TODO 从未被提取,没有任何警告。

这个上限早于分块提取管道,已被它淘汰:提取器读取 max_turns_per_chunk 窗口中的历史记录,并应用每转文本上限,因此每个 LLM 调用的 prompt 大小是有界的——与总会话长度无关。在捕获时进行截断只会丢弃知识。

修复

导入器的默认值现在是一个失控文件的后备上限(100,000 转),而不是截断点,与每个显式调用站点(活动摘要、会话分块、实时服务)一致。完整对话历史流入分块存储和提取器;每个调用的 LLM 上下文由分块层限制,这是该层应该关注的问题。

增量编译保持低成本:块缓存与索引对齐,因此现有会话的先前提取的块保持缓存命中——升级后下一次编译时,只有新可见的转会被提取。升级到 v0.20.1 后的第一次重新编译在具有长会话的项目上会比平常进行更多 LLM 调用;这是之前不可见历史的积压在被首次提取。

没有 API 或 schema 更改。pip install --upgrade tesserae==0.20.1(或 npm i -g @jokerized/tesserae@0.20.1)然后重新编译。