orquesta-cli 0.2.74 → 0.2.75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -148,20 +148,14 @@ async function executeFinalResponse(args) {
|
|
|
148
148
|
}
|
|
149
149
|
const todos = getTodosCallback();
|
|
150
150
|
if (!areAllTodosCompleted(todos)) {
|
|
151
|
-
|
|
152
|
-
logger.
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
catch (e) {
|
|
158
|
-
logger.warn(`markTodosCompleted failed: ${e}`);
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
else {
|
|
163
|
-
logger.flow('All TODOs completed - delivering final response');
|
|
151
|
+
const pending = todos.filter(t => t.status !== 'completed' && t.status !== 'failed');
|
|
152
|
+
logger.flow(`final_response BLOCKED — ${pending.length} TODO(s) still incomplete`);
|
|
153
|
+
return {
|
|
154
|
+
success: false,
|
|
155
|
+
error: `Cannot deliver final response yet. ${pending.length} task(s) still pending:\n${pending.map(t => `- ${t.title}`).join('\n')}\n\nYou MUST complete all tasks using tools (bash, read_file, edit_file, etc.) before calling final_response.`,
|
|
156
|
+
};
|
|
164
157
|
}
|
|
158
|
+
logger.flow('All TODOs completed - delivering final response');
|
|
165
159
|
if (finalResponseCallback) {
|
|
166
160
|
finalResponseCallback(message);
|
|
167
161
|
}
|