# Workflow operativo di ThothII ThothII guida ogni domanda attraverso otto fasi. Il modello propone i passaggi, il revisore decide nei gate e il sistema registra artefatti e decisioni persistenti. ```mermaid flowchart LR Q["Domanda"] --> F1["F1 Chiarimento"] F1 --> F2["F2 Memory"] F2 --> F3["F3 Riscrittura"] F3 --> F4["F4 Evidence"] F4 --> F5["F5 Schema"] F5 --> F6["F6 Piano CTE"] F6 --> F7["F7 SQL"] F7 --> F8["F8 Promozione"] F8 --> DONE["Sessione finalizzata"] ``` ## Principi del workflow - Il modello propone; il revisore approva, corregge o rifiuta. - Ogni decisione rilevante viene registrata nel ledger della sessione. - Lo stato persistito è la fonte di verità. - Una fase può avanzare soltanto quando i suoi artefatti e gate sono completi. - La ripresa ricostruisce il contesto dagli artefatti persistiti, non dalla conversazione. ## F1 — Chiarimento Il sistema identifica l'ambiguità con maggiore impatto sul significato della domanda e presenta una sola decisione per volta. Interpretazioni mutuamente esclusive usano una scelta singola; risposte contemporaneamente valide usano una scelta multipla. ## F2 — Memory Le Memory compatibili con la domanda vengono proposte al revisore. Quelle selezionate entrano nel contesto della sessione corrente; quelle non selezionate restano disponibili per domande future. ## F3 — Riscrittura La domanda viene riscritta in forma esplicita usando i chiarimenti approvati. Il revisore verifica la domanda risultante e le assunzioni prima di proseguire. ## F4 — Evidence Il sistema recupera Evidence dal corpus attivo e presenta citazioni e provenienza. Il revisore decide quali elementi sono pertinenti alla domanda. ## F5 — Schema Tabelle, colonne, relazioni e filtri vengono collegati al significato approvato della domanda. Il riepilogo chiude la fase quando domanda, assunzioni ed elementi del DWH sono coerenti. ## F6 — Piano CTE La query viene scomposta in CTE nominati con scopo, dipendenze, tabelle, filtri e colonne di output. Ogni passaggio viene presentato al revisore prima della produzione dell'SQL finale. ## F7 — SQL finale Il sistema produce `sql_final.sql`, ne controlla la coerenza con il piano approvato e presenta l'artefatto al revisore. Una correzione può riaprire il piano CTE senza perdere le decisioni ancora valide. ## F8 — Promozione delle Memory Alla fine della sessione il sistema propone i chiarimenti riutilizzabili. Il revisore decide quali promuovere nel registro globale; la sessione viene quindi finalizzata. ## Gate disponibili | Gate | Uso | | --- | --- | | Scelta singola | Una sola interpretazione può essere valida | | Scelta multipla | Più elementi possono essere validi contemporaneamente | | Conferma artefatto | Approvazione di un documento o risultato della fase | | Conferma fase | Chiusura esplicita di una fase | ## Ripresa e riapertura Una sessione ripresa rientra nell'ultima fase incompleta. Una riapertura invalida soltanto le decisioni e gli artefatti che dipendono dal punto modificato; il resto del lavoro rimane valido.