Skip to content

English | Русский

Что изменилось в 1.10 ​

Страница для того, кто обновляется. Сначала — ради чего, потом — что сломается.

Что такое 1.10, в трёх пунктах ​

🤖 Автономность перестала быть просьбой и стала механизмом. 1.9 просила агента продолжать работу — и замер показал, чего стоит просьба: правило, которое только просят, выключают на той же неделе. В 1.10 появился /run, драйвер, закрывающий задачи одну за другой внутри одного хода; бюджет вызовов стал ПОТОЛКОМ в неприсмотренном прогоне и остался советом в остальном; прогон следит за собственной ёмкостью и уходит между задачами, а не посреди одной. Обещание автономности при этом стало числом — закрытий на сообщение владельца, — потому что обещание без числа проверить нечем.

📐 Утверждение теперь либо измерено, либо объявлено отсутствующим. Величина, которую нельзя получить, не выдаётся за ноль (правило 1.9 осталось в силе), а новое в 1.10 — что и ЦЕНА называется числом. Замерена цена проекции состояния: 68,6% путей дерева и 47,1% байт, с вердиктом по каждому виду и причиной, по которой ни один не уходит. Замерена цена ответа: у журнала появился бюджет — и только у его пересказной половины, доказательство закрытия не ограничено. Появился регистр намеренных пробелов: что НЕ гарантировано, с причиной у каждой строки, потому что пробел без причины читают как недоделку.

🔍 Фреймворк перестал верить собственным бумагам. Подделанная квитанция больше не проходит проверку. PASS гейта на весь проект больше не удостоверяет файлы, на которые он не смотрел. Храповик дублей стал мерить дублирование вместо похожести. Регистр сгнивших цитат пуст: 108 и 39 стали нулями. А семантический поиск — единственная возможность релиза, которая приехала ВЫКЛЮЧЕННОЙ: опубликованные данные говорят, что на базе меньше тысячи записей эффекта нет, поэтому ворота закрыты и частота срабатывания на нашей машине равна нулю. Это результат, а не пробел.

Пересобран перед выпуском ​

Владелец остановил 1.10 у тега и вернул его ради трёх вещей, в таком порядке.

Понятен извне. README стал путём: три команды установки, проверка статуса для POSIX и Windows, первая задача. Свежий читатель, не видевший TAUSIK, до раздела установки встретил около 27 нерасшифрованных терминов; второй, после переписывания, не назвал ни одной внутренней ссылки и оценил понимание в 8/10. tausik demo показывает суть за десять секунд, без сети и без ключа LLM: агент заявляет, что тесты прошли, не запуская их, закрытие отклоняется, настоящая проверка красная, и только реальная правка закрывает задачу с подписанной квитанцией.

Экономия токенов. Кэш — 94% счёта, и каждый вызов пересылает контекст заново, поэтому рычаг — число вызовов. Модель цены теперь учитывает кэш, закрытие задачи стоит один вызов вместо четырёх, а tausik metrics calls показывает, на что закрытая задача тратит вызовы: чтение кода — 31% из них.

Качество ответа. Правила ответа есть в каждом файле правил и теперь приходят ещё и перед каждым ответом. Мера, следившая за ними, читала десять САМЫХ СТАРЫХ транскриптов, а не новых, и сдвинуться не могла; теперь она читает новые и считает пересказ, а не цитату доказательства. На новейших десяти: медиана 162 слова, p90 365.


ЛОМАЮЩИЕ ИЗМЕНЕНИЯ ​

Шесть. Каждое — с тем, что делать.

1. Пользовательский тир переехал в ~/.config/tausik/config.json ​

Старый адрес ~/.tausik/config.json читается, только если он единственный. Причина не косметическая: каталог с именем .tausik в домашней папке делает дом похожим на проект для восходящего поиска, и команда, запущенная где угодно, молча цеплялась к тиру конфигурации вместо проекта.

Что делать: перенести файл. tausik doctor говорит, когда существуют оба.

2. task start --force отозван ​

Время сессии и ёмкость вызовов стали СИГНАЛАМИ, а не воротами. Флага, обходящего ворота, больше нет — обходить нечего.

Что делать: убрать --force из скриптов. Предупреждение о длине смены остаётся и по-прежнему стоит читать.

3. Точка входа RAG-сервера — rag_server.py ​

Файл назывался server.py в двух разных пакетах, и две записи карты вели в одну; mypy из-за этого не проверял один из серверов.

Что делать: если MCP-сервер зарегистрирован вручную, поправить путь в .mcp.json. Штатный bootstrap.py делает это сам.

4. Сессия TAUSIK есть сессия хоста ​

Её открывают и закрывают хуки, а не команда. Счётчик чекпоинта выводится из журнала, каденция аудита считает ЗАКРЫТИЯ, а не смены.

Что делать: ничего, если вы пользуетесь штатными хуками. Если вы звали session start из своих скриптов — вызов больше не нужен.

5. TODO.md упразднён ​

Документ объявлял себя картой направления и отставал на два релиза, пока рядом жил ПОРОЖДЁННЫЙ ROADMAP.md. Его содержание про 2.0 сохранено в решении и в активных эпиках.

Что делать: читать ROADMAP.md. Если вы ссылались на TODO.md — ссылка мертва, и это лучше, чем ссылка на устаревшее.

6. Задача закрывается только с прогоном verify — в любом проекте ​

До 1.10 проект без тестового гейта пропускал Verify-First целиком, и task done --ac-verified закрывал задачу на слово агента. Теперь статические гейты запускаются и на verify, так что verify-гейт есть в каждом проекте, и закрытие без прогона verify отклоняется.

Что делать: закрывайте task done &lt;slug&gt; --ac-verified --relevant-files <файлы> --verify (один вызов) или сначала tausik verify --task &lt;slug&gt;. Задача, не менявшая файлов, закрывается с --no-file-changes на чистом дереве.


Что ещё изменится при обновлении ​

Схема базы: 62 → 67 ​

Пять миграций, все вперёд и без потери строк:

ВерсияЧто появилось
v63сессия хоста: сессия TAUSIK привязана к сессии хоста
v64SPEC-UC, двенадцатый тип спецификации (RENAR 1.1 §8.3)
v65запись памяти говорит, откуда её утверждение — наблюдение или вывод
v66решение записывает, что отвергло и что его потом заменило
v67поля, добавленные проекцией задач

Обновление идёт при первом запуске. Отдельный дефект 1.9 — падение на v53 с откатом версии на 44 — исправлен; если вы застряли на нём, обновление пройдёт.

Новые команды ​

КомандаЗачем
tausik hygiene unarchiveснять archived_at по слагу или по свежести — единственный путь назад, которого два релиза не было
tausik memory editпереписать запись командой, а не в обход через проекцию
tausik task obsoleteзакрыть задачу, которую решило время, не выдавая её за поставленную
tausik metrics answersформа ответов агента, измеренная
tausik metrics callsвызовы инструментов на закрытую задачу по видам, по сложности
tausik demoпосмотреть, как ловится ложное «тесты прошли», в одноразовой песочнице
tausik db telemetryподрезать накопительные сайдкары по объявленному сроку жизни
tausik publish notesтело релиза, отказывающее себе без обеих страниц заметок
/runзакрывать состав релиза задача за задачей, не возвращая управление

Поиск: падежи, кавычки и молчание ​

Поиск находит слово в любом падеже и числе. Четыре пути FTS перестали падать на запросе, написанном так, как в этом проекте пишут имена: memory search из двух слов падал примерно в половине случаев. Поиск по коду больше не отдаёт несуществующие файлы.

Что поставлено, но выключено по умолчанию ​

Семантический re-rank поверх FTS5 — выключен, и включать его стоит только на базе больше тысячи записей: на меньшей эффекта нет по опубликованным данным, а round-trip к провайдеру платится всегда. Точка провайдера обязана быть loopback: сервису отдают текст строк целиком, и хостинговая точка увезла бы их с машины.

Компактные схемы инструментов MCP (mcp.compact_tool_list) — выключены.

Гигиена, которую вы заметите ​

Пустые каталоги, которых git не видит, стали находкой. У накопительной телеметрии появился срок жизни, и он следует читателю: файл, который читают целиком, не режется по возрасту вовсе. Бэкапы базы прореживаются по номеру версии, а не по времени изменения.

Ответы стали короче — и это измеряется ​

Правила ответа приходят перед каждым ответом, а ответ сверх бюджета называется на следующем запросе. tausik metrics answers читает новейшие транскрипты и считает только ПЕРЕСКАЗ: вывод в блоках кода и строки таблиц — доказательство и не ограничиваются.


Чего в этом выпуске НЕТ ​

Честнее сказать, чем промолчать:

  • Сайт tausik.tech не пересобран. Он показывает документацию четырёх релизов назад. Задача заблокирована по двум своим же критериям: сборка идёт ПО ТЕГУ, которого до выпуска нет, а деплой наружу — акт владельца.
  • Экономии токенов по-прежнему нет измеренной. Замер 1.9 остаётся последним словом: на той паре экономии не было. 1.10 этого не перемерял, и утверждать обратное не на чем.
  • Ответ хоста на session.list_roots() не проверен. Проба требует регистрации сервера и перезапуска хоста; записано как непроверенное, с датой пересмотра.

См. также ​

  • known-limitations.md — полный регистр того, что НЕ гарантировано
  • state-projection-cost.md — чего стоит проекция и почему всё остаётся
  • semantic-rerank.md — ворота семантического слоя и замер на своём трафике
  • task-archive-spec.md — архивация и единственная команда назад
  • publishing.md — две линии репозитория и почему опубликованный тег не двигается