Selecting a connected external provider (Anthropic, OpenAI, Google, etc.) and refreshing the page reverted the picker back to no selection. Root cause is that `PersistedInferenceParams` in `chat-settings-api.ts` excludes `checkpoint` from the server-side settings payload by design. Local model selections survive refresh because the backend re-derives them from `/api/inference/status.active_model`, but external selections have no backend mirror, so they were lost. Fix: persist `external::*` checkpoints to a small dedicated `localStorage` key (`unsloth_chat_last_external_checkpoint`) and hydrate from it on store init. Local checkpoints continue to come from the backend status as before; only external ids are mirrored client-side. `setCheckpoint` writes the key when an external id is selected and clears it when switching back to a local id, and `clearCheckpoint` clears it so the picker does not snap back after an explicit reset. |
||
|---|---|---|
| .. | ||
| app | ||
| assets | ||
| components | ||
| config | ||
| features | ||
| hooks | ||
| lib | ||
| shared | ||
| stores | ||
| types | ||
| utils | ||
| index.css | ||
| main.tsx | ||
| speech-recognition.d.ts | ||