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 01:23:09 -07:00
2026-06-28 10:56:38 -07:00
2026-04-08 13:31:07 -07:00
2026-04-23 23:02:36 -07:00
2026-04-14 12:45:15 -07:00
2026-05-04 23:47:26 -07:00
2026-05-20 20:05:08 -07:00
2026-06-03 17:22:11 -07:00
2026-05-17 22:47:53 -07:00
2026-04-28 18:23:21 -07:00
2026-04-23 15:53:47 -07:00
2026-04-23 23:02:36 -07:00
2026-06-01 09:05:18 -07:00
2026-06-30 01:23:09 -07:00
2026-05-26 21:57:31 -07:00
2026-06-30 01:23:09 -07:00
2026-05-11 21:48:26 -07:00
2026-06-21 02:15:24 -07:00
2026-05-01 12:21:52 -07:00
2026-05-23 04:18:55 -07:00
2026-05-14 04:42:32 -07:00
2026-04-23 23:02:36 -07:00
2026-05-29 08:25:38 -07:00
2026-06-06 01:01:24 -07:00
2026-05-04 23:59:52 -07:00
2026-06-25 23:34:07 -07:00
2026-05-09 14:41:58 -07:00
2026-05-13 21:41:14 -07:00
2026-06-03 22:31:23 -07:00
2026-04-28 23:23:34 -07:00
2026-06-01 18:52:28 -07:00
2026-06-13 23:20:06 -07:00
2026-06-01 19:40:28 -07:00
2026-06-14 15:29:35 -07:00
2026-06-03 09:25:56 -07:00
2026-04-10 12:47:46 -07:00
2026-06-13 06:12:09 -07:00
2026-06-27 21:39:40 -07:00
2026-06-29 18:32:36 -07:00
2026-06-11 09:51:49 -07:00
2026-05-13 06:29:36 -07:00
2026-04-26 00:00:49 -07:00
2026-06-30 01:23:09 -07:00
2026-04-08 11:00:32 -07:00
2026-06-05 01:53:42 -07:00
2026-06-04 23:41:30 -07:00
2026-04-24 08:55:02 -07:00
2026-04-27 23:27:27 -07:00
2026-06-05 11:12:40 +10:00
2026-06-27 13:28:47 -07:00
2026-06-27 09:28:29 -07:00
2026-05-28 14:50:15 -07:00