gsxdsm
9c2a264322
FN-7398: restore Anthropic model selection
Restore Anthropic model selector discovery across API-key, OAuth subscription, and Claude CLI flows.
- Read injected auth storage when building /api/models so Settings connection state feeds model availability.
- Keep Anthropic subscription OAuth separate from direct Anthropic API-key rows while allowing enabled Claude CLI models to appear.
- Add regression coverage for selector rendering, stale empty catalog refresh, and authenticated model-route filtering.
- Document the restored Anthropic provider surfaces and add a patch changeset.
Files changed:
.changeset/fn-7398-anthropic-model-selector.md | 7 ++
docs/settings-reference.md | 4 +-
.../components/__tests__/ModelSelectorTab.test.tsx | 105 +++++++++++++++++
.../app/hooks/__tests__/useModelsCache.test.ts | 40 +++++++
.../dashboard/src/__tests__/routes-auth.test.ts | 125 ++++++++++++++++++++-
.../dashboard/src/routes/register-model-routes.ts | 60 +++++++++-
6 files changed, 333 insertions(+), 8 deletions(-)
Fusion-Task-Id: FN-7398
Fusion-Task-Lineage: 5d1b1b8e-9b8b-40fe-b76f-7d6142e0e21f
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
2026-07-01 15:39:34 -07:00
..
2026-07-01 15:39:34 -07:00
2026-07-01 15:39:34 -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-07-01 15:39:34 -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-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-07-01 09:24:50 -07:00
2026-07-01 08:01:59 -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-30 13:20:27 -07:00
2026-05-07 04:17:52 -07:00
2026-06-30 23:45:01 -07:00
2026-06-26 00:28:31 -07:00
2026-06-22 11:49:52 -07:00
2026-07-01 15:39:34 -07:00
2026-06-26 17:38:41 -07:00
2026-07-01 15:39:34 -07:00
2026-07-01 15:39:34 -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-07-01 15:39:34 -07:00
2026-06-21 20:28:33 -07:00