Claude Code schreibt PostHogs SQL-Parser neu: 70-fache Beschleunigung durch eigenschaftsbasiertes Testen und parallele Agenten

PostHog-Ingenieur Robbie Coomber verwendete mehrere parallele, langlebige Claude Code Sitzungen, um ihren SQL-Parser neu zu schreiben und erreichte eine ~70-fache Beschleunigung gegenüber dem bestehenden ANTLR-generierten C++-Parser. Der neue Parser besteht aus 16.000 Zeilen handgeschriebenem Rust-Code, plus 5.000 Zeilen für Tooling und Tests.
Warum neu schreiben?
PostHog transpiliert Benutzer-SQL zu rohem ClickHouse-SQL für logische Datenansichten und Optimierungen. Der Parser wandelt SQL in einen AST um, der für Zugriffskontrolle und Optimierung verwendet wird. Der alte ANTLR-generierte Parser verwendete einen generischen Graph-Walking-Interpreter (einen ATN – NFA-mit-Stack) mit beliebigem dynamischem Lookahead, was trotz C++ langsam war. Handgeschriebene rekursiv-absteigende Parser sind von Natur aus schneller.
Ansatz: parallele Agenten-Sitzungen + Oracle-TDD
- Zwei Ansätze wurden parallel getestet: einer fokussiert auf Performance (rekursiv-absteigend mit Pratt-Expression-Parsing), der andere auf Korrektheit (Nachahmung des ANTLR-Verhaltens mit explizitem Code). Beide funktionierten gleich gut.
- Verwendete den bestehenden C++-Parser als Oracle, um Diskrepanzen zu generieren – SQL finden, bei dem sich die Parser unterschieden, den neuen Parser korrigieren, wiederholen.
- Eigenschaftsbasierte Tests generierten unzählige SQL-Varianten, einschließlich eines Tests für
SELECT SELECT FROM FROM WHERE WHERE AND AND(gültiges SQL). - Der neue Parser stimmt mit dem Oracle für alle realistischen Abfragen überein; Unterschiede treten nur bei pathologischen Abfragen auf.
Ergebnisse
70-fache Beschleunigung beim Parsen. Der finale Parser ist ein rekursiv-absteigendes Design mit Lookahead und Backtracking nur dort, wo nötig. Coomber stellt fest, dass das Schreiben und Warten eines solchen handgeschriebenen Parsers ohne KI Monate dauern würde und den Aufwand wahrscheinlich nicht wert wäre. Mit Claude Code wurde es praktikabel.
Wichtigste Erkenntnis
Diese Fallstudie zeigt, dass parallele KI-Codierungssitzungen, kombiniert mit eigenschaftsbasierten Tests und einem Oracle für die testgetriebene Entwicklung, leistungskritischen Code dramatisch verbessern können. Die Technik – Einsatz von Agenten zur Neufassung der Kerninfrastruktur bei gleichzeitiger Nutzung automatisierter Diskrepanzerkennung – ist auf andere Projekte übertragbar.
📖 Quelle: HN AI Agents
👀 Siehe auch

Alternative KI-Codierungseinrichtung nach der Preiserhöhung von Claude
Ein Entwickler teilt seine aktuelle KI-Codierungseinrichtung mit GPT 5.4 als primärem Modell, Codex als Backup inklusive im ChatGPT-Abonnement und Minimax 2.7 als zusätzliche Absicherung mit Coding-Plan-Preisen.

Open-Source-Struktur-Halluzinationsprüfer für KI-Agenten-Pipelines
Ein neues Open-Source-Tool bietet vier Unterdrücker, um strukturelle Fehler in KI-Agenten-Pipelines zu erkennen, darunter Grounding-Erzwingung, Prompt-Injection-Erkennung, JSON-Validierung und Tool-Antwort-Verifizierung. Verfügbar als REST-API und MCP-Server mit einem kostenlosen Kontingent von 500 Anfragen/Monat.

Ouroboros fügt PM-Interview-Modus für Claude Code hinzu, um die Spezifikationslücke zu schließen
Ouroboros verfügt jetzt über einen PM-Modus, der vor der Übergabe an Claude Code ein geführtes Interview durchführt und Fragen stellt wie: Welches Problem wird gelöst, für wen ist es gedacht und welche Einschränkungen sind wichtig. Das Ergebnis ist ein PRD/PM-Dokument mit Ziel, User Stories, Einschränkungen, Erfolgskriterien, Annahmen und zurückgestellten Punkten.

Überarbeitung: KI-Editor entwickelt mit agentenbasierten Codierungstools und Y.js CRDT
Revise ist ein KI-Editor für Dokumente, der über 10 Monate hinweg von Grund auf mit agentenbasierten Codierungswerkzeugen entwickelt wurde. Er verfügt über eine eigene Textverarbeitungs-Engine und eine Rendering-Schicht, die nur Y.js für den CRDT-Stack verwendet. Das System integriert mehrere KI-Modelle, darunter GPT-5.4-Varianten und Claude-Modelle, für Korrekturlesen und Überarbeitungen.