Vai al contenuto

root / tags / adversarial-review

#adversarial review

2 fiches

Agenti di codifica IA e Skills Traduzione verificata automaticamente

Rewriting Bun in Rust

Resoconto tecnico di prim'ordine di **Jarred Sumner**, creatore di **Bun** (runtime JS/TS, >22M download/mese), sulla **riscrittura completa di Bun da Zig a Rust in 11 giorni** (3→14 maggio 2026) guidata da **Claude** — un caso di studio eccezionale di ingegneria del software assistita dall'IA **su scala industriale**. 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". Rifiutando il dogma secondo cui "una riscrittura è sempre una cattiva idea" (un anno di blocco delle correzioni di bug per 3 ingegneri), Sumner sceglie un **porting meccanico** (preservare l'architettura, cambiamento minimo del comportamento) validato dalla **suite di test esistente, scritta in TypeScript e quindi indipendente dal linguaggio** (60.624 test, 1,39M asserzioni `expect()`, 0 test rimossi, 6 piattaforme). L'harness: **~50 workflow dinamici** in **Claude Code**, cicli *scrittura → 2+ revisori avversari → applicazione*, fino a **64 istanze Claude in parallelo** (4 worktree × 16), con **PORTING.md** + **LIFETIMES.tsv** generati in preparazione. Numeri: **6.502 commit** (picco 695/h, 58/min, ~1.300 righe/min), diff finale **+1.009.272 righe**, ~16.000 errori di compilazione trattati come una coda, **5,9 miliardi di token di input non in cache + 690M di output ≈ 165.000 $**. Leve metodologiche chiave: la **revisione avversaria** (un secondo Claude, contesto separato, vede solo il diff, incaricato di trovare perché è sbagliato — individua bug sottili che sono *semanticamente* diversi ma *sintatticamente* identici) e il principio **"correggere il processo che genera il codice, non il codice a mano".** Modello utilizzato: una pre-release di **Claude Fable 5** (classe Mythos). Dopo il merge: **11 round di revisione di sicurezza Claude Code**, fuzzing guidato dalla copertura 24/7 (100 miliardi di esecuzioni → ~15 PR), **4% di codice `unsafe`** (78% su una singola riga), **19** regressioni note corrette. In produzione: Claude Code v2.1.181, la prima release su Bun-in-Rust, **+10% di avvio più veloce su Linux**. Dichiarato in apertura: **Bun è stato acquisito da Anthropic nel dicembre 2025**.

#Bun#Jarred Sumner#riscrittura da Zig a Rust

Jarred Sumner (créateur de Bun ; travaille chez Anthropic depuis le rachat de Bun en décembre 2025)

Agenti di codifica IA e Skills Traduzione verificata automaticamente

Lessons from building Claude Code: How we use skills

Post del blog di **Anthropic / claude.com** di **Thariq Shihipar** (Member of Technical Staff, team Claude Code), pubblicato il **3 giugno 2026**, che sintetizza l'**esperienza interna** di Anthropic nella progettazione e nell'uso delle **Skills**. **Tesi di inquadramento**: una Skill non è un semplice file markdown ma una **cartella** (istruzioni + script + risorse + configurazione + hook) che l'agente **esplora e manipola**; *« You should think of the entire file system as a form of context engineering and progressive disclosure. »* L'articolo apporta due contributi strutturanti. **(A) Una tassonomia di 9 categorie di skill** osservate in Anthropic: (1) **Library/API Reference** (documentazione per librerie/CLI interne con *gotchas* — es. `billing-lib`, `internal-platform-cli`, `sandbox-proxy`); (2) **Product Verification** (test/verifica tramite Playwright o tmux — `signup-flow-driver`, `checkout-verifier`, `tmux-cli-driver`); (3) **Data Fetching & Analysis** (accesso a stack di dati/monitoraggio — `funnel-query`, `cohort-compare`, `grafana`, `datadog`); (4) **Business Process Automation** (workflow ripetitivi — `standup-post`, `weekly-recap`, `create-<ticket>-ticket`); (5) **Code Scaffolding** (boilerplate di framework — `new-migration`, `create-app`); (6) **Code Quality & Review** (`adversarial-review`, `code-style`, `testing-practices`); (7) **CI/CD & Deployment** (`babysit-pr`, `deploy-<service>`, `cherry-pick-prod`); (8) **Runbooks** (diagnostica multi-tool — `<service>-debugging`, `oncall-runner`, `log-correlator`); (9) **Infrastructure Operations** (manutenzione con guardrail — `<resource>-orphans`, `cost-investigation`). **(B) Un insieme di best practice**: non ripetere l'ovvio (*« Claude already knows how to code and can read your codebase »* → puntare su ciò che **contraddice il comportamento predefinito**); curare la **sezione Gotchas** (*« the highest-signal content in any skill »*); **progressive disclosure** tramite l'albero dei file (indirizzare verso file di riferimento a seconda della situazione anziché caricare tutto in anticipo); **descrizioni scritte per il modello** (*« the description field is not a summary, it's a description of when to trigger this skill »*); **flussi di setup** (configurazione in `config.json`, altrimenti richiesta tramite `AskUserQuestion`); **memoria persistente** (log append-only / JSON tramite la variabile `${CLAUDE_PLUGIN_DATA}`); **script helper** (*« lets Claude spend its turns on composition… rather than reconstructing boilerplate »*); **hooks conditionnels** (attivati solo per la durata della skill — es. un hook di sicurezza che blocca comandi distruttivi). **Distribuzione in Anthropic**: le skill sono conservate in `./.claude/skills`, condivise informalmente via Slack in una cartella sandbox, poi promosse tramite **PR** nel **marketplace** interno una volta acquisita trazione; **misurazione dell'utilizzo** tramite un **hook PreToolUse** che registra le invocazioni (rivelando le skill popolari rispetto a quelle sottoutilizzate). Seguito diretto della fiche [[shihipar-claude-code-html-unreasonable-effectiveness-markdown-2026-05-10]] (stesso autore) e complemento concreto alle fiche sulle Skills di Anthropic/Willison/Vincent e all'*harness engineering*.

#skills#Claude Code#Anthropic

**Thariq Shihipar** (Member of Technical Staff chez Anthropic, équipe **Claude Code** ; @trq212 / @trq sur X, thariqs.github.io) · pour le blog **claude.com**. Même auteur que la fiche *Using Claude Code: The Unreasonable Effectiveness of HTML* (2026-05-10). Publié le **3 juin 2026**.