Skip to content

docs: commenti inline sul perché in core/induttivo/lambda_space#4

Draft
Type666firewall wants to merge 1 commit into
mainfrom
claude/inline-comments-7a62fz
Draft

docs: commenti inline sul perché in core/induttivo/lambda_space#4
Type666firewall wants to merge 1 commit into
mainfrom
claude/inline-comments-7a62fz

Conversation

@Type666firewall

Copy link
Copy Markdown
Owner

Su richiesta: commentare i file più importanti per leggere meglio il codice — core.py, epsilon.py, lambda_space.py, induttivo.py — con commenti inline solo sul perché, non su cosa fa il codice (già leggibile dai nomi).

Nota onesta: questi quattro file erano già commentati in modo insolitamente denso (docstring di modulo/funzione, rationale delle scelte con tanto di data). Aggiungere spiegazioni ovunque avrebbe prodotto rumore, non chiarezza. Ho cercato i vuoti reali — numeri magici o scelte non ovvie senza motivazione accanto — e ne ho trovati pochi:

  • core.py: perché _to_native esiste (i tipi numpy che filtrano da NLI/embedding non sono JSON-serializzabili); perché il match testuale argomento↔fallacia con finestra +200 (nessun indice condiviso tra Argomento, dalle proposizioni segmentate, e Patologia, dagli span sul testo grezzo — passaggi diversi sulla stessa frase); perché la soglia 0.95 sul warning di bilanciamento Θ/ऋ (euristica, non calibrata — come i pesi di epsilon.py).
  • lambda_space.py: perché frozenset per LAMBDA_RESH (immutabilità: Λ evolve a livello di codice/commit, mai per mutazione a runtime dell'agente); perché _audit_invariants() gira eager a import time (fail-fast: un invariante rotto ferma il modulo subito, non emerge a metà run).
  • induttivo.py: perché lo sconto ×0.8 sulla confidence dei segnali deterministici reinterpretati come hit Trilemma (è un'inferenza su cosa implica un pattern nato per un altro scopo — NON_SEQUITUR/circolarità — non una rilevazione diretta del corno, quindi meno affidabile del match regex diretto); perché arsenale/trilemma restano fuori da da_eseguire (non sono saltati — hanno ciascuno un blocco dedicato più sotto, con payload/feed diversi dal generico).
  • epsilon.py: verificato per intero, non toccato — è già il più commentato dei quattro (ogni peso ha data e motivo della sua ricalibrazione).

Verifica

Zero modifiche di logica: py_compile su tutti e tre + le batterie no-ML esistenti (test_aggregatore, test_postprocess_inclosura, test_persistenza_doc, test_trilemma_predetect) — tutte verdi, comportamento invariato. Diff: solo righe aggiunte (26 righe, 3 file), nessuna riga di codice toccata.

🤖 Generated with Claude Code

https://claude.ai/code/session_016MnNuFahrz482cFEqCEnoq


Generated by Claude Code

Il codice era già densamente commentato sul WHY (docstring di modulo e
funzione, rationale delle scelte di design). Questa passata aggiunge SOLO
i vuoti reali trovati — numeri magici o scelte non ovvie senza motivazione
accanto — senza restatement di ciò che è già spiegato altrove:

- core.py: perché _to_native esiste (numpy leaks non serializzabili),
  perché il match testuale argomento↔fallacia (nessun indice condiviso tra
  Argomento e Patologia, span da passaggi diversi), perché la soglia 0.95
  sul warning di bilanciamento Θ/ऋ (euristica non calibrata).
- lambda_space.py: perché frozenset per LAMBDA_RESH (immutabilità: Λ evolve
  a livello di codice, mai per mutazione a runtime), perché _audit_invariants
  gira eager a import time (fail-fast, non a metà run).
- induttivo.py: perché lo sconto ×0.8 sulla confidence dei segnali
  deterministici reinterpretati come hit Trilemma (inferenza su un pattern
  nato per altro scopo, non rilevazione diretta), perché arsenale/trilemma
  restano fuori da `da_eseguire` (hanno blocchi dedicati, non sono saltati).

epsilon.py verificato ma non toccato: già il più commentato dei quattro.

Zero modifiche di logica — solo commenti, verificato con py_compile e le
batterie no-ML esistenti (tutte verdi, invariate).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016MnNuFahrz482cFEqCEnoq
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants