gsxdsm
0e8f6769ba
FN-8666: add credential instance pickers
...
Add credential-instance selection across dashboard model configuration surfaces.
- Expose provider credential instances in custom model dropdowns and task, workflow, and settings forms.
- Persist per-role credential-instance overrides through dashboard APIs and effective model resolution.
- Document credential-instance precedence and cover dropdown/settings behavior, including task state synchronization.
Files changed:
.changeset/fn-8666-credential-instance-picker.md | 7 ++
docs/settings-reference.md | 2 +
docs/workflow-steps.md | 2 +-
packages/dashboard/app/api.ts | 1 +
packages/dashboard/app/api/models-usage.ts | 27 ++++-
packages/dashboard/app/api/tasks.ts | 8 ++
.../app/components/CustomModelDropdown.css | 12 ++-
.../app/components/CustomModelDropdown.tsx | 71 ++++++++++++-
.../dashboard/app/components/InlineCreateCard.tsx | 23 +++-
packages/dashboard/app/components/ListView.tsx | 29 +++++-
.../app/components/ModelSelectionModal.tsx | 25 ++++-
.../dashboard/app/components/ModelSelectorTab.tsx | 29 +++++-
packages/dashboard/app/components/NewTaskModal.tsx | 23 +++-
.../dashboard/app/components/QuickEntryBox.tsx | 28 +++++
.../dashboard/app/components/SettingsModal.tsx | 2 +
.../dashboard/app/components/TaskDetailModal.tsx | 32 +++++-
packages/dashboard/app/components/TaskForm.tsx | 18 ++++
.../app/components/WorkflowNodeEditor.tsx | 13 ++-
.../app/components/WorkflowSettingsPanel.tsx | 38 ++++++-
...ustomModelDropdown.credential-instance.test.tsx | 111 ++++++++++++++++++++
.../__tests__/WorkflowSettingsPanel.test.tsx | 9 +-
.../app/components/effective-model-resolution.ts | 8 +-
.../settings/sections/GlobalModelsSection.tsx | 31 +++++-
.../settings/sections/ProjectModelsSection.tsx | 116 ++++++++++++++++-----
.../ProjectModelsSection.chatDefault.test.tsx | 33 +++++-
packages/dashboard/app/hooks/useFavorites.ts | 6 +-
packages/dashboard/app/hooks/useModelsCache.ts | 5 +-
.../src/routes/register-task-workflow-routes.ts | 17 ++-
28 files changed, 655 insertions(+), 71 deletions(-)
Fusion-Task-Id: FN-8666
Fusion-Task-Lineage: 6c3711b3-68b8-47a0-ac36-4b64846adf39
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-08-01 04:03:26 -07:00
gsxdsm
6cff782308
FN-7710: refresh model caches so Grok/Cursor CLI models appear without reopening Settings
...
Adds a shared single-flight cache refresh so newly enabled Grok/Cursor CLI providers show their models in pickers immediately, instead of requiring a Settings reopen.
- useModelsCache now exposes a shared refreshModelsCache() that clears the SWR MODELS cache key and notifies subscribers
- AuthenticationSection calls refreshModelsCache() after toggling cursor-cli/grok-cli/claude-cli/llama-cpp providers
- Server-side cursor/grok model-cache lookups use a short negative-TTL so transient cold-start empty results self-heal instead of sticking
- Adds regression tests covering the cache refresh flow, hook behavior, and cursor/grok cache TTL self-healing
- Adds changeset (patch) documenting the fix
Files changed:
.../fn-7710-cli-provider-model-cache-refresh.md | 7 +
...thenticationSection.modelsCacheRefresh.test.tsx | 137 ++++++++++++++++++
.../settings/sections/AuthenticationSection.tsx | 32 +++--
.../app/hooks/__tests__/useModelsCache.test.ts | 159 ++++++++++++++++++++-
packages/dashboard/app/hooks/useModelsCache.ts | 72 +++++++++-
.../src/__tests__/cursor-model-cache.test.ts | 34 +++++
.../src/__tests__/grok-model-cache.test.ts | 33 +++++
packages/dashboard/src/cursor-model-cache.ts | 23 ++-
packages/dashboard/src/grok-model-cache.ts | 23 ++-
9 files changed, 500 insertions(+), 20 deletions(-)
Fusion-Task-Id: FN-7710
Fusion-Task-Lineage: ebac46ba-5b3e-41f2-acc4-26f9139c0f71
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-09 19:58:03 -07:00
Fusion (runfusion.ai)
cfc70b21bd
feat(FN-5202): add SWR caching for chat agents, skills, and models
...
This merge introduces SWR-style caching across the dashboard to eliminate redundant fetches for models, agents, and skills, significantly refactoring ChatView.tsx (reduced by ~140 lines) by offloading cache coordination to three new dedicated hooks (`useAgentsMapCache`, `useDiscoveredSkillsCache`, `
Fusion-Task-Id: FN-5202
2026-05-20 03:19:44 -07:00