- Never case-fold a filesystem path when looking up an override. Two POSIX
paths differing only in case are two different files, so a near miss must
load defaults rather than replay another model's context and GPU pin. Repo
ids still fold, which is what the migration needs.
- Match a quant suffix against the loader's own quant pattern instead of a
length heuristic. "/models/foo:bar.gguf" is one valid POSIX filename, and
splitting it grafted /models/foo's launch flags onto an unrelated model.
- Retry a load once without the saved gpu_ids when the loader rejects the pin.
The pre-flight check cannot mirror every rule the loader applies (a Vulkan
diffusion GGUF refuses GPU selection outright, and the rules move), so this
stops chasing them one at a time: a stale placement preference must never be
the reason a request cannot be served.
- Make an explicit remove win over config fields sent in the same payload.
- Seed only finished requests on the monitor's first snapshot. A request still
running when Studio loads is traffic the user has not seen, not history.
- Nudge the detail effect when the in-flight guard refuses a fetch. Nothing
else changes its deps when the older fetch settles, so a terminal reply could
stay truncated forever.
- Invalidate pending row lookups when opening settings from a detail card, not
just from a row.
- Mark the covered detail pane inert so it leaves the focus order.
- Refuse to open settings for a variant-required GGUF whose quant could not be
resolved: the picker matches variants exactly and would never find the saved
config, while the API falls back to the bare key and would apply it.
- Mirror to the server only for GGUFs. The auto-switch resolver indexes GGUFs,
so a safetensors config was being advertised as applied on API load when no
API request could ever apply it.