gsxdsm
b5da5d310a
FN-7263: refresh custom provider model lists
Refresh persisted custom-provider model lists from saved endpoints and expose manual refresh controls.
- Add dashboard API helpers and routes to refresh one or all custom-provider model lists while preserving concurrent settings edits.
- Start background model refresh from serve, dashboard, and daemon startup paths after the server begins listening.
- Add Settings UI refresh actions, row-level status messaging, styles, docs, and regression coverage for refresh behavior.
Files changed:
.changeset/fn-7263-custom-provider-model-refresh.md | 7 +
docs/dashboard-guide.md | 6 +-
docs/settings-reference.md | 2 +-
packages/cli/src/commands/__tests__/daemon.test.ts | 59 +++++
.../cli/src/commands/__tests__/dashboard.test.ts | 51 ++++
packages/cli/src/commands/__tests__/serve.test.ts | 59 ++++-
packages/cli/src/commands/daemon.ts | 39 +++-
packages/cli/src/commands/dashboard.ts | 10 +
packages/cli/src/commands/serve.ts | 11 +-
.../app/__tests__/api-custom-providers.test.ts | 43 ++++
packages/dashboard/app/api/legacy.ts | 11 +
.../app/components/CustomProvidersSection.css | 41 +++-
.../app/components/CustomProvidersSection.tsx | 68 +++++-
.../__tests__/CustomProvidersSection.test.tsx | 227 ++++++++++++++++++
packages/dashboard/src/index.ts | 6 +
.../__tests__/custom-provider-routes.test.ts | 255 ++++++++++++++++++++
.../src/routes/__tests__/custom-providers.test.ts | 12 +
.../src/routes/register-custom-provider-routes.ts | 259 ++++++++++++++++-----
18 files changed, 1101 insertions(+), 65 deletions(-)
Fusion-Task-Id: FN-7263
Fusion-Task-Lineage: 60ee0637-ac85-409f-a376-c01f4bc8e8c5
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-06-30 01:23:09 -07:00
..
2026-06-30 00:09:36 -07:00
2026-06-30 01:23:09 -07:00
2026-06-26 00:28:31 -07:00
2026-06-22 03:34:14 -07:00
2026-06-26 17:38:41 -07:00
2026-06-26 17:38:41 -07:00
2026-06-26 17:38:41 -07:00
2026-05-12 19:38:39 -07:00
2026-06-16 22:20:49 -07:00
2026-05-16 22:26:42 -07:00
2026-06-04 23:39:07 -07:00
2026-06-28 16:51:49 -07:00
2026-06-04 22:54:49 -07:00
2026-06-26 00:57:32 -07:00
2026-06-05 02:38:38 -07:00
2026-06-05 03:56:29 -07:00
2026-06-15 02:30:41 -07:00
2026-06-05 03:41:54 -07:00
2026-06-27 17:46:17 -07:00
2026-06-21 13:25:41 -07:00
2026-05-05 00:31:36 -07:00
2026-05-05 00:21:21 -07:00
2026-05-07 17:24:11 -07:00
2026-05-14 04:42:32 -07:00
2026-06-29 23:17:49 -07:00
2026-06-30 00:03:37 -07:00
2026-05-11 16:33:16 -07:00
2026-06-10 10:34:36 -07:00
2026-05-20 04:41:04 -07:00
2026-05-16 12:56:31 -07:00
2026-05-18 04:01:51 -07:00
2026-06-18 19:12:58 -07:00
2026-06-10 10:34:36 -07:00
2026-06-01 08:13:36 -07:00
2026-06-24 23:32:51 -07:00
2026-06-16 15:08:24 -07:00
2026-06-30 01:23:09 -07:00
2026-05-18 14:46:20 -07:00
2026-06-26 17:38:41 -07:00
2026-06-15 20:34:52 -07:00
2026-06-15 20:34:52 -07:00
2026-06-30 00:09:36 -07:00
2026-06-30 00:09:36 -07:00
2026-06-25 08:35:44 -07:00
2026-06-16 15:11:09 -07:00
2026-06-16 15:11:09 -07:00
2026-06-16 05:56:11 -07:00
2026-06-27 12:25:53 -07:00
2026-06-30 00:09:36 -07:00
2026-06-09 04:27:53 -07:00
2026-06-26 16:14:44 -07:00
2026-06-28 01:17:22 -07:00
2026-06-16 15:08:24 -07:00
2026-06-27 21:39:40 -07:00
2026-06-09 04:27:53 -07:00
2026-05-17 23:21:34 -07:00
2026-05-06 18:40:52 -07:00
2026-05-11 06:47:43 -07:00
2026-05-11 06:47:43 -07:00
2026-06-28 13:23:00 -07:00
2026-05-07 04:17:52 -07:00
2026-06-28 17:14:00 -07:00
2026-06-26 00:28:31 -07:00
2026-06-22 11:49:52 -07:00
2026-06-27 22:15:53 -07:00
2026-06-26 17:38:41 -07:00
2026-06-30 00:03:37 -07:00
2026-06-09 20:08:18 -07:00
2026-06-26 17:38:41 -07:00
2026-06-13 16:30:28 -07:00
2026-06-03 07:51:38 -07:00
2026-06-21 20:28:33 -07:00