mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-09-14 19:02:17 +03:00
modelCompatOverrides.isHidden was keyed only by (providerId, modelId), so a provider whose Chat registry and a specialty registry (e.g. Image) share a literal model id had one shared boolean: hiding the model from Chat also hid the identically-ID'd Image model, and vice versa. Add an optional per-entry hiddenModalities map that, when set, wins over the legacy all-modalities isHidden flag for that one modality; entries without it keep the pre-#12172 "hide everywhere" behavior unchanged. Thread an optional modality through getModelIsHidden/getHiddenModelsByProvider/setModelIsHidden and every /v1/models catalog loop (chat defaults preserved, each specialty loop now passes its own modality), and scope the provider page's Chat visibility toggle to "chat" so it stops leaking into other registries.