Codeflash-Analyse: 118 Performance-Bugs in zwei von Claude Code verfassten PRs gefunden

✍️ OpenClawRadar📅 Veröffentlicht: 28. Februar 2026🔗 Source
Codeflash-Analyse: 118 Performance-Bugs in zwei von Claude Code verfassten PRs gefunden
Ad

Leistungsanalyse von KI-generiertem Code

Codeflash nutzte ihr eigenes Optimierungstool, um zwei Pull Requests zu analysieren, die mit Claude Code geschrieben wurden. Die analysierten Funktionen waren Java-Sprachunterstützung (52.000 Zeilen über Parser, Kontextextraktoren, Instrumentierung, Testläufer, Assertion-Transformatoren) und React-Framework-Unterstützung (24.000 Zeilen zur Komponentenerkennung, Profilerstellung, Benchmarking und Code-Ersetzung).

Wichtige Erkenntnisse

Allein in diesen beiden PRs identifizierte Codeflash 118 Funktionen, die deutlich schlechter als nötig abschnitten. Dies waren keine Randfälle – es handelte sich um Funktionen im Hot Path ihres Optimierers, die bei jedem Optimierungsjob für jeden Nutzer liefen.

Muster der Ineffizienz

  • Katastrophal ineffiziente Algorithmen: Eine Typenextraktionsfunktion im Java-Kontextmodul war 446-mal langsamer als nötig, implementiert mit naivem String-Scanning anstatt baumbasierter Extraktion. Eine Helferfunktion zur Funktionssuche war aus ähnlichen Gründen 74-mal langsamer.
  • Redundante Berechnungen: Funktionen analysierten bereits geparste Daten erneut, durchliefen bereits traversierte Bäume erneut, bauten Strings Zeichen für Zeichen wieder auf. Ein Assertion-Target-Call-Builder war 19-mal langsamer, weil er bei jedem Aufruf Byte-Konvertierungen neu berechnete statt zu cachen. Ein Import-Einfügungs-Tool im React-PR war aufgrund redundanter Baumtraversierungen 36-mal langsamer.
  • Fehlende Zwischenspeicherung: Funktionen, die wiederholt mit denselben Eingaben aufgerufen wurden, berechneten Ergebnisse jedes Mal von Grund auf neu. Ein Typdefinitionsextraktor im React-PR war ohne Memoisierung von Zwischenergebnissen 16-mal langsamer, und ein Export-Checker aus demselben Grund 9-mal langsamer.
  • Suboptimale Datenstrukturen: Listen, wo Sets geeigneter wären, lineare Suchen, wo Hash-Lookups funktionieren würden, String-Verkettungen in Schleifen anstatt Joins. Ein Klammern-Balancierungs-Parser war aufgrund ineffizienter Datenstrukturauswahl 3-mal langsamer.
Ad

Konkretes Beispiel: 19-fache Leistungssteigerung

Claude Code schrieb diese Funktion zur Konvertierung von Byte-Offsets in Zeichenpositionen:

# Called for every AST node found in the file
start_char = len(content_bytes[:start_byte].decode("utf8"))
end_char = len(content_bytes[:end_byte].decode("utf8"))

Codeflash ersetzte sie durch:

# Build a lookup table once, then binary search for every node
from bisect import bisect_right
cum_bytes = [0]
for ch in source.decode("utf8"):
    cum_bytes.append(cum_bytes[-1] + len(ch.encode("utf8")))
start_char = bisect_right(cum_bytes, start_byte) - 1
end_char = bisect_right(cum_bytes, end_byte) - 1

Der ursprüngliche Code dekodiert bei jedem Aufruf das gesamte Byte-Präfix vom Dateianfang – O(n) pro Lookup. Bei einer Datei mit Hunderten von AST-Knoten bedeutet dies, dieselben Bytes hunderte Male neu zu dekodieren. Die optimierte Version baut einmal eine Lookup-Tabelle auf und nutzt binäre Suche – O(n) einmal, dann O(log n) pro Lookup.

Der Artikel betont, dass es nicht darum geht, ob KI-Coding-Agenten genutzt werden sollten (sie empfehlen deren Nutzung), sondern was mit dem Code danach passiert. Diese Leistungsprobleme stellen eine neue Kategorie von technischer Schuld dar, die KI-Agenten systematisch einführen, indem sie sich auf Korrektheit und Lesbarkeit konzentrieren statt auf Leistungsoptimierung.

📖 Read the full source: HN AI Agents

Ad

👀 Siehe auch

Aufbau eines agentischen RAG für Obsidian mit Claude und einer Evaluierungsumgebung zur Erkennung von Halluzinationen
Werkzeuge

Aufbau eines agentischen RAG für Obsidian mit Claude und einer Evaluierungsumgebung zur Erkennung von Halluzinationen

Ein Entwickler baute ein agentisches RAG-System über einem Obsidian-Vault, damit Claude Fragen aus Ingenieurbüchern beantworten kann, und erstellte dann ein Evaluierungs-Tool mit Claude Sonnet als Richter, um zu erkennen, wann der Agent zuversichtlich falsch lag. Rubrik-Iterationen verbesserten die Übereinstimmung zwischen Richter und Mensch von 39 % auf 94 %.

OpenClawRadar
Event Horizon VS Code-Erweiterung fügt Dateisperren und Planabstimmung für mehrere KI-Agenten hinzu
Werkzeuge

Event Horizon VS Code-Erweiterung fügt Dateisperren und Planabstimmung für mehrere KI-Agenten hinzu

Event Horizon, eine VS Code-Erweiterung, die ursprünglich zur Visualisierung von Claude Code entwickelt wurde, bietet nun Dateisperren und Planungskoordination, um zu verhindern, dass mehrere KI-Agenten die Arbeit des anderen in derselben Codebasis überschreiben. Das Tool unterstützt Claude Code, OpenCode und Copilot mit Ein-Klick-Einrichtung.

OpenClawRadar
Claude Design Artifacts mit Teenyapp auf Live-Websites bereitstellen
Werkzeuge

Claude Design Artifacts mit Teenyapp auf Live-Websites bereitstellen

Teenyapp bietet einen Hosting-Dienst, den Claude Design direkt über einen Agent-Token-Link aus dem Chat nutzen kann, was eine autonome Bereitstellung von Artifakten mit Backend-Unterstützung ermöglicht.

OpenClawRadar
ClamBot: KI-Agent führt LLM-generierten Code in WASM-Sandbox für Sicherheit aus
Werkzeuge

ClamBot: KI-Agent führt LLM-generierten Code in WASM-Sandbox für Sicherheit aus

ClamBot ist ein KI-Agenten-Framework, das allen von LLM generierten Code in einer WebAssembly-Sandbox mit QuickJS in Wasmtime ausführt, wodurch exec()- oder Subprozess-Aufrufe überflüssig werden. Es umfasst eine Genehmigungsschleuse für Tool-Aufrufe, persistentes Script-Caching als 'Clams' und unterstützt mehrere LLM-Anbieter.

OpenClawRadar