Skill ex-novo che riflette Thoth (non copia di ChironeWp3): - vocabolario widget-descriptor (reviewer_select/decide/confirm) invece di 'dialog native' - D11 save-one in F2 (upsert mirato vs full resync) - D14a value_grounded (LSH multi-colonna non collassa) + D14b concept_formula in F4 - D13 free-text e D15 rollback nelle discipline trasversali - memory vive SOLO nel vectordb (drop registry, spec 5): save-one/promote senza registry - F8 datamart onesto (stub NotImplementedError) Sottomoduli cte/memoria/rewriting/sql-generation portati adattando nsp->tht, con i vincoli precisi trasferiti fedelmente (max 5 memorie, solo 3 tipi riusabili, CTE solo WITH senza SELECT, dim_time join non aritmetica, sql_final pulito). Verifica: zero residui nsp/chirone/psd nella skill; ogni 'tht <cmd>' citato e' registrato (correzione: 'tht formula retrieve' era inesistente -> riformulato in 'ricerca nelle evidence'). Suite: 165 passed.
1.9 KiB
1.9 KiB
Tecnica di generazione del piano CTE (Agent View Generation)
Adattata dallo step CTE di AV-SQL. I CTE catturano incrementalmente l'informazione necessaria a rispondere alla domanda riscritta, SENZA rispondere alla domanda finale (quella e' la fase successiva).
Regole (dalla disciplina AV-SQL, valgono alla lettera):
- Copia ESATTAMENTE i nomi di tabelle e colonne dal contesto schema fornito
(
tht schema render --format mschema-text --table ...). Mai inventare oggetti non presenti. - Tieni sempre le chiavi (PK e colonne di join) nei CTE: serviranno dopo.
- Meglio una colonna in piu' che una in meno: se non sei sicuro, includila.
- Un CTE = un sottoinsieme informativo con uno scopo chiaro (es. "ricoveri con ablazione nel 2025"), nominato in snake_case parlante.
- I CTE possono referenziarsi in catena; l'ultimo del file e' quello che
tht cte testinterroghera'. - Ogni file in sessions//ctes/.sql contiene SOLO il blocco
WITH ... AS (...)(anche multi-CTE), SENZA SELECT finale. Una rigaSELECT ...dopo il blocco WITH causa un errore intht cte test: non aggiungerla mai. I CTE vengono testati e approvati (decisionecte_approved) nell'ordine del piano: il CTE successivo è testabile SOLO dopo che il precedente è stato approvato conkind:"cte_result". La CLI rifiuta i CTE fuori ordine (exit 5). - Filtri: usa i valori di campo verificati con
tht search(match LSH sui valori reali), non valori immaginati.
Presentazione al reviewer, per ogni CTE del piano:
— scopo: Tabelle usate: (tutte dal perimetro promosso)
WITH <nome> AS (...)
Dopo la conferma (o per revisione diretta del reviewer) scrivi il file e
testa: tht cte test --session <id> <nome>. Su errore o warning rilevanti,
discuti la correzione col reviewer prima di riscrivere il file. Se il
reviewer modifica il file a mano, RILEGGILO prima di ritestare.