Test e limiti della skill per LLM.

Gli eval servono a trovare regressioni e falsi positivi. Non trasformano un giudizio linguistico in una certezza matematica.

Schema artefatti 469 casi dev6 casi held-out

Che cosa misuriamo

Un buon risultato non coincide con il maggior numero di modifiche. La suite comprende casi da migliorare e testi da lasciare invariati.

  • assenza di fatti, numeri, citazioni ed entità inventate;
  • conservazione di polarità, modalità, causalità, condizioni ed eccezioni;
  • riduzione dei tic quando sono davvero presenti;
  • correttezza grammaticale e rispetto del registro;
  • assenza di over-editing su prosa già buona e testo funzionale.

Un testo può essere più elegante e fallire lo stesso, se trasforma un “potrebbe” in un “è” o aggiunge una causa non presente.

Prove con modelli diversi

Le istruzioni della skill sono utilizzabili con diversi LLM; i risultati dipendono dal modello e dal modo in cui l'interfaccia fornisce istruzioni e riferimenti. Le prove storiche sotto usano Claude. Nel settembre 2026 abbiamo eseguito anche prove con GPT Terra 5.6, Sol 6 e Luna 6, con ruoli e risultati separati.

Nel controllo finale mirato, Sol ha ottenuto 18 risposte conformi su 22 secondo il giudice automatico. La rilettura dell'assistente conserva quattro output non conformi. Queste prove non sono una valutazione umana indipendente e non misurano Qwen, DeepSeek o tutti gli altri LLM. Protocollo, output e limiti delle prove GPT.

Struttura della suite

SplitCasiUso
Dev69Casi osservati durante lo sviluppo. Servono a verificare il comportamento noto.
Held-out6Set corrente: #14, #16, #31, #32, #33 e #46. Il #46 ha sostituito il #15 il 29 luglio 2026, dopo che il #15 era stato usato per tarare la guardia sul testo operativo.

Il manifest assegna a ogni caso un genere, uno split e un livello di conservazione: exact, minimal, semantic, improve, mixed o advice.

Apri il manifest e la suite canonica.

Runner fail-closed

Per ogni caso, il runner inietta la skill, salva la risposta dell'editor e chiede a un secondo modello di valutarla. Dalla 2.19.1 distingue textOk (fedeltà e livello di intervento) da responseOk (note, consulenza e formato). Per passare devono essere veri entrambi, insieme a tutte le aspettative, senza contenuti inventati.

Il contratto del giudice ha una propria impronta SHA-256. I risultati storici riportati sotto usavano il criterio precedente, che contava anche spiegazioni editoriali corrette come invenzioni: non sono confrontabili con i nuovi pass rate senza rigiudicare entrambi i bracci con lo stesso contratto.

Ogni esecuzione conserva

  • copie della skill, della suite e del manifest usati;
  • SHA-256 dei contenuti, separati dallo stato Git;
  • prompt, output, aspettative e risposta grezza del giudice;
  • modelli, versioni degli strumenti e durata;
  • verdetto ricalcolato e numero di invenzioni rilevate.

Che cosa significa fail-closed

Un tipo permissivo, una cardinalità errata o un verdetto incompleto non diventano un passaggio. Il runner segnala l'errore. Resta comunque dipendente dalla qualità delle aspettative dichiarate.

Riferimenti 2.14.0 e 2.15.x

La misura di riferimento (luglio 2026) osserva ogni caso tre volte per braccio, con la stessa suite e lo stesso giudice: modello senza skill contro skill 2.15.1. Editor Sonnet, giudice Opus.

Su 3 run per casoSenza skillCon skill 2.15.1
Passaggi per run (verdetti validi)16–20 su 2726–27 su 27
Invenzioni totali91
Casi dall'esito instabile8 su 271 su 27

Risultato osservato

La skill non alza soltanto la media (18,0 contro 26,7): stabilizza il comportamento. Senza skill il modello oscilla su 8 casi e inventa sotto pressione; con la skill il verdetto è quasi deterministico. Le righe perse per limiti di sessione o giudice malformato restano errori dichiarati, mai promossi a passaggi.

La misura storica a quattro bracci (nucleo, skill completa, candidata; una osservazione per caso, prima delle ricalibrazioni del giudice) resta negli artefatti 2.14.0. Il vecchio set held-out produsse 5 su 6 al primo giro e 6 su 6 al gate, ma includeva il #15: quel caso motivò una modifica della guardia e da allora vale come regressione, non come prova di generalizzazione. Sui cinque casi storici non contaminati l'esito del gate fu 5 su 5; il nuovo #46 non è ancora stato misurato. Nell'instradamento su tre giri, a skill attiva il riferimento atteso viene aperto in 14 righe valide su 14; a oscillare è l'attivazione dei due prompt di confine (2 su 3 e 1 su 3).

Esamina gli artefatti di riferimento

Come leggere i risultati

  • Un giro pulito non prova la generalizzazione. È un segnale su pochi casi pubblici, con una sola osservazione per cella.
  • Il giudice è un LLM. Può essere incoerente, indulgente o troppo severo.
  • Le aspettative definiscono il passaggio. Un comportamento non previsto può sfuggire al ricalcolo.
  • Gli output non sono deterministici. Servono più run per stimare la stabilità.
  • La naturalezza richiede persone. Il confronto cieco umano resta necessario per le qualità fini.

Per questo il progetto parla di risultato osservato e non di accuratezza complessiva della skill.

Riprodurre un run

Servono Node, il CLI claude autenticato e accesso ai modelli configurati.

node evals/run.mjs --validate-only
node evals/run.mjs --split held-out --label nuovo-heldout

I run ordinari restano ignorati da Git. Per una release si versionano soltanto gli artefatti scelti, insieme a una nota sui limiti.

Documentazione completa del runner.