feat(FN-2449): merge fusion/fn-2449

This commit is contained in:
gsxdsm
2026-04-24 08:38:24 -07:00
parent f69fb4fe76
commit 4f633be65e
10 changed files with 471 additions and 64 deletions

View File

@@ -401,6 +401,11 @@ Key server capabilities:
- Project-scoped: resolves project context from query param or engine manager
- **Chat streaming**: `/api/chat/sessions/:id/messages` (`routes.ts` + `chat.ts`)
- Streams assistant responses as SSE events for chat sessions
- **Chat session queries**: `/api/chat/sessions` (`routes.ts`)
- Existing list behavior is unchanged (`status=active|archived|all` returns an array)
- Quick Chat resume uses targeted lookup params: `agentId`, optional `modelProvider` + `modelId`, plus `resume=1`
- Validation requires `modelProvider` and `modelId` together; partial model pairs return `400`
- Targeted lookup returns only the newest matching active session (or `null`) to avoid scanning every active session client-side
- **Task log stream**: `/api/tasks/:id/logs/stream` (`server.ts`)
- SSE endpoint for live task log streaming with project scope resolution
- **Dev-server stream**: `/api/dev-server/logs/stream` (`dev-server-routes.ts`)

View File

@@ -44,6 +44,9 @@ Quick Chat is an optional floating panel for fast, project-scoped assistant conv
- Controlled by the project setting `showQuickChatFAB`
- Supports agent mentions (`@agent`) and file mentions
- Uses the same model/provider infrastructure as full Chat view
- `switchSession()` resumes the existing thread for the selected target (agent-only or agent+model)
- `startFreshSession()` is the explicit new-thread action and always creates a new persisted session
- Resume lookups use a targeted session query instead of loading the full active session list first
## Mailbox View