Эта страница переведена с английской документации. Команды, идентификаторы и примеры не изменены. Среда выполнения 7.24.4 · SDK 2.6.7. Английский оригинал
Локальный кэш свидетельств
Статус: память включена по умолчанию; RocksDB включается явно
Область: текущее состояние
Последняя проверка: 2026-09-13
Владелец: среда выполнения ax-code
AX Code по умолчанию использует ограниченный кэш свидетельств в памяти, с необязательной устойчивостью RocksDB рядом с существующим хранилищем SQLite. SQLite хранит полную историю сеанса и записи проверки. Кэш содержит одноразовый отрисованный текст и синтаксические символы. Права он не меняет и свежей проверкой не считается.
Режим памяти по умолчанию базу RocksDB не открывает. Чтобы включить устойчивость в установке из исходников, соберите её собственную поддержку и явно выберите RocksDB:
pnpm build:native fs
AX_CODE_EVIDENCE_CACHE=rocksdb pnpm run dev
AX_CODE_EVIDENCE_CACHE=memory явно выбирает повторное использование по умолчанию внутри процесса без устойчивого хранилища. В режиме RocksDB отсутствующая собственная поддержка, блокировка базы, которую держит другая среда, или сбой кэша откатываются к памяти с диагностикой. Обычные сборки дополнения файловой системы включают RocksDB для явного включения. Сборки выпуска проверяют, что упакованное дополнение может записать кэш и открыть его снова. Собственные операции идут вне цикла событий JavaScript.
Чтения текста до 1 МиБ проверяют текущие байты исходника и повторно используют отрисованный диапазон, когда совпадают содержимое, путь, диапазон и формат. Более крупные файлы, внешние чтения, каталоги и вложения в кэш чтения не входят. Инструкции репозитория и метки чтения файлов остаются живыми. Синтаксическое извлечение может повторно использовать символы для того же исходника и языка. Эти символы не устанавливают семантические ссылки и вызывающих.
В любом режиме кэша повторные полные результаты чтения текста, уже видимые в текущем запросе модели, используют короткую ссылку на первый результат. Исходные полные выводы инструментов остаются в истории сеанса. Сжатие заново строит видимость. Более позднее чтение отрисовывается полностью, если более ранняя копия отсутствует. Повторные побайтно одинаковые постраничные виды чтения, grep и glob тоже могут ссылаться на первый полный возвращённый вид. Каждая ссылка сохраняет свой исходный подвал усечения и указание продолжения. Опущенное содержимое исходника остаётся недоступным. Результаты с инструкциями, медиа, ошибки, обрезка по строкам и нераспознанные частичные результаты остаются дословными. Меняется вход модели, а не каноническая история и не выполнение инструментов, и снижение биллинга провайдера это не устанавливает.
Попадания в кэш экономят отрисовку или разбор. Они не отменяют чтения проверки исходника и вызовы инструментов, запрошенные моделью. Чтобы соединить зависимое обнаружение в меньшее число кругов к модели, явно включите существующий параметр experimental.read_only_recipes и используйте read_recipe с ограниченным выбором. Для ограниченного структурного обзора используйте code_intelligence с operation: "buildContext". Ни один параметр кэш сам не включает.
Когда выбран, устойчивый кэш живёт в обычном каталоге кэша AX Code в evidence-v1, с отдельной базой на каталог экземпляра проекта. Допуск RocksDB ограничен 1024 записями и 32 МиБ логических значений. Физический расход диска также включает кодирование, журналы и накладные расходы сжатия. Оба режима ограничивают повторное использование в памяти 128 записями и 4 МиБ сериализованных значений на экземпляр проекта на процесс. Это не общий предел оперативной памяти процесса. Записи памяти очищаются при освобождении экземпляра и не переживают выход процесса. Записи истекают через 24 часа и проверяются при поиске. Вытеснение по ёмкости может очистить одноразовые собственные записи пакетом. Существующие данные SQLite не мигрируют и не заполняются назад.
Чтобы отключить и повторное использование хранилища, и дедупликацию входа модели, задайте AX_CODE_EVIDENCE_CACHE=off и перезапустите AX Code. Незаданное или пустое значение использует память. Нераспознанное непустое значение отключает кэш. Перезапустите существующие среды, чтобы применить новое значение по умолчанию, и уберите явное переопределение rocksdb, чтобы использовать память. Существующие файлы устойчивого кэша сохраняются. Откат SQLite не нужен. Остановите среды, прежде чем вручную удалять evidence-v1. Не удаляйте файлы блокировки RocksDB, пока среда пользуется кэшем.
Для локальной собственной квалификации после сборки функции:
cd packages/ax-code
AX_TEST_EVIDENCE_NATIVE=1 AX_TEST_FILES=test/evidence/cache-native.test.ts,test/evidence/cache-eval.test.ts pnpm exec vitest run --retry 0
Оценка на фиксированной оснастке отдельно сообщает запрошенные чтения, попадания отрисовки, опущенные байты вывода и затраченное время. Это не эталон живой модели и не заявление о биллинге токенов провайдера.
Сообщая о проблеме, укажите версию AX Code, ОС и архитектуру, вывод ax-code doctor, меняют ли поведение off или memory, и воспроизводимую задачу, если она есть. Doctor сообщает запрошенный режим и собственную возможность. Он не может определить, владеет ли кэшем проекта другой работающий процесс. Откат блокировки и ввода-вывода проекта виден в журнале среды выполнения. Обратная связь и кэшированное содержимое исходников автоматически не отправляются. Существующие опубликованные двоичные файлы получают эти значения по умолчанию только после установки обновлённого выпуска.