diff --git a/assets/javascripts/discourse/components/ai-persona-llm-selector.gjs b/assets/javascripts/discourse/components/ai-persona-llm-selector.gjs index 2fc16ed0..aa50ae60 100644 --- a/assets/javascripts/discourse/components/ai-persona-llm-selector.gjs +++ b/assets/javascripts/discourse/components/ai-persona-llm-selector.gjs @@ -148,21 +148,24 @@ export default class AiPersonaLlmSelector extends Component { this.setAllowLLMSelector(); if (this.hasLlmSelector) { - let llm = this.keyValueStore.getItem(LLM_SELECTOR_KEY); + let llmId = this.keyValueStore.getItem(LLM_SELECTOR_KEY); + if (llmId) { + llmId = parseInt(llmId, 10); + } const llmOption = - this.llmOptions.find((innerLlmOption) => innerLlmOption.id === llm) || + this.llmOptions.find((innerLlmOption) => innerLlmOption.id === llmId) || this.llmOptions[0]; if (llmOption) { - llm = llmOption.id; + llmId = llmOption.id; } else { - llm = ""; + llmId = ""; } - if (llm) { + if (llmId) { next(() => { - this.currentLlm = llm; + this.currentLlm = llmId; }); } } diff --git a/spec/system/ai_bot/homepage_spec.rb b/spec/system/ai_bot/homepage_spec.rb index 635ed24d..671b79c7 100644 --- a/spec/system/ai_bot/homepage_spec.rb +++ b/spec/system/ai_bot/homepage_spec.rb @@ -254,13 +254,13 @@ RSpec.describe "AI Bot - Homepage", type: :system do it "Allows choosing persona and LLM" do ai_pm_homepage.visit - ai_pm_homepage.persona_selector.expand - ai_pm_homepage.persona_selector.select_row_by_name(persona.name) - ai_pm_homepage.persona_selector.collapse - ai_pm_homepage.llm_selector.expand ai_pm_homepage.llm_selector.select_row_by_name(claude_2_dup.display_name) ai_pm_homepage.llm_selector.collapse + + # confirm memory works for llm selection + ai_pm_homepage.visit + expect(ai_pm_homepage.llm_selector).to have_selected_name(claude_2_dup.display_name) end it "renders back to forum link" do