Guida alla Pulizia e Manutenzione del Repository
Questa guida definisce i parametri rigorosi che l’Intelligenza Artificiale (e qualsiasi sviluppatore) deve seguire quando le viene richiesto di “pulire” o “riorganizzare” il codice e i file all’interno del progetto ColivingLiguria (CL).
L’obiettivo è mantenere un ambiente di lavoro snello, organizzato, privo di duplicati e strutturato in modo logico.
1. Eliminazione di File Obsoleti e Inutili
Quando viene richiesta una pulizia, l’AI deve:
- Identificare e rimuovere file di test o script di debug temporanei (es.
test_*.py,*.lognon necessari, vecchi file.txtusati per appunti). - Rimuovere versioni legacy o vecchie di file che sono stati completamente sostituiti da nuove versioni (es. vecchi file TS/JS, vecchi script Bash non piĂą in uso).
- Attenzione: Se c’è la sicurezza matematica che un file sia inutile e non referenziato da nessun’altra parte, deve essere eliminato completamente. Non va semplicemente spostato in una cartella “archive” a meno che non sia specificatamente richiesto.
2. Riorganizzazione Logica e Gerarchica
I file non devono essere lasciati “liberi” (sfusi) nelle root direttrici se non strettamente necessario (come i file di configurazione base, es. package.json).
- Raggruppamento per pertinenza: Ogni file deve risiedere nella cartella del suo contesto specifico (es. script di amministrazione in
Admin_CL/scripts, contratti legali inLaTeX_CL/Legal/Contracts). - Nessuna cartella doppia o ridondante: Disambiguare le cartelle simili. Se esistono due cartelle che servono allo stesso scopo (es.
componentseui_components), unire il contenuto e rimuovere il clone. - Separazione Frontend/Backend: Se si tratta di un’applicazione o di un programma (come la Sync Dashboard), il codice deve essere diviso rigorosamente in cartelle
frontend/ebackend/. Nessun file di backend (Python, DB) deve trovarsi nella cartella del frontend (React/Vite) e viceversa.
3. Gestione Sicura dei Collegamenti (Link Integrity)
La riorganizzazione non deve MAI corrompere il sistema.
- Durante lo spostamento o la rinominazione di file o cartelle, l’AI deve sempre cercare (
grep) e aggiornare tutti i collegamenti, import, o path relativi all’interno dell’intero progetto che puntano al file appena spostato. - Regola fissa: Alla fine di ogni massiccia pulizia o spostamento strutturale, l’AI deve testare il programma (es. eseguire il server di sviluppo, avviare il tool di build) per confermare che non sia “esploso” nulla.
4. Gestione Specifica dei File LaTeX (LaTeX_CL)
Il workflow di compilazione PDF tramite LaTeX genera molti file di scarto che sporcano le directory.
- Pulizia dei file di log della compilazione: Tutti i file ausiliari (
.aux,.log,.out,.toc,.fls,.fdb_latexmk,.synctex.gz) devono essere sempre rimossi al termine di una compilazione avvenuta con successo. - Nessun PDF finale tra i sorgenti: I file PDF finali (
.pdf) che risultano dalla compilazione NON devono risiedere nella stessa cartella dei file.texsorgente da cui sono stati generati. - Destinazione dei PDF compilati: I PDF compilati per test manuali devono essere spostati direttamente sul Desktop dell’utente. Se compilati durante routine automatizzate (come
CL-sync), gestirli tramite il normale flusso temporaneo. - Eccezione: I PDF che fungono da input per il LaTeX (es. loghi aziendali in PDF, firme scansionate incluse tramite
\includegraphics) DEVONO ovviamente rimanere nelle loro cartelle (System/pre/data/...).
🚀 Check Coda di Pulizia
Quando un umano ordina all’AI: “Pulisci il repository secondo le regole”, l’AI applicherà questa checklist:
- Ricerca ed eliminazione script/log obsoleti.
- Raggruppamento dei file vaganti in cartelle pertinenti.
- Verifica netta separazione Frontend/Backend per le app.
- Rimozione di PDF di output e file ausiliari (
.aux,.log) dalle cartelle LaTeX (spostando i PDF sul Desktop per revisione). - Aggiornamento globale dei path/link eventualmente rotti.
- Test finale di funzionamento (compilazione Web o backend).