0.134.92
Fixed
- Проверка провайдера из формы модалки: кнопка «Проверить подключение» в модалках создания/редактирования провайдера теперь проверяет реквизиты из формы (до сохранения), а не сохранённые. Раньше при редактировании проверялся сохранённый конфиг — нельзя было убедиться в работоспособности новых api_key/api_base до их сохранения. Пустой api_key в форме фолбэчится на расшифрованный сохранённый ключ (не нужно вводить заново, если не меняется). Путь создания переведён с legacy
TestProvider(Chat Completion, тратил токены) наTestConnectivity(GET /models, бесплатно) — оба пути унифицированы. КэшtestCacheобновляется только при проверке сохранённого конфига (кнопка в списке), так что бейдж отражает персистенное состояние, а не эксперименты в модалке.
Security
- Защита от утечки ключа через тест-эндпоинт:
POST /providers/{id}/testотвергает тело, гдеproviderне совпадает с сохранённым типом — иначе API-клиент мог бы перенаправить расшифрованный сохранённый ключ на сторонний endpoint. Сохранённый ключ дешифруется только если форма его не предоставляет. Добавлены scheme-валидацияapi_base(только абсолютные http(s) URL) иhttp.MaxBytesReader(64 KiB) для тест-хендлеров.
Changed
- Инвалидация кэша при Update: после изменения провайдера
testCacheсбрасывается, чтобы бейдж в списке переключался на свежую проверку health-checker’а, а не показывал устаревший результат до истечения TTL. - Новый эндпоинт
POST /api/v1/providers/test(без id) для проверки unsaved-конфига из модалки создания; legacyPOST /settings/provider/testпомечен deprecated (без фронтенд-потребителя).