Jarred Sumner, creatore di Bun (runtime JS/TS, >22M download/mese, acquisito da Anthropic nel dicembre 2025), racconta la riscrittura completa di Bun da Zig a Rust in 11 giorni (3→14 maggio 2026), guidata da Claude. La motivazione è una classe ricorrente di bug — use-after-free, double-free, leak — derivante dal mix di memoria gestita da GC (JavaScriptCore) e memoria manuale (Zig). In Rust sicuro, questi bug diventano errori di compilazione con pulizia automatica (Drop/RAII): "un ciclo di feedback migliore di una guida di stile".

Contro il dogma secondo cui "una riscrittura è sempre una cattiva idea" (un anno di blocco delle correzioni di bug per 3 ingegneri su 535.496 righe di Zig), Sumner opta per un porting meccanico: preservare l'architettura, minimizzare i cambiamenti di comportamento, validare rispetto alla suite di test esistente — scritta in TypeScript, e quindi indipendente dal linguaggio (60.624 test, 1,39M asserzioni, 0 test rimossi, 6 piattaforme).

L'harness: ~50 workflow dinamici in Claude Code, in cicli scrittura → revisione → applicazione, in esecuzione continua. Il blocco costitutivo dell'affidabilità è la revisione avversaria: un secondo Claude, in un contesto separato che vede solo il diff, incaricato di "trovare perché è sbagliato". Rapporto di 1 implementatore / 2+ revisori / 1 correttore; l'implementatore non rivede il proprio lavoro. Individua bug sottili sintatticamente identici ma semanticamente diversi (un Box rilasciato prima di un uv_close asincrono; un unwrap_or eager che va in panic). Principio cardine: "correggere il processo che genera il codice, non il codice a mano" — quando appare un anti-pattern, il prompt/workflow viene modificato.

Preparazione accurata: PORTING.md (mappatura Zig→Rust) e LIFETIMES.tsv (lifetime di ogni campo di struct), una prova su 3 file prima dei 1.448. Poi 4 worktree × 16 = ~64 istanze Claude in parallelo, dopo aver vietato tutte le operazioni git non atomiche. Picco: 1.300 righe/min, 695 commit/h; 6.502 commit, diff +1.009.272 righe, ~16.000 errori di compilazione trattati come una coda (suddivisi in ~100 crate, risolvendo le dipendenze cicliche).

Costo dichiarato: 5,9 miliardi di token di input non in cache + 690M di output ≈ 165.000 $, contro ~3 ingegneri per un anno — "cosa che non avremmo mai fatto". Modello: una pre-release di Claude Fable 5 (classe Mythos). Dopo il merge: 11 round di revisione di sicurezza Claude Code, fuzzing 24/7 (100 miliardi di esecuzioni → ~15 PR), 4% di codice unsafe, 19 regressioni corrette. Prima release: Claude Code v2.1.181, +10% di avvio più veloce su Linux. "Questo è il limite estremo di ciò che è possibile oggi".