Fix: API keys saved with correct API_KEY_ prefix

Bug: UI-saved API keys were stored as PROVIDER=key instead of API_KEY_PROVIDER=key. This caused settings.py _write_sensitive_settings() to save keys that models.get_api_key() could not find (it looks for API_KEY_PROVIDER format). Symptom: All API providers failing with 401 auth errors despite correct keys being entered in Settings UI, because stale .env values were used. Fix: Add API_KEY_ prefix in save_dotenv_value call (line 433)

hurtdidit committed Jan 19, 2026 at 22:47 UTC cac87d9d6d8d26d6586d148eca257145b9d11411
1 file changed +1 -1
python/helpers/settings.py
+1 -1
@@ -430,7 +430,7 @@ def _remove_sensitive_settings(settings: Settings):
430 def _write_sensitive_settings(settings: Settings):
431 for key, val in settings["api_keys"].items():
432 if val != API_KEY_PLACEHOLDER:
433 - dotenv.save_dotenv_value(key.upper(), val)
433 + dotenv.save_dotenv_value(f"API_KEY_{key.upper()}", val)
434
435 dotenv.save_dotenv_value(dotenv.KEY_AUTH_LOGIN, settings["auth_login"])
436 if settings["auth_password"] != PASSWORD_PLACEHOLDER: