- revise.py: automatic pre-processing (ALL-CAPS→##, numbered sections→###, TOC removal, broken paragraph merging, whitespace normalization); supports N. and Na. numbering patterns; universal heuristics - .claude/commands/step4-review.md: Claude Code skill for qualitative review of clean.md (🔴/🟡/🟢 report + interactive fixes) - README: document step-4 workflow with revise.py and /step4-review - .gitignore: exclude step-4/*/ and step-4/revision_log.md
2.4 KiB
description, allowed-tools, argument-hint
| description | allowed-tools | argument-hint |
|---|---|---|
| Revisione qualitativa del clean.md dopo il pre-processing automatico (step 4). Trova artefatti residui, paragrafi spezzati e header errati, poi propone le correzioni. | Read Bash Grep Edit | <stem> |
Esegui la revisione qualitativa di step-4/$ARGUMENTS/clean.md.
Profilo struttura:
!cat step-4/$ARGUMENTS/structure_profile.json 2>/dev/null || echo "ERRORE: step-4/$ARGUMENTS/structure_profile.json non trovato — verifica che lo stem sia corretto"
Statistiche file:
!wc -l step-4/$ARGUMENTS/clean.md 2>/dev/null && grep -c "^## " step-4/$ARGUMENTS/clean.md 2>/dev/null | xargs -I{} echo "## headers: {}" && grep -c "^### " step-4/$ARGUMENTS/clean.md 2>/dev/null | xargs -I{} echo "### headers: {}"
Analizza step-4/$ARGUMENTS/clean.md seguendo questi passi. Usa Grep e Read per raccogliere i casi concreti prima di riportarli.
Passo 1 — Righe orfane in corpo testo
Cerca blocchi di testo standalone (separati da righe vuote, non header #) più corti di 80 caratteri che sembrino artefatti da PDF:
- Firme o nomi di persone isolati (tutto maiuscolo o iniziali maiuscole seguite da punto)
- Date o luoghi isolati
- Titoli del documento ripetuti nel corpo
- Numeri di pagina isolati
- Riferimenti bibliografici fuori contesto
Per ogni caso trovato: riporta numero di riga e testo.
Passo 2 — Paragrafi spezzati residui
Cerca paragrafi che finiscono senza punteggiatura di fine frase (.?!»)), escludendo quelli che terminano con - (interruzione stilistica intenzionale).
Riporta i primi 5 casi con numero di riga e la fine del testo.
Passo 3 — Header sospetti
Controlla i ## e ###:
### N.con solo numero e punto → corretto, non segnalare##o###con contenuto ALL-CAPS non convertito in sentence-case → segnalare##o###duplicati (stesso titolo che appare due volte) → segnalare##con testo molto lungo (> 80 char) → segnalare come sospetto
Passo 4 — Sezioni quasi vuote
Cerca ### header seguiti da un blocco di testo inferiore a 60 caratteri (sezione priva di contenuto utile per il RAG). Riporta i casi.
Report finale
🔴 BLOCCANTI (compromettono il chunking o la qualità del RAG)
...
🟡 MINORI (artefatti visibili ma non bloccanti)
...
🟢 OK
...
Chiedi all'utente: "Vuoi che applichi le correzioni per i problemi 🔴? E per i 🟡?" Applica solo le correzioni esplicitamente approvate.