Код Клода переписывает SQL-парсер PostHog с ускорением в 70 раз – как работают тестирование на основе свойств и параллельные агенты

✍️ OpenClawRadar📅 Опубликовано: 25 июня 2026 г.🔗 Source
Код Клода переписывает SQL-парсер PostHog с ускорением в 70 раз – как работают тестирование на основе свойств и параллельные агенты
Ad

Инженер PostHog Робби Кумбер использовал несколько длительных параллельных сессий Claude Code для переписывания своего SQL-парсера, добившись ускорения примерно в 70 раз по сравнению с существующим ANTLR-парсером на C++. Новый парсер содержит 16 тысяч строк вручную написанного кода на Rust, а также 5 тысяч строк инструментов и тестов.

Зачем переписывать?

PostHog транслирует пользовательский SQL в сырой ClickHouse SQL для логических представлений данных и оптимизаций. Парсер преобразует SQL в AST для последующего контроля доступа и оптимизации. Старый ANTLR-парсер использовал универсальный интерпретатор обхода графа (ATN — NFA со стеком) с произвольным динамическим просмотром вперед, что было медленно, несмотря на реализацию на C++. Собственные рекурсивные парсеры с нисходящим разбором по умолчанию быстрее.

Подход: параллельные сессии агентов + оракул TDD

  • Тестировались два подхода параллельно: один, ориентированный на производительность (рекурсивный спуск с синтаксическим анализом Пратта), другой — на корректность (имитация поведения ANTLR с явным кодом). Оба сработали одинаково хорошо.
  • Существующий C++-парсер использовался как оракул для выявления расхождений — находились SQL-запросы, где парсеры различались, новый парсер исправлялся, и процесс повторялся.
  • Property-based тестирование генерировало бесчисленные вариации SQL, включая тест на SELECT SELECT FROM FROM WHERE WHERE AND AND (допустимый SQL).
  • Новый парсер согласуется с оракулом для всех реалистичных запросов; различия возникают только для патологических запросов.
Ad

Результаты

Ускорение в 70 раз при парсинге. Итоговый парсер использует рекурсивный спуск с просмотром вперед и возвратами только там, где это необходимо. Кумбер отмечает, что без ИИ написание и поддержка такого собственного парсера заняли бы месяцы и, вероятно, не оправдали бы усилий. С Claude Code это стало возможным.

Ключевой вывод

Этот пример показывает, что параллельные сессии ИИ-кодирования в сочетании с property-based тестированием и оракулом для разработки через тестирование могут радикально улучшить производительность критического кода. Метод — использование агентов для переписывания ключевой инфраструктуры с опорой на автоматическое обнаружение расхождений — применим и для других проектов.

📖 Источник: HN AI Agents

Ad

👀 Смотрите также

Engram v1.0.0: Постоянная память для локальных LLM через граф знаний
Инструменты

Engram v1.0.0: Постоянная память для локальных LLM через граф знаний

Engram — это единый бинарный файл, который обеспечивает постоянную память для локальных LLM через систему графа знаний. Он включает MCP-сервер для интеграции с Claude Code, Cursor и Windsurf, хранит все данные в одном файле .brain и работает полностью офлайн.

OpenClawRadar
Mímir: Система памяти на Python, основанная на 21 механизме нейронауки
Инструменты

Mímir: Система памяти на Python, основанная на 21 механизме нейронауки

Mímir — это система памяти на Python для ИИ-агентов, реализующая 21 механизм когнитивной науки, такие как флэшбэк-память и забывание, вызванное извлечением. Она использует гибридный индекс BM25 + семантический + датированный и демонстрирует улучшения в тестах, включая на 13% более высокую точность инструментов на Mem2ActBench по сравнению с VividnessMem.

OpenClawRadar
Mneme: Предварительный хук, блокирующий правки кода Claude, нарушающие архитектурные решения
Инструменты

Mneme: Предварительный хук, блокирующий правки кода Claude, нарушающие архитектурные решения

Mneme — это PreToolUse-хук для Claude Code, который проверяет каждое действие Edit/Write/MultiEdit по локальному файлу решений перед записью на диск, блокируя нарушения без ручного вмешательства.

OpenClawRadar
Марми: Самостоятельно размещаемое мобильное приложение для управления несколькими сессиями ИИ-агентов программирования
Инструменты

Марми: Самостоятельно размещаемое мобильное приложение для управления несколькими сессиями ИИ-агентов программирования

Marmy — это инструмент с открытым исходным кодом и возможностью самостоятельного хостинга, созданный на основе Claude Code, который позволяет управлять несколькими сессиями ИИ-агентов для программирования прямо с телефона. Он включает в себя агент на Rust для ваших машин, приложение для iOS, просмотр файлов с подсветкой синтаксиса, push-уведомления и архитектуру «менеджер-агент».

OpenClawRadar