Skip to content

feat(web-ui): AI provider model dedupe and case-insensitive matching#246

Merged
bobleer merged 1 commit intoGCWing:mainfrom
bobleer:feat/web-ui-ai-model-provider-dedup
Mar 24, 2026
Merged

feat(web-ui): AI provider model dedupe and case-insensitive matching#246
bobleer merged 1 commit intoGCWing:mainfrom
bobleer:feat/web-ui-ai-model-provider-dedup

Conversation

@bobleer
Copy link
Copy Markdown
Collaborator

@bobleer bobleer commented Mar 24, 2026

Summary

Improves AI model configuration under a provider by treating model names as case-insensitive for matching against existing saved entries, deduplicating drafts on save, and surfacing clear feedback when the user would create duplicates.

Changes

  • Resolve manual/selected model names against existing configs using a lowercase lookup key; keep stored casing from the first matching config when appropriate.
  • When editing a single model, prevent saving if another entry under the same provider already uses the same logical model name.
  • Dedupe selectedModelDrafts by model name before persist; prefer drafts tied to an existing config id when duplicates appear.
  • i18n: modelAlreadyInList, reusedExistingModel, duplicateModelNameUnderProvider (en-US / zh-CN).

Verification

  • pnpm run type-check:web passes.

- Resolve selected/manual names against existing configs by lowercase key
- Dedupe drafts on save; block duplicate model name under same provider when editing
- Notify when model already in list or when reusing existing saved entry
- Add en-US and zh-CN strings for the new messages
@bobleer bobleer merged commit 28680b3 into GCWing:main Mar 24, 2026
4 checks passed
@bobleer bobleer deleted the feat/web-ui-ai-model-provider-dedup branch March 24, 2026 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant