EthicLaw — Documento 12 · P0.1
Fase intermedia a scope chiuso: funzionalità del correttore LMH. Questo documento è un indice con stato, non un archivio: i contenuti vivono negli artefatti indicati e nei documenti permanenti. P0 resta archiviato in Doc 10; ciò che P0.1 scopre si propaga a Doc 04/06/07/08/11 secondo le regole esistenti.
Aperto: Sessione 22 · Versione 0.1
1. Scope e non-scope
Dentro: una misura valida dell'efficacia della testa 3.5 in isolamento (prerequisito del Passo 9), con giudice calibrato sull'oggetto. Fuori: efficacia nel regime condizionato (P1), ridisegno del contratto Epistemico→LMH (P1), esperimento Goodhart (Passo 9 vero e proprio, subordinato all'esito di qui), qualunque training nuovo oltre a quanto già esistente.
2. Gate di chiusura di P0.1
P0.1 si chiude quando valgono tutte e tre:
- Codice guardato: finestra di anomalia sui canali normalizzati + budget correzioni con base preservata, suite verde. — FATTO (Sessione 22: 283 verdi, 10 test di proprietà v2).
- Precondizione di calibrazione eseguita (OP 53): AUC per segnale su set annotato, esclusioni registrate. — FATTO (Sessioni 23–24: pool di 230 frammenti, due bracci pre-registrati, sei celle al caso — OP 55; poi ridimensionato il 2026-08-28: potenza < 0,5, «nessuna capacità rilevata»).
- Riesecuzione OP 52 con verdetto valido, in qualunque verso, sui soli segnali sopra soglia. — FATTO in modalità descrittiva, nessun segnale sopra soglia (Sessione 24: testa 3.5 ≡ vettore casuale a pari norma — OP 56).
Il verdetto negativo (bias additivo confermato pulito, previsione A3) chiude P0.1 esattamente come uno positivo: il gate chiede una misura valida, non un esito.
3. Coda operativa con stato
| # | Elemento | Stato | Artefatto |
|---|---|---|---|
| 1 | Guardia di norma (v2: finestra + budget) | Fatto | ethiclaw/modules/lmh.py,
tests/test_guardia_norma.py |
| 2 | Soglia canale epistemico (Regola 5) | Chiuso per rovesciamento — la norma è costruttiva, non esiste soglia da derivare; finestra ±10% depositata (OP 54) | scripts/misura_norma_condizionamento.py |
| 3 | Pre-registrazione riesecuzione (spento, 3 bracci, 3 semi) | Depositata | preregistrazione-riesecuzione-op52.md; Doc 06/10 |
| 4 | Set di calibrazione: generazione | Fatto (Sessione 23: lotto cieco + sonda mirata + ripassata S5 → pool di 230 frammenti) | scripts/genera_set_calibrazione.py,
scripts/genera_sonda_calibrazione.py →
calibrazione/, calibrazione-sonda/,
calibrazione-pool/pool.csv |
| 5 | Annotazione umana lotto 1 | Fatto — esito: nessun segnale calibrabile per campionamento (validi 7–90, violazioni 0–3; S2: 90 validi, 0 violazioni) | calibrazione/annotazione.csv |
| 5b | Sonda di elicitazione mirata (Emendamento 1, regola d'arresto ≥10%) | Fatto — esito: l'elicitazione funziona ma è diffusa; l'assunzione di targeting è refutata dai suoi stessi conteggi off-target (OP 55) | emendamento1-sonda-calibrazione.md,
calibrazione-sonda/ |
| 6 | Script di calcolo calibrazione (accordo, AUC, esclusioni) | Fatto | scripts/auc_calibrazione.py →
risultati/auc-calibrazione.json |
| 7 | Script riesecuzione (3 bracci, trail come asserzione) | Fatto | scripts/riesecuzione_op52.py (adatta
scripts/efficacia_op15.py) |
| 8 | Run riesecuzione + registrazione esito | Fatto — OP 55 (calibrazione: sei celle al caso; ridimensionato 2026-08-28) e OP 56 (riesecuzione descrittiva: nessuna direzione appresa), Sessioni 23–24 | risultati/auc-calibrazione.json,
risultati/riesecuzione-op52.json; Doc 06 OP 55–56 |
| 9 | git init + primo commit |
Fatto — 2026-09-17, commit 56240fc
(264 file, .pt esclusi) |
~/ethiclaw/.git |
| 10 | Manifest versionato (hash checkpoint + dataset al dataloader) | Fatto in avanti — ogni lotto dal Passo 1 porta manifest con hash del checkpoint; il pool P0.1 resta ricostruito da codice (Doc 10, nota di provenienza) | passo1/manifest.json,
pra/manifest.json |
4. Rischi propri di P0.1
- Segnali non calibrabili a questa scala (classi sotto minimo): esito dichiarato nel protocollo, non un blocco — ma se tutti i segnali risultano non calibrabili, la riesecuzione non ha verdetto possibile e P0.1 si chiude con quel risultato, propagato a Doc 08 §4.3 come vincolo sul disegno P1.
- Auto-annotazione: annotatore unico = ricercatore; mitigazioni nel protocollo (cecità, un passaggio, duplicati con soglia d'accordo 8/10). Limite da dichiarare in Paper 1.
- Deriva di scope: ogni proposta che non serve al gate §2 va in coda P1, non qui.
Manutenzione: solo la tabella §3 e questo footer si aggiornano; le scoperte vanno nei documenti permanenti. Chiusura: alla terza condizione del gate, questo documento riceve una riga finale con l'esito e si archivia.
Chiusura (Sessioni 23–24; riga registrata in ritardo il 2026-09-18 — la chiusura era finora registrata solo in Doc 06 e Doc 10): le tre condizioni del gate §2 sono soddisfatte. (1) Codice guardato — fatto (283 verdi). (2) Precondizione di calibrazione OP 53 eseguita — pool di 230 frammenti generati, annotazione umana in tre atti, due bracci pre-registrati prima di ogni punteggio: AUC al caso su tutti i segnali calibrabili, nessun giudice — Etico modulare o monolite 341M — discrimina il testo generato a questa scala (OP 55). (3) Riesecuzione OP 52 con verdetto valido, in modalità descrittiva: la testa 3.5 in isolamento è indistinguibile da un vettore casuale a pari norma (OP 56). P0.1 si chiude; il prerequisito del Passo 9 è chiuso in negativo con misura valida.
Dated pointer (2026-08-29; applied 2026-09-18): closure text reflects the Session 24 verdict as issued; the OP 55 amendment (2026-08-28) withdraws "class-level failure, with proof" — status: no capability detected, power-limited, gold unstable at the NA↔︎violation boundary. The P1 activation line below is re-qualified per A1.8.3.
Attivato per P1: training dell'Etico su testo generato annotato da umani (Doc 07, ruolo 4; Doc 08 §4.3) — linea prudenziale e fallback del ramo Flat, non conseguenza necessaria di un fallimento di classe dimostrato (A1.8.3). Documento archiviato.