fix: auto-approve phase 3 rewrite
This commit is contained in:
@@ -1266,10 +1266,11 @@ export default function (pi) {
|
||||
|
||||
pi.registerTool({
|
||||
name: "rewrite_question",
|
||||
label: "Riscrittura domanda (deterministica)",
|
||||
label: "Riscrittura domanda e chiusura F3 (deterministica)",
|
||||
description:
|
||||
"Scrive deterministicamente question.md via tht session set-question (evita il tool " +
|
||||
"di edit unreliable). assumptions puo' essere array o stringa JSON.",
|
||||
"In Fase 3 scrive deterministicamente question.md, registra question_rewritten e " +
|
||||
"chiude la fase senza chiedere conferma al reviewer. assumptions puo' essere array " +
|
||||
"o stringa JSON.",
|
||||
parameters: Type.Object({
|
||||
session: Type.String(),
|
||||
question: Type.String(),
|
||||
@@ -1278,6 +1279,10 @@ export default function (pi) {
|
||||
async execute(_id, params, _signal, _onUpdate, ctx) {
|
||||
lockActive = true;
|
||||
const { session, question, assumptions } = params;
|
||||
const curNum = currentPhase(ctx, session);
|
||||
if (curNum !== 3) {
|
||||
return textResult("La riscrittura automatica e' disponibile solo in Fase 3.");
|
||||
}
|
||||
let assumps = assumptions;
|
||||
if (typeof assumps === "string") {
|
||||
try {
|
||||
@@ -1295,7 +1300,19 @@ export default function (pi) {
|
||||
}
|
||||
const err = relayIfThtFails(ctx, args, "");
|
||||
if (err) return err;
|
||||
return textResult(`Domanda riscritta per la sessione ${session}.`);
|
||||
const decisionErr = relayIfThtFails(
|
||||
ctx,
|
||||
decisionAddArgs(session, {
|
||||
type: "question_rewritten",
|
||||
subject: "domanda",
|
||||
detail: question,
|
||||
}),
|
||||
"",
|
||||
);
|
||||
if (decisionErr) return decisionErr;
|
||||
const advanced = advancePhaseAndFinalize(ctx, session, curNum);
|
||||
if (advanced.err) return advanced.err;
|
||||
return textResult(`Domanda riscritta e Fase 3 completata (sessione ${session}).`);
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user