fix(chat): Handle string model lists and add tests #2472
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Handle the special case where
modelsis a list of strings inget_models_list.vim.itertreats tables and lists differently. When the parameter is a list, the signature ofmapwould befun(item)instead offun(key, value).model.choicesis a list of strings (happened when I was usingopenai_compatibleadapter), the existing code essentially convert everything tonilbecausevaluehere would benil.vim.ui.selectpicker to only contain the default model.Related Issue(s)
git bisectpointed me to #2427Screenshot
I have a few (~10) LLMs on this endpoint, but without this PR, I can only see one.

Checklist
make allto ensure docs are generated, tests pass and my formatting is appliedCodeCompanion.hasin the init.lua file for my new feature