AIKraft/Skills/debugging

debugging

Помогает отлаживать tursodb с помощью сравнения байткода, логирования, ThreadSanitizer, детерминированного моделирования и инструментов анализа повреждений. Пригодится при поиске и устранении сложных ошибок в базе данных.

TDTurso Database official Разработка ★ 24.6k

Что делает навык

Навык предоставляет методы отладки tursodb, включая сравнение байткода с SQLite, логирование, анализ потоков и симуляцию. Он помогает выявлять ошибки в генерации кода, виртуальной машине, слое хранения и проблемах с целостностью данных.

Когда применять

  • Поиск различий в поведении tursodb и SQLite через сравнение EXPLAIN.
  • Диагностика проблем многопоточности с помощью ThreadSanitizer.
  • Воспроизведение багов с использованием детерминированной симуляции.
  • Анализ использования стека при разборе выражений.
  • Исследование повреждений WAL и целостности базы данных.

Как работает

  1. Выполнить EXPLAIN запрос в sqlite3 и tursodb, затем сравнить полученный байткод.
  2. Настроить логирование через переменную RUST_LOG (например, turso_core = trace) и запустить тесты.
  3. Запустить stress-тесты с ThreadSanitizer, используя nightly toolchain и целевой таргет x86_64-unknown-linux-gnu.
  4. Использовать симулятор limbo_sim с указанием seed для воспроизведения багов.
  5. Запустить скрипты из scripts/stack/ (frame-sizes.sh, min-stack.sh, stack-profile.sh) для анализа стека.
  6. Применить инструменты из scripts/ для отладки повреждений (corruption debugging).

Примеры запросов агенту

Сравни байткод запроса SELECT 1 + 1 в sqlite3 и tursodb, чтобы найти ошибку в генерации кода.
Запусти тесты с логированием уровня trace для модуля turso_core.
Воспроизведи ошибку, запустив симулятор limbo_sim с сидом 1234.

Что понадобится

  • Установленный Rust nightly toolchain
  • Доступ к скриптам в директории scripts/stack/
  • Инструменты анализа (ThreadSanitizer, lldb)

Описание составлено по SKILL.md навыка, сверено 09.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «tursodatabase-debugging» из репозитория: # https://github.com/tursodatabase/turso
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r tursodatabase-debugging/ ~/.claude/skills/tursodatabase-debugging/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.