diff --git a/src/app/shared/flow-assistant/flow-assistant.css b/src/app/shared/flow-assistant/flow-assistant.css index 2f2c7e4..c3d6310 100644 --- a/src/app/shared/flow-assistant/flow-assistant.css +++ b/src/app/shared/flow-assistant/flow-assistant.css @@ -251,7 +251,7 @@ } .assistant-advanced-toggle, -.assistant-new-session { +.assistant-advanced-toggle { justify-self: start; border: 0; padding: 0; diff --git a/src/app/shared/flow-assistant/flow-assistant.html b/src/app/shared/flow-assistant/flow-assistant.html index e25f61c..7f4bdeb 100644 --- a/src/app/shared/flow-assistant/flow-assistant.html +++ b/src/app/shared/flow-assistant/flow-assistant.html @@ -45,11 +45,6 @@

Configurazione assistente

Le credenziali dei provider sono gestite dal backend.

- @if (configurationLocked()) { - - } @if (configurationLocked()) { -

La configurazione LLM è fissata per questa sessione. Crea una nuova sessione per modificarla.

+

La configurazione LLM è fissata per questa sessione.

} @if (!useDefaultConfiguration()) { diff --git a/src/app/shared/flow-assistant/flow-assistant.ts b/src/app/shared/flow-assistant/flow-assistant.ts index 5bee246..fcae636 100644 --- a/src/app/shared/flow-assistant/flow-assistant.ts +++ b/src/app/shared/flow-assistant/flow-assistant.ts @@ -277,18 +277,6 @@ export class FlowAssistant implements OnInit, OnDestroy { this.persistSnapshot(); } - createNewSession() { - if (this.assistantBusy() || !this.configurationValid()) return; - this.stopPolling(); - this.currentCall.set(null); - this.sessionState.set(null); - this.localMessages.set([]); - this.assistantErrorMessage.set(null); - this.lastFailedPrompt.set(null); - this.lastSubmittedPrompt.set(''); - void this.openSession(); - } - useStarter(prompt: string) { this.prompt.set(prompt); this.persistSnapshot(); @@ -388,6 +376,7 @@ export class FlowAssistant implements OnInit, OnDestroy { error: (err) => { console.error('Assistant flow action failed', err); this.requestPending.set(false); + this.discardFailedSession(); this.handleAssistantErrorWithRetry(normalizedContent, this.backendErrorMessage(err)); } }); @@ -505,6 +494,12 @@ export class FlowAssistant implements OnInit, OnDestroy { this.syncDraftToEditor(result.flow); } + private discardFailedSession() { + this.stopPolling(); + this.currentCall.set(null); + this.sessionState.set(null); + } + private backendErrorMessage(error: unknown): string { const value = error as { error?: unknown; message?: unknown }; const payload = value?.error;