Closes #37093 Also check this: #37099. So currently in zed for both OpenAI and OpenAI Compatible provider when the url is changed from settings the api_key stored in the provider state is not cleared and it is still used. But if you restart zed the api_key is cleared. Currently zed uses the api_url to store and fetch the api key from credential provider. The behaviour is not changed overall, it's just that we have made it consistent it with the zed restart logic where it re-authenticates and fetches the api_key again. I have attached the video below to show case before and after of this. So all in all the problem was we were not re-authenticating the in case api_url change while zed is still running. Now we trigger a re-authentication and clear the state in case authentication fails. OpenAI Compatible Provider: | Before | After | |--------|--------| | <video src="https://github.com/user-attachments/assets/324d2707-ea72-4119-8981-6b596a9f40a3" /> | <video src="https://github.com/user-attachments/assets/cc7fdb73-8975-4aaf-a642-809bb03ce319" /> | OpenAI Provider: | Before | After | |--------|--------| | <video src="https://github.com/user-attachments/assets/a1c07d1b-1909-4b49-b33c-fc05123e92e7" /> | <video src="https://github.com/user-attachments/assets/d78aeccd-5cd3-4d0c-8b9f-6f98e499d7c8" /> | Release Notes: - Fixed OpenAI and OpenAI Compatible provide API keys being persisted when changing the API URL setting. Authentication is now properly revalidated when settings change. --------- Signed-off-by: Umesh Yadav <git@umesh.dev>