refactor(harness): route workflow persistence through repositories
This commit is contained in:
@@ -1401,6 +1401,38 @@ export default function (pi) {
|
||||
},
|
||||
});
|
||||
|
||||
pi.registerTool({
|
||||
name: "write_cte_sql",
|
||||
label: "Scrittura CTE SQL",
|
||||
description: "Persiste un blocco CTE tramite tht cte save; non scrivere mai file di sessione direttamente.",
|
||||
parameters: Type.Object({ session: Type.String(), name: Type.String(), sql: Type.String() }),
|
||||
async execute(_id, params, _signal, _onUpdate, ctx) {
|
||||
const err = relayIfThtFails(
|
||||
ctx,
|
||||
["cte", "save", "--session", params.session, "--name", params.name, "--file", "-"],
|
||||
"Correggi il blocco CTE e riprova.",
|
||||
params.sql,
|
||||
);
|
||||
return err || textResult(`CTE ${params.name} salvato per la sessione ${params.session}.`);
|
||||
},
|
||||
});
|
||||
|
||||
pi.registerTool({
|
||||
name: "write_final_sql",
|
||||
label: "Scrittura SQL finale",
|
||||
description: "Persiste il SQL finale tramite tht sql set-final; non scrivere mai file di sessione direttamente.",
|
||||
parameters: Type.Object({ session: Type.String(), sql: Type.String() }),
|
||||
async execute(_id, params, _signal, _onUpdate, ctx) {
|
||||
const err = relayIfThtFails(
|
||||
ctx,
|
||||
["sql", "set-final", "--session", params.session, "--file", "-"],
|
||||
"Correggi il SQL finale e riprova.",
|
||||
params.sql,
|
||||
);
|
||||
return err || textResult(`SQL finale salvato per la sessione ${params.session}.`);
|
||||
},
|
||||
});
|
||||
|
||||
// --- slash command: /torna [session_id] [N] (rollback to a previous phase) --
|
||||
pi.registerCommand("torna", {
|
||||
description:
|
||||
|
||||
Reference in New Issue
Block a user