feat(harness): language workspace param + skill riscritta in inglese (semantica completa)

Due cambiamenti interconnessi da user review:

1. language come parametro workspace (spec decisione 9):
   - Config.language (default 'en') + workspaces PSD con 'language: it'
   - Generalizza Thoth oltre l'italiano: descrizioni tabelle/colonne ed evidence
     sono nel workspace language; le istruzioni della skill restano in inglese
     (piu' affidabili per modelli piccoli, meno ambigue)

2. Skill riscritta in INGLESE preservando la semantica COMPLETA dell'originale
   (autocritica: la mia riscrittura precedente aveva perso ~10 vincoli precisi):
   - 'promuovere' ambiguo (3 accezioni: phase advance / recommend / memory promote)
     -> 'never advance a phase or record a decision without confirmation'
   - recuperati vincoli persi: choice-is-confirmation (no reviewer_confirm dopo
     reviewer_decide), reviewer_select SOLO per iterazione no-decision, messaggi
     auto-contenuti obbligatori, artefatto = superficie di decisione (gate rilegge
     da disco per CTE/SQL), candidati con provenienza+score non verita', opzione
     'leave ambiguity open', F1 passa lista completa non solo ultima
   - language contract esplicito (istruzioni EN, output nel workspace language)

Sottomoduli cte/memoria/rewriting/sql-generation in inglese, semantica tecnica
intatta (regole AV-SQL, dim_time trick, max 5 memorie solo 3 tipi riusabili).

Verifica: 0 residui nsp/chirone, tutti i tht <cmd> citati registrati, 165 passed.
This commit is contained in:
2026-06-27 14:50:30 +02:00
parent de61034a8d
commit 292048f777
9 changed files with 317 additions and 262 deletions
+19 -19
View File
@@ -1,25 +1,25 @@
# Tecnica di riscrittura della domanda
# Question rewriting technique
Adattata dallo step "rephrase question" di AV-SQL: scomporre la domanda in
condizioni esplicite, senza perdere informazione.
Adapted from the "rephrase question" step of AV-SQL: decompose the question into
explicit conditions, without losing information.
La domanda riscritta deve:
The rewritten question must:
1. Esplicitare la popolazione (chi/cosa si conta o seleziona) con i termini
del modello dati (es. "pazienti distinti in dim_patient").
2. Esplicitare ogni condizione come clausola separata e numerabile:
periodo temporale, eventi inclusi/esclusi, soglie, stati.
3. Sostituire i termini ambigui con i concetti chiariti in Fase 1, citando
l'evidence che li definisce quando esiste (id evidence tra parentesi).
4. Esplicitare l'output atteso: conteggio, elenco, aggregato, trend.
5. Restare in italiano, in una forma che un secondo reviewer capirebbe senza
aver visto la conversazione.
1. Make the population explicit (who/what is counted or selected) using the data
model's terms (e.g. "distinct patients in dim_patient").
2. Make every condition an explicit, numbered clause: time window, included/excluded
events, thresholds, states.
3. Replace ambiguous terms with the concepts clarified in Phase 1, citing the
evidence that defines them when it exists (evidence id in parentheses).
4. Make the expected output explicit: count, list, aggregate, trend.
5. Stay in the workspace language, in a form a second reviewer would understand
without having seen the conversation.
Formato della proposta al reviewer:
Format of the proposal to the reviewer:
> **Domanda riscritta:** <testo>
> **Condizioni:** 1) ... 2) ... 3) ...
> **Assunzioni usate:** <elenco con riferimento alle decisioni>
> **Output atteso:** <forma del risultato>
> **Rewritten question:** <text>
> **Conditions:** 1) ... 2) ... 3) ...
> **Assumptions used:** <list with reference to decisions>
> **Expected output:** <shape of the result>
Itera sulla base delle correzioni. Non procedere alla Fase 4 senza conferma.
Iterate based on corrections. Do not proceed to Phase 4 without confirmation.