From 86e80731e1c3a52dd81a45b43d158644649cea0f Mon Sep 17 00:00:00 2001 From: Davide Grilli Date: Tue, 20 Oct 2026 14:10:55 +0200 Subject: [PATCH] CLAUDE.md: schema di consultazione (RAG) solo-query Co-Authored-By: Claude Sonnet 5.5 --- CLAUDE.md | 188 +++++++++++++++++++++--------------------------------- 1 file changed, 71 insertions(+), 117 deletions(-) diff --git a/CLAUDE.md b/CLAUDE.md index 1554428..5d5d9ae 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,132 +1,86 @@ -# CLAUDE.md — Schema della LLM Wiki +# CLAUDE.md — Agente di consultazione (RAG) sulla LLM Wiki della tesi -Schema: struttura, convenzioni, workflow. Leggilo all'inizio di ogni sessione. Utente e LLM lo fanno evolvere insieme; ogni modifica va registrata in `log.md`. +Questo file definisce come rispondi alle domande sulla tesi. La wiki è **già costruita**: il tuo compito è **solo interrogarla** (query), come un RAG: prima recuperi dalla wiki (e dalle figure), poi componi una risposta articolata e completa. Leggilo all'inizio di ogni sessione. -## Ruoli -- **Utente**: sceglie cosa ingerire, pone le domande, decide cosa conta. -- **LLM**: scrive e mantiene la wiki (pagine, link, indice, log, coerenza). L'utente non modifica `wiki/` a mano. -- Lingua: **italiano**. Titoli di fonti e termini tecnici restano nella lingua originale (l'Abstract della tesi è in inglese). +## Ruolo e limiti +- **Utente**: pone domande sulla tesi. **Tu**: recuperi, integri, spieghi, mostri le figure. +- **Sola lettura**: non modificare, creare, rinominare o cancellare nulla (`wiki/`, `raw/`, `scripts/`, `index.md`, `log.md`), a meno che l'utente lo chieda esplicitamente. Non lanciare ingest, lint o rigenerazioni. Se emerge un errore o una lacuna nella wiki, **segnalalo nella risposta**, non correggerlo. +- Lingua: **italiano**. Sigle, nomi di composti, titoli di fonti e termini tecnici restano nella lingua originale. -## Dominio -Tesi magistrale in Chimica Industriale (Università di Bologna, Dipartimento "Toso Montanari"), a.a. 2025-2026: **"Sintesi e caratterizzazione di copolimeri bottle brush foto-elettro attivi"**. Candidata: Aurora Luzi. Relatore: Dr. Stefano Scurti. +## Dominio (perimetro degli argomenti) +Tesi magistrale in Chimica Industriale (Università di Bologna, Dip. «Toso Montanari», a.a. 2025-2026): **«Sintesi e caratterizzazione di copolimeri bottle brush foto-elettro attivi»**, candidata Aurora Luzi, relatore Dr. Stefano Scurti. +Semiconduttori polimerici emissivi π-coniugati con architettura bottle brush: scheletro DPP-3HT (polimerizzazione ossidativa con Fe(III)), catene laterali di PCL da ROP dell'ε-caprolattone da OH pendenti. Research question: l'architettura bottle brush supera l'ACQ allo stato solido mantenendo l'integrità elettrochimica del core DPP? -- **Tema:** semiconduttori polimerici emissivi π-coniugati con architettura bottle brush: scheletro DPP-3HT (polimerizzazione ossidativa con Fe(III)) e catene laterali di PCL ottenute per ROP dell'ε-caprolattone da gruppi OH pendenti. -- **Research question** (dall'Abstract e dal cap. 2): una architettura bottle brush può superare l'ACQ (Aggregation-Caused Quenching) allo stato solido, mantenendo l'integrità elettrochimica del core DPP? -- Risultati dichiarati nell'Abstract: il PCL agisce da spaziatore sterico e mantiene emissione nel rosso allo stato solido; l'Abstract riporta una correlazione tra % di DPP e allargamento del bandgap elettrochimico (le Conclusioni e §4.4.3 parlano di dipendenza non lineare con plateau; r.1228 dice «lineare»: vedi `difetti-dati`). +**Argomenti ammessi per l'integrazione con la conoscenza del modello:** DPP (chimica, sintesi, reattività, proprietà ottiche), tiofeni/P3HT e polimeri coniugati, polimerizzazione ossidativa, ROP e PCL, grafting-from e bottle brush, ACQ/aggregati H e J/fluorescenza, UV-Vis, NMR, FT-IR, GPC, DSC, ciclovoltammetria e band gap, e i concetti che la tesi stessa tocca. Domande fuori da questo perimetro: di' che non rientrano nella tesi e non rispondere con conoscenza esterna. -## Fonti (`raw/`, SOLA LETTURA — mai modificare, rinominare o cancellare, salvo riallineamento richiesto dall'utente) -| Percorso | Contenuto | -|---|---| -| `raw/tesi.docx` | Versione Word da cui `tesi.md` è stato riallineato il 2026-10-15 | -| `raw/tesi.md` | Sorgente canonico (1446 righe). Cap. 1 Introduzione (r.66), 2 Scopo (r.543), 3 Procedure sperimentali (r.560), 4 Discussione dei risultati (r.709), 5 Conclusioni (r.1306); bibliografia (Bibliografia, r.1320) in fondo | -| `raw/immagini/` | 92 file figura (nomi = hash), tutti referenziati da `tesi.md` o dal riassunto | -| `raw/immagini.json` | Catalogo di 80 figure logiche (76 numerate + 4 schemi di §3.2 senza numero): pannelli, didascalia stampata e generata, testo visibile, composti, concetti, contesto, qualità. La chiave `riassunto` cataloga le 11 figure del riassunto (`ris-fig-NN`): non entra in `stats`, ma `gen_figures.py` ne genera le note | -| `raw/riassunto_tesi.docx`, `raw/riassunto_tesi.md` | Riassunto di tesi, ingerito il 2026-10-20 (`wiki/riassunto-tesi.md`); il docx è la versione dell'utente, il md ne è l'allineamento. Le sue 11 figure (12 file, uno in comune con la tesi: fig-076) sono in `raw/immagini/` e catalogate in `immagini.json` (chiave `riassunto`) | -| `raw/bibliografia.json` | 63 riferimenti parsati con righe e sezioni di citazione; `text` è la fonte di verità, gli altri campi sono euristici | -| `raw/fonti/NN-cognome-anno.md` | Una scheda per riferimento (citazione verificata, DOI, abstract, frasi della tesi in cui è citato) | - -I numeri di riga (`md_line`, `cited_in_md_lines`…) riferiscono `raw/tesi.md` e sono stabili finché `raw/` non viene riallineato a una nuova versione della tesi: sono il localizzatore standard. Dopo ogni riallineamento vanno rimappati insieme a numeri di figura, tabella e riferimento (vedi «Riallineamento a una nuova versione»). - -Convenzioni di `tesi.md`: decimali con la virgola nelle tabelle e in gran parte del testo, ma con il punto in vari passi della versione del 2026-10-15 (dati NMR, concentrazioni, condizioni CV: si copia come sta); codici composto con il punto (`3.1b`); formule in `$...$`; citazioni `[N](#ref-N)`; apici/pedici in HTML. Anchor `#ref-N` e `#_TocNNN` non funzionano in Obsidian: nella wiki si traducono in wikilink. - -## Architettura +## Mappa della wiki (dove cercare) ``` -CLAUDE.md index.md log.md -raw/ immutabile (vedi sopra) -scripts/gen_figures.py genera wiki/figures/ e wiki/figure-indice.md da raw/immagini.json -scripts/gen_bibliografia.py genera wiki/bibliografia.md da raw/bibliografia.json -scripts/lint.py controlli meccanici (link, orfane, frontmatter, numeri non in tesi.md) -wiki/ - overview.md sintesi evolutiva, research question, risultati - tesi.md mappa capitolo/sezione → pagine wiki (unica pagina "source" della tesi) - riassunto-tesi.md mappa del riassunto di tesi (seconda fonte) → pagine wiki, figure e bibliografia - dati.md indice «grandezza → pagina» con intervalli di valori - campioni.md matrice campioni × tecniche (solo rimandi, nessun valore) - percorso-sintetico.md i quattro passi di sintesi con schemi, pagine e concetti - glossario.md sigle e simboli con rimando alla pagina pertinente - tabelle-indice.md le 15 tabelle e 12 equazioni → pagina dove stanno - figure-indice.md le figure per sezione (GENERATA dallo script) - bibliografia.md i 63 riferimenti (GENERATA dallo script), con link alle schede raw/fonti/ - concepts/ meccanismi e concetti (ROP, grafting-from, ACQ, aggregati H/J, band gap, irreversibilità EC, P3HT, fluorescenza…) - compounds/ un file per composto numerato o polimero/campione, spezzato per argomento (dpp-2, dpp-2-voltammetria, copolimeri-*, bottle-brush-*) - techniques/ NMR, FT-IR, GPC, UV-Vis, fluorescenza, DSC, CV (hub + cv-teoria, cv-analisi-onset, cv-risultati) - figures/ note GENERATE dallo script (una per figura, non modificare a mano) - analyses/ query salvate; difetti-noti (hub) e sottopagine difetti-*; verifica-citazioni, riassunto-vs-tesi +index.md catalogo di tutte le pagine (punto di partenza) +wiki/overview.md sintesi, research question, risultati +wiki/tesi.md mappa capitolo/sezione → pagine +wiki/riassunto-tesi.md mappa del riassunto di tesi (seconda fonte) +wiki/dati.md grandezza → pagina, con intervalli di valori +wiki/campioni.md matrice campioni × tecniche +wiki/percorso-sintetico.md i quattro passi di sintesi +wiki/glossario.md sigle e simboli +wiki/tabelle-indice.md 15 tabelle e 12 equazioni → pagina +wiki/figure-indice.md le figure per sezione (80 della tesi + 11 del riassunto) +wiki/concepts/ meccanismi e concetti +wiki/compounds/ composti, polimeri, campioni (dpp-1, dpp-2, copolimeri-*, bottle-brush-*) +wiki/techniques/ NMR, FT-IR, GPC, UV-Vis, fluorescenza, DSC, CV +wiki/figures/fig-NNN.md una nota per figura (didascalia, descrizione, testo visibile, contesto) +wiki/analyses/ difetti-noti (+ difetti-bibliografia/-figure/-dati), verifica-citazioni, riassunto-vs-tesi +wiki/bibliografia.md 63 riferimenti; schede in raw/fonti/NN-cognome-anno.md +raw/tesi.md sorgente canonico (1446 righe): fallback per verifica puntuale +raw/immagini/ file immagine delle figure (nome = hash) +raw/immagini.json catalogo figure (pannelli, didascalie, testo visibile, composti, concetti) ``` -Niente pagine `source` per capitolo (duplicherebbero la tesi) e niente `entities/` generica. Le pagine **hub** (es. `copolimeri-3a-3b-3c`, `fluorescenza`) hanno una sezione `## Struttura` con le **sottopagine**, che iniziano con «_Parte di [[hub]]_» e hanno un proprio `tesi_loc`. Le pagine di navigazione (`campioni`, `percorso-sintetico`, `glossario`, indici) contengono rimandi, non dati. +Le pagine **hub** hanno una sezione `## Struttura` con le sottopagine (es. `ciclovoltammetria` → `cv-teoria`, `cv-analisi-onset`, `cv-risultati`): scendi alla sottopagina che contiene il dato (tabelle ed equazioni stanno in **una sola** pagina, le altre rimandano). Composti sperimentali: `dpp-1`, `dpp-2`, `copolimeri-3a-3b-3c`, `bottle-brush-3-x`; la numerazione dei composti del cap. 1 (1-48) è un'altra cosa: non confonderle. -## Convenzioni pagine -- File `kebab-case.md`. Composti: `composto-32.md` con `aliases` (nome, codice come `3.1b`). Figure: `fig-026.md`. -- Link: wikilink `[[nome-file]]`, `[[nome|testo]]` per alias. Riferimenti bibliografici: `[[01-bao-2020|1]]` (link alla scheda in `raw/fonti/`; usare il numero della tesi). -- Frontmatter YAML: -```yaml ---- -title: Titolo leggibile -type: concept | compound | technique | analysis | overview | figure -tags: [tag1, tag2] -created: YYYY-MM-DD -updated: YYYY-MM-DD -tesi_loc: "§4.2 r.812-840" # dove la tesi sostiene il contenuto -refs: [3, 12] # numeri della bibliografia citati (opzionale) -figures: ["fig-026"] # opzionale -status: draft | stable ---- -``` -- **Ogni affermazione non banale cita la posizione**: `(§4.2, Fig. 27, r.812)` e, se serve, il riferimento `[[01-bao-2020|1]]`. Niente affermazioni non riconducibili a `raw/`. -- Inferenze dell'LLM marcate _(inferenza)_. Se non sai, dillo; non inventare fonti o dati. -- Ogni pagina termina con `## Collegamenti`. Nessuna pagina orfana. Crea una pagina concetto solo se serve a ≥2 sezioni/figure o è centrale. +## Procedura di risposta (per ogni domanda) -## Regole sui dati scientifici -- **Copia alla lettera**: valori, unità, condizioni (T, P, solvente, tempo, carico, resa/conversione), formule LaTeX, formule chimiche, nomi di composti e sigle (DPP, 3HT, ROP, PCL, ACQ, CV, GPC…) restano come nella tesi. Non tradurre, riassumere, convertire o arrotondare dati sperimentali. Decimali con la virgola come in `tesi.md`; eccezioni: Abstract, dati NMR, liste, DOI. -- **Procedure sperimentali (cap. 3):** non riscriverle; la wiki rimanda al paragrafo (`tesi_loc`) e riporta solo i dati necessari alla pagina. -- **Sospetti errori di estrazione** (formula, tabella, valore): confronta con la fonte originale se disponibile, **segnala e non correggere**. Valori da condizioni diverse non vanno confrontati senza dirlo. -- **Sicurezza:** niente procedure di sintesi pericolose oltre quanto riporta la tesi; riporta i pericoli noti dei reagenti se citati. +### 1. Retrieval (obbligatorio, prima di scrivere) +1. Interpreta la domanda: individua composti, tecniche, concetti, campioni, sezioni coinvolte. Se è ambigua tra più letture plausibili, rispondi coprendole tutte invece di chiedere. +2. Parti da `index.md` e, se serve, da `glossario.md`, `dati.md`, `campioni.md`, `tabelle-indice.md`, `tesi.md` per localizzare le pagine. Usa Grep sulla wiki per sigle, numeri di composto, valori, parole chiave (anche sinonimi e forme italiane/inglesi). +3. **Leggi per intero** le pagine pertinenti (non solo gli estratti), seguendo i `[[wikilink]]` e `## Collegamenti`: per una domanda articolata leggi tipicamente il concetto, il composto, la tecnica e la sottopagina dei risultati. Più angolazioni = risposta più completa. +4. Domande su un dato, una tabella o una procedura: se la wiki rimanda a `tesi_loc`, apri `raw/tesi.md` alle righe indicate per copiare il valore esatto. Se la wiki non basta o due pagine non concordano, verifica su `raw/tesi.md`. +5. Domande su un riferimento bibliografico: `wiki/bibliografia.md` e la scheda in `raw/fonti/`. +6. Controlla `wiki/analyses/difetti-noti.md` (e sottopagine) quando la domanda tocca dati, figure o bibliografia: se un dato o una figura ha un difetto noto, **dillo**. +7. Per confronti tra tesi e riassunto, usa `wiki/riassunto-tesi.md` e `wiki/analyses/riassunto-vs-tesi.md`. -## Figure -- `wiki/figures/*.md`, `wiki/figure-indice.md` e `wiki/bibliografia.md` sono **derivate**: `python scripts/gen_figures.py` (figure e indice) e `python scripts/gen_bibliografia.py` le rigenerano da `raw/immagini.json`, riportando ogni campo (didascalie, descrizioni e testo visibile per pannello, composti, concetti, contesto, righe di citazione, note di revisione) e, in fondo a ogni nota, le pagine che la usano (link o embed) senza riassumere. Eccezione alla regola "solo l'LLM scrive in `wiki/`"; non modificarle a mano, correggi `raw/immagini.json` solo se l'utente lo chiede e poi rigenera. -- **Attendibilità:** solo `caption_printed` è testo della tesi. Descrizioni, `visible_text` e didascalia generata derivano dall'immagine e non sono verificati: valori letti da grafici o schemi (rese, picchi, potenziali) vanno confermati sull'immagine/tesi prima di riusarli. -- Le pagine concept/compound/technique richiamano le figure con `[[fig-026]]` o con l'embed `![[immagini/]]` (da `panels[].embed`). Le figure con `flags` o `review_notes` (Figure 26, 27, 29, 58, 66, 67, 69 hanno discrepanze didascalia/testo; anche la 62, la 76, la 52 e lo schema `fig-x-94f3f4` hanno note) vanno citate con l'avvertenza. -- `compounds` nel catalogo sono numeri della tesi; `concepts` sono slug candidati, non nomi definitivi: crea la pagina solo se la regola dei ≥2 usi è soddisfatta. +### 2. Retrieval delle immagini (ogni volta che la domanda tocca struttura, schema, spettro, grafico, meccanismo, morfologia) +1. Individua le figure rilevanti da `figure-indice.md`, dalle pagine lette (campo `figures`, link `[[fig-NNN]]`) o con Grep in `wiki/figures/`. +2. Leggi la nota `wiki/figures/fig-NNN.md` (didascalia stampata, descrizione, testo visibile, contesto, righe di citazione, avvisi) e poi **guarda l'immagine**: apri con Read il file in `raw/immagini/` indicato nell'embed `![[immagini/]]` della nota (per le figure a più pannelli, tutti i pannelli rilevanti). Le figure del riassunto sono `ris-fig-NN`. +3. Usa le figure per **spiegare**: descrivi cosa si vede (struttura, picchi, curve, frecce di reazione, legenda) e collega ogni elemento al ragionamento della risposta. Cita sempre il percorso del file, così l'utente può aprirla: `raw/immagini/` (e la nota `[[fig-NNN]]`). Non limitarti a elencare i numeri di figura. +4. Scegli le figure con giudizio: quelle che chiariscono davvero la risposta (di norma 1-4; di più solo se la domanda è un percorso completo, es. l'intera sintesi). Se non c'è una figura utile, non forzarla. +5. **Attendibilità delle figure:** solo `caption_printed` è testo della tesi; descrizioni, `visible_text` e didascalie generate derivano dall'immagine e non sono verificate. Valori letti da grafici/schemi (rese, picchi, potenziali) vanno confermati su tesi/tabelle prima di darli per certi, o presentati come «letti dalla figura». Figure con `flags`/`review_notes` (Fig. 26, 27, 29, 58, 66, 67, 69 con discrepanze didascalia/testo; note anche su 62, 76, 52 e `fig-x-94f3f4`): citale **con l'avvertenza**. -## Regole di organizzazione dei dati -- Pagine sopra ~1.500 parole vanno spezzate per argomento in hub + sottopagine (es. `ciclovoltammetria` = procedura, `cv-teoria`, `cv-analisi-onset`; i risultati in `cv-risultati`); i link in entrata puntano alla sottopagina che contiene la tabella o l'equazione. -- Una tabella o un dato sta in **una sola pagina**: quella dove la tesi lo discute (per es. Tab. 5 in `dpp-2`, Tab. 14-15 in `cv-risultati`). Le altre pagine rimandano con wikilink; fanno eccezione i riepiloghi comparativi (es. in `uv-vis-fluorescenza`), che citano la tabella di origine. -- Le pagine riorganizzano per argomento, non per capitolo, senza eliminare informazioni: procedure con quantità in tabella, condizioni, assegnazioni e ragionamenti della tesi restano, con `tesi_loc` e righe. -- Composti sperimentali: `dpp-1`, `dpp-2`, `copolimeri-3a-3b-3c`, `bottle-brush-3-x`. La numerazione dei composti del cap. 1 (1-48) è un'altra: non confonderle. +### 3. Sintesi e integrazione con la conoscenza del modello +Dopo il retrieval, costruisci la risposta più **articolata e completa** possibile: +- **Parti dalla wiki**: ciò che la tesi afferma, con i dati esatti, le condizioni e le citazioni. +- **Poi arricchisci** con la tua conoscenza generale per spiegare il *perché* e il *come*: meccanismi, motivazioni chimico-fisiche, definizioni, analogie, ordini di grandezza, contesto. Lo scopo è rendere comprensibile ciò che la tesi dice, non aggiungere nuovo contenuto. +- **Vincolo di perimetro:** l'integrazione deve restare **dentro gli argomenti della tesi** (vedi «Argomenti ammessi»). Niente digressioni su temi, materiali, applicazioni o tecniche che la tesi non tratta, anche se correlati. Nel dubbio, tralascia. +- **Separa visibilmente** ciò che viene dalla wiki da ciò che aggiungi tu: le integrazioni sono marcate _(conoscenza generale)_ o raccolte in una sezione dedicata «Approfondimento». Le tue deduzioni sui dati sono _(inferenza)_. Non attribuire mai alla tesi ciò che non c'è. +- Se la conoscenza generale e la tesi divergono, riporta la tesi, segnala la divergenza e non correggerla in silenzio. +- Se la wiki e `raw/tesi.md` non contengono l'informazione, dillo chiaramente («la tesi non riporta…») e distingui cosa puoi dire con conoscenza generale dentro il perimetro. -## Difetti noti della tesi -Raccolti in `wiki/analyses/difetti-noti.md` (hub) e nelle sottopagine `difetti-bibliografia`, `difetti-figure`, `difetti-dati` (le altre pagine rimandano all'hub o alla sottopagina): bibliografia con voce 44 duplicata della 1; voci 20, 22, 36, 54 incomplete o con testo spurio; voce 55 in formato RIS grezzo (e citata per dati del P3HT); DOI errati nelle voci 47, 48 (corretto 10.1080/15583720802231833) e 49; voci 47, 49, 54 non identificabili; PDI di 3b (Tab. 9) incoerente con Mw/Mn; % DPP di 3c (35 vs 36); bandgap delle Conclusioni (3,42-4,30 eV) incoerente con Tab. 14; tre riferimenti incrociati rotti in §3.3; discrepanze figura/testo (anche Fig. 62, 76). Il segnaposto «paragrafo XX (XX)» e altri difetti della versione precedente non risultano più presenti. +## Forma della risposta +- Struttura con titoli e sottotitoli brevi; apri con una **risposta diretta** (2-4 righe), poi sviluppa: contesto/concetto → dati e risultati → meccanismo/spiegazione → collegamenti con altre parti della tesi → limiti e avvertenze. Adatta la profondità alla domanda, ma privilegia completezza e chiarezza. +- Tabelle per confronti e serie di valori; formule in LaTeX; elenchi puntati per passaggi sequenziali. +- Le figure compaiono dove servono, con una frase che dice *cosa guardare* e *perché*. +- Chiudi con una riga «Per approfondire» con le pagine wiki più utili (`[[...]]`) e, se pertinente, domande collegate. -## Workflow +## Citazioni e fedeltà dei dati +- **Ogni affermazione non banale dalla tesi cita la posizione**: `(§4.2, Tab. 14, r.812)` e, se serve, il riferimento bibliografico `[[01-bao-2020|1]]` (numero della tesi). Usa `tesi_loc` delle pagine come localizzatore; i numeri di riga riferiscono `raw/tesi.md`. Cita anche la pagina wiki da cui hai preso l'informazione. +- **Copia alla lettera** valori, unità, condizioni (T, P, solvente, tempo, carico, resa/conversione), formule, nomi di composti e sigle (DPP, 3HT, ROP, PCL, ACQ, CV, GPC…). Non convertire, arrotondare o riassumere dati sperimentali. Decimali con la virgola come nella tesi; eccezioni: Abstract, dati NMR, liste, DOI, dove si copia com'è. +- Valori da condizioni diverse (solvente, concentrazione, tecnica, campione) non vanno confrontati senza dirlo. +- **Difetti noti** (hub `wiki/analyses/difetti-noti.md`): se un dato su cui ti basi ne ha uno, segnalalo e non correggerlo. Esempi: PDI di 3b (Tab. 9) incoerente con Mw/Mn; % DPP di 3c (35 vs 36); bandgap delle Conclusioni (3,42-4,30 eV) incoerente con Tab. 14; correlazione «lineare» (r.1228) vs «non lineare con plateau» (Conclusioni, §4.4.3); voce bibliografica 44 duplicata della 1; DOI errati nelle voci 47, 48, 49; tre riferimenti incrociati rotti in §3.3. +- **Procedure sperimentali (cap. 3):** riporta i dati necessari alla domanda con rimando a paragrafo e righe; non riscrivere l'intera procedura salvo richiesta esplicita. +- **Sicurezza:** nessuna procedura di sintesi pericolosa oltre quanto riporta la tesi; segnala i pericoli noti dei reagenti se citati. +- Mai inventare dati, fonti, numeri di figura/tabella o citazioni. Se non sai, dillo. -### Ingest (per capitolo, non per fonte) -Ordine: Abstract/Introduzione/Scopo (concepts, research question) → Procedure sperimentali (compounds, techniques) → Discussione (dati, overview) → Conclusioni → bibliografia. -1. Leggi per intero il capitolo/sezione in `raw/tesi.md` e le figure collegate (`sections[].figure_ids`). -2. Dopo il primo capitolo, discuti 3–5 takeaway e chiedi cosa enfatizzare; poi procedi a blocchi senza chiedere ogni volta. -3. Crea/aggiorna `concepts/`, `compounds/`, `techniques/`; segnala discrepanze in `analyses/difetti-noti.md`. -4. Aggiorna `wiki/tesi.md` (mappa), `overview.md` se la sintesi cambia, `bibliografia.md` se tocchi riferimenti. -5. Rigenera le figure se `raw/immagini.json` è cambiato. -6. Aggiorna `index.md` e appendi a `log.md`. +## Salvataggio delle risposte +Non scrivere nulla di tua iniziativa. Se la risposta è particolarmente articolata e durevole, puoi **proporre** in una riga di salvarla in `wiki/analyses/`; procedi solo se l'utente accetta (in tal caso rispetta frontmatter, `tesi_loc`, sezione `## Collegamenti` e aggiungi una voce `query` a `log.md` e a `index.md`). -### Riallineamento a una nuova versione della tesi -Su richiesta dell'utente, quando `raw/` riceve una nuova versione (docx): -1. Converti il docx in `raw/tesi.md` con le stesse convenzioni (anchor `_Toc`, citazioni `[N](#ref-N)`, tabelle pipe, immagini `immagini/`), riusando il markup esistente dove il testo è invariato. Le figure vettoriali del docx si rendono (es. LibreOffice) e si confrontano con i file esistenti: i file invariati restano, solo i nuovi si aggiungono, con nome = hash del file. -1b. Verifica le immagini contro il docx, non solo il testo: converti il docx in PDF (LibreOffice), estrai le figure e confrontale con `raw/immagini/`; per i grafici Excel/Word nativi confronta i dati di `word/charts/chartN.xml` con quelli dell'immagine (una figura può restare vecchia anche se testo e tabelle sono aggiornati: caso Fig. 72-74, 46, 54, 63). -2. Aggiorna `raw/immagini.json` (numerazione, righe, nuove figure con descrizioni non verificate), `raw/bibliografia.json` e le schede in `raw/fonti/` (rinomina `NN-…`, righe di citazione; nuove voci da Crossref); rigenera `wiki/figures/` e `wiki/bibliografia.md`. -3. Rimappa nella wiki righe, numeri di figura, tabella e riferimento, poi rivedi pagina per pagina i contenuti cambiati (valori, tabelle, formule) e aggiorna `difetti-noti`, `dati.md`, `tesi.md`, `index.md`, `log.md`. Pagine derivate obsolete si cancellano solo con conferma. - -### Query -Leggi `index.md` e le pagine rilevanti (non rileggere `raw/` se la wiki basta); rispondi in italiano con citazioni `[[...]]` e `tesi_loc`; proponi di salvare in `analyses/` le risposte durevoli; log `query`. - -### Lint (su richiesta o ogni ~10 ingest) -Esegui `python scripts/lint.py` (link rotti, pagine orfane, frontmatter, coerenza `figures`/`refs` con il corpo, figure citate per numero senza link né embed, figure senza pagina tematica, numeri non presenti in `raw/tesi.md`, slug concetto candidati). Poi controlli semantici a mano: contraddizioni, valori che non tornano con `raw/tesi.md`, pagine oltre ~1.500 parole da spezzare. Riporta; le correzioni meccaniche (spaziatura, frontmatter) si applicano subito, il resto dopo conferma. Log `lint`. - -## index.md e log.md -- `index.md`: catalogo per categoria (Overview e navigazione, Tesi e bibliografia, Concetti, Composti, Tecniche, Figure, Analisi), voci `- [[pagina]] — riga di sintesi`; le sottopagine sono annidate sotto il loro hub; conteggi aggiornati. Le figure (80 della tesi e 11 del riassunto) non si elencano una per una: una riga con link alla cartella e il conteggio per tipo. -- `log.md`: append-only, mai riscrivere le voci vecchie. Prefisso `## [YYYY-MM-DD] tipo | titolo` con tipo ∈ `setup, ingest, query, lint, schema`. Parsing: `grep "^## \[" log.md | tail -5`. - -## Regole d'oro -- Mai modificare `raw/`. Mai inventare dati, fonti o citazioni. -- Prima di cancellare o rinominare pagine chiedi conferma e aggiorna i link in entrata. -- Cambi allo schema: proponi, attendi ok, poi registra in `log.md` (tipo `schema`). -- Lavoro proporzionato: nessuna pagina "per dopo". +## Storico +Lo schema di manutenzione (ingest, riallineamento, lint, regole di scrittura della wiki) è nella cronologia git di questo file, fino al commit `eb672df`; per interventi di manutenzione l'utente lo richiederà esplicitamente.