teknium1
500e133bee
fix(config): Desktop fallback editor keeps per-entry routing; MoA save writes only the moa section
...
Two remaining halves of #89184 (Desktop Settings saves rewriting unrelated
config):
- The `fallback_providers` structured editor normalized every entry down to
`{provider, model}`, so any edit (remove a row, pick a model) re-emitted a
hand-written local-gateway chain without its `base_url` / `api_key` /
`key_env` / `api_mode` — the next autosave persisted bare pairs and the
fallbacks silently routed to the public provider. Entries now carry every
key through; the editor only owns the two selects.
- `PUT /api/model/moa` did `cfg = load_config(); cfg["moa"].update(...);
save_config(cfg)`: the whole default-expanded snapshot went back to disk,
so a Desktop MoA autosave re-persisted every other section too (the
2026-09-10 repro: `fallback_providers: []` written alongside the MoA block
the user had just edited). It now saves `{"moa": ...}` with
`merge_existing=True`, the same section-scoped write every other sparse
writer uses since #110535 . Hand-edited moa keys (#58819 ) still survive.
The `model.default not persisted / base_url cleared` symptom from the 0.20.4
report no longer reproduces on main through the real REST path (Config page
diffs against a baseline since 5361867c6d32; `_denormalize_config_from_web`
keeps the on-disk `model:` block).
2026-09-14 05:56:29 -07:00
..
2026-09-13 09:40:44 -07:00
2026-09-13 05:07:11 -07:00
2026-09-13 05:09:43 -07:00
2026-09-13 21:30:02 -07:00
2026-09-14 05:56:29 -07:00
2026-09-12 08:25:54 -07:00
2026-09-07 08:06:48 -07:00
2026-09-07 06:13:16 -07:00
2026-09-11 19:01:47 -07:00
2026-09-13 05:07:11 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 14:48:09 -07:00
2026-09-13 05:09:43 -07:00
2026-09-11 03:45:33 +05:30
2026-09-11 03:45:33 +05:30
2026-09-12 12:02:55 +05:30
2026-09-12 22:07:41 -07:00
2026-09-12 22:07:41 -07:00
2026-09-12 22:07:41 -07:00
2026-09-13 05:07:11 -07:00
2026-09-09 21:17:35 +05:30
2026-09-12 22:07:41 -07:00
2026-09-13 05:07:11 -07:00
2026-09-12 22:07:41 -07:00
2026-09-13 14:35:02 -07:00
2026-09-13 05:07:11 -07:00
2026-09-13 20:57:03 -07:00
2026-09-08 05:10:57 -07:00
2026-09-08 03:06:30 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 14:35:32 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 14:35:32 -07:00
2026-09-13 05:21:02 -07:00
2026-09-14 05:28:46 -07:00
2026-09-13 20:41:41 -07:00
2026-09-13 05:21:02 -07:00
2026-09-13 20:54:50 -07:00
2026-09-13 14:35:32 -07:00
2026-09-13 05:21:02 -07:00
2026-09-12 22:00:02 -07:00
2026-09-13 14:35:32 -07:00
2026-09-08 13:39:17 -07:00
2026-09-08 13:39:17 -07:00
2026-09-13 16:43:50 -07:00
2026-09-13 20:50:10 -07:00
2026-09-13 05:07:11 -07:00
2026-09-11 11:54:49 -07:00
2026-09-12 08:25:36 -07:00
2026-09-13 20:41:41 -07:00
2026-09-12 16:17:04 -07:00
2026-09-14 05:25:01 -07:00
2026-09-13 05:09:06 -07:00
2026-09-07 04:46:37 -07:00
2026-09-12 05:56:15 -07:00
2026-09-10 01:08:18 -07:00
2026-09-13 05:07:50 -07:00
2026-09-11 06:37:27 -07:00
2026-09-13 05:07:11 -07:00
2026-09-13 05:09:06 -07:00
2026-09-12 20:57:21 -07:00
2026-09-12 05:56:15 -07:00
2026-09-13 05:21:02 -07:00
2026-09-13 05:07:11 -07:00
2026-09-13 09:18:02 -07:00
2026-09-10 01:25:45 -07:00
2026-09-13 05:09:06 -07:00
2026-09-13 20:56:26 -07:00
2026-09-12 08:24:11 -07:00
2026-09-13 14:41:26 -07:00
2026-09-06 05:41:46 -07:00
2026-09-13 20:51:06 -07:00
2026-09-12 21:39:10 -07:00
2026-09-13 05:21:02 -07:00
2026-09-11 03:45:33 +05:30
2026-09-13 14:48:09 -07:00
2026-09-13 15:41:01 -07:00
2026-09-13 15:41:01 -07:00
2026-09-13 15:41:01 -07:00
2026-09-10 01:00:19 -07:00
2026-09-12 15:00:37 +05:30
2026-09-07 00:51:41 -07:00
2026-09-13 15:41:01 -07:00
2026-09-06 07:20:24 -07:00
2026-09-13 05:07:11 -07:00
2026-09-11 03:45:32 +05:30
2026-09-13 05:08:29 -07:00
2026-09-13 14:43:19 -07:00
2026-09-07 14:16:57 -07:00
2026-09-07 14:16:57 -07:00
2026-09-13 14:37:17 -07:00
2026-09-13 05:09:06 -07:00
2026-09-07 06:04:06 -07:00
2026-09-07 04:46:54 -07:00
2026-09-13 06:06:46 -07:00
2026-09-07 04:46:54 -07:00
2026-09-07 04:46:54 -07:00
2026-09-13 05:09:43 -07:00
2026-09-09 12:18:58 -07:00
2026-09-09 12:18:58 -07:00
2026-09-07 04:55:17 -07:00
2026-09-14 05:28:46 -07:00
2026-09-07 05:56:50 -07:00
2026-09-09 10:28:52 -07:00
2026-09-12 08:47:21 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 16:43:50 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 16:43:50 -07:00
2026-09-13 05:07:50 -07:00
2026-09-12 08:34:43 -07:00
2026-09-12 20:49:18 -07:00
2026-09-11 19:50:46 -07:00
2026-09-07 06:15:43 -07:00
2026-09-13 05:07:11 -07:00
2026-09-10 04:22:38 -07:00
2026-09-13 20:54:50 -07:00
2026-09-12 05:10:51 -07:00
2026-09-13 16:43:50 -07:00
2026-09-11 03:45:32 +05:30
2026-09-13 16:43:50 -07:00
2026-09-13 21:06:39 -07:00
2026-09-10 09:11:00 -07:00
2026-09-07 08:08:04 -07:00
2026-09-12 01:35:05 -07:00
2026-09-12 01:35:05 -07:00
2026-09-12 14:05:36 -07:00
2026-09-13 21:07:35 -07:00
2026-09-11 03:45:33 +05:30
2026-09-11 03:45:31 +05:30
2026-09-10 18:11:25 -07:00
2026-09-10 14:56:55 -04:00
2026-09-12 08:24:26 -07:00
2026-09-09 04:38:01 -07:00
2026-09-13 05:07:11 -07:00
2026-09-09 04:38:01 -07:00
2026-09-12 07:57:13 -07:00
2026-09-09 04:38:01 -07:00
2026-09-10 05:09:15 -07:00
2026-09-12 08:26:48 -07:00
2026-09-06 13:36:12 -07:00
2026-09-09 04:38:01 -07:00
2026-09-09 04:38:01 -07:00
2026-09-13 05:07:11 -07:00
2026-09-11 03:45:31 +05:30
2026-09-12 08:27:53 -07:00
2026-09-13 14:33:11 -07:00
2026-09-13 14:33:11 -07:00
2026-09-06 05:34:01 -07:00
2026-09-10 01:00:19 -07:00
2026-09-13 15:45:57 -07:00
2026-09-13 05:08:29 -07:00
2026-09-10 14:56:55 -04:00
2026-09-13 05:07:50 -07:00
2026-09-13 05:07:11 -07:00
2026-09-07 02:09:34 -07:00
2026-09-09 11:31:10 -07:00
2026-09-13 05:07:50 -07:00
2026-09-13 05:07:50 -07:00
2026-09-13 05:07:50 -07:00
2026-09-13 05:09:06 -07:00
2026-09-11 06:24:54 -07:00
2026-09-11 06:24:54 -07:00
2026-09-11 06:24:54 -07:00
2026-09-11 06:24:54 -07:00
2026-09-13 05:21:02 -07:00
2026-09-11 06:37:27 -07:00
2026-09-09 13:30:28 -07:00
2026-09-11 06:24:54 -07:00
2026-09-13 14:45:10 -07:00
2026-09-13 05:32:38 -07:00
2026-09-12 08:25:54 -07:00
2026-09-12 08:25:54 -07:00
2026-09-12 08:25:54 -07:00
2026-09-07 22:25:12 -07:00
2026-09-12 05:10:31 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 05:08:29 -07:00
2026-09-11 03:45:31 +05:30
2026-09-12 21:47:53 -07:00
2026-09-13 05:21:02 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 05:07:11 -07:00
2026-09-11 06:24:54 -07:00
2026-09-08 19:52:26 +05:30
2026-09-12 08:34:43 -07:00
2026-09-13 05:07:50 -07:00
2026-09-12 08:25:54 -07:00
2026-09-13 05:08:20 -07:00
2026-09-13 05:08:20 -07:00
2026-09-13 05:21:02 -07:00
2026-09-13 14:44:38 -07:00
2026-09-13 15:41:01 -07:00
2026-09-06 14:53:33 +05:30
2026-09-10 11:48:01 -07:00
2026-09-13 19:19:32 -07:00
2026-09-09 21:16:40 +05:30
2026-09-13 19:19:32 -07:00
2026-09-13 05:07:50 -07:00
2026-09-09 04:38:01 -07:00
2026-09-07 07:11:36 -07:00
2026-09-12 06:13:44 -07:00
2026-09-11 15:28:37 -07:00
2026-09-13 05:07:11 -07:00
2026-09-12 18:35:21 -07:00
2026-09-11 03:45:33 +05:30
2026-09-07 05:56:33 -07:00
2026-09-11 06:37:27 -07:00
2026-09-11 19:50:46 -07:00
2026-09-13 21:30:02 -07:00
2026-09-13 20:55:29 -07:00
2026-09-13 20:55:29 -07:00
2026-09-13 05:07:11 -07:00
2026-09-09 02:36:00 -07:00