7.3 KB · updated 2026-07-31 · md

v0.26.0.ru.md

docs/i18n/release-notes/v0.26.0.ru.md

Tesserae v0.26.0 — компиляции, которые завершаются, и рассказывают, что они сделали

<!-- translations:start -->

English · 한국어 · 中文 · 日本語 · Español · Français · Deutsch

<!-- translations:end -->

Released 2026-07-26 · PyPI · GitHub release · pip install --upgrade tesserae==0.26.0

v0.25.1 остановил зависание компиляций. Этот выпуск делает их быстрыми, честными о том, что они охватывали, и останавливает их поглощение мусора.

Быстрее

  • Параллельная извлечение. Пакетный цикл порождал один подпроцесс CLI и блокировал его, один документ за раз — время по стене было буквальной суммой каждого обхода модели, измеренной примерно на 2 часа 40 минут для 161 документа. Извлечение теперь выполняется 4 документа одновременно по умолчанию (TESSERAE_EXTRACT_CONCURRENCY=1 восстанавливает последовательное выполнение).

Параллелизм изменяет скорость, но никогда не изменяет результаты: рабочий список зафиксирован в порядке пути, а результаты собираются по индексу. merge_graphs разрешает дублирующиеся ID узлов позиционно, поэтому сбор по порядку завершения молча создаст другой граф — зафиксировано тестом, чей извлекатель завершается в обратном порядке пути.

  • Кэш ответов действительно кэширует. complete_json всегда принимал cache_key, и оба клиента CLI принимали его и выбрасывали — только клиент Anthropic когда-либо его использовал. Идентичный контент переплачивал полную цену при каждой компиляции. Оба теперь читают и пишут кэш с адресацией по содержимому под ~/.tesserae/llm_cache, с ключом по содержимому плюс модель и усилие рассуждения, так что переключение моделей переспрашивает вместо того, чтобы использовать ответы предыдущей модели. Сохраняются только анализируемые ответы. TESSERAE_LLM_CACHE=0 отключает.

Честно

  • Сбои извлечения называются, а не игнорируются. Классификация сбоев различает переходящие ошибки (повторяются) от реальных, --limit больше не теряет охват графика, и аутентификация на основе ведомости предотвращает отравление прогона одним плохим профилем.
  • Маркеры полноты graphed. Строка манифеста отмечается только после того, как ее содержание действительно достигает graph.json — поэтому компиляция, которая умирает на полпути, больше не может оставлять строки, утверждающие охват, которого граф не имеет. Удаленные и переименованные документы получают надгробие вместо того, чтобы оставаться вечно.
  • Область --retry-fallbacks теперь повторно пытается ровно для документов, чье введенное извлечение не удалось, и ничего больше.

Чище

  • Каталоги мусора остаются вне корпуса. Tmpdirs pytest (pytest-of-<user>/pytest-N/) и каталоги временных файлов pip попадают в настроенный корневой каталог источника, когда TMPDIR разрешается в репозитории, высеивая тысячи одноразовых файлов фикстур, которые меняются при каждом запуске тестов — так что набор кандидатов никогда не повторяется и --changed-only никогда не может быть пусто. Один реальный манифест проекта содержал 25,269 записей, из которых 16,110 (63%) указывали на файлы, которые больше не существуют.

Ходок теперь пропускает эти семейства при рекурсивном спуске. Это каталог правило: docs/pip-install-guide.md — это обычный документ и остается в индексе — сам генератор концепций Tesserae создает ровно эту форму имени файла из любого заголовка "pip install x".

Также

  • Модель Codex по умолчанию — gpt-5.6-luna.
  • Новая справка по настройке документирует все 29 переменных окружения TESSERAE_* — значения по умолчанию, что контролирует каждая, и когда это изменять. Некоторые, включая тайм-аут извлечения, отправленный в v0.25.1, вообще не имели документации.

Обновление с v0.25.1

Прямая установка. Два момента, которые стоит знать:

Извлечение теперь работает 4-кратно. Если ваша учетная запись провайдера имеет жесткое ограничение скорости, установите TESSERAE_EXTRACT_CONCURRENCY=1.

Первая компиляция после обновления может выполнить больше работы, чем обычно — маркеры graphed не существуют в старых манифестах, поэтому строки, предшествующие им, рассматриваются как недоказанные и переотмечаются. Это одна исправительная перекомпиляция, а не постоянная стоимость.