Commit Graph

3148 Commits

Author SHA1 Message Date
Fusion
8f2b370b9d feat(FN-4116): fix github tracking issue creation
Fixes GitHub CLI issue creation by repairing the `gh issue create` call in the dashboard and adds logging for tracking failures, with tests covering both the core GitHub module and the tracking layer.

Fusion-Task-Id: FN-4116
2026-05-12 08:28:44 -07:00
Fusion
e7f7965aa6 fix(FN-001): update stale mobile-scroll-snap test and add AGENTS.md pitfall note 2026-05-12 23:27:43 +08:00
Fusion
32856a3b15 feat(FN-001): complete Step 3 — regression tests\n\n- Add board-mobile-corner-rendering.test.ts stylesheet regression\n- Add board-mobile-view-switch.test.tsx component regression\n- Register new test in vitest.config.ts qualityAppTests 2026-05-12 23:27:43 +08:00
Fusion
edfef23964 feat(FN-001): complete Step 2 — mobile board CSS fix\n\n- Change scroll-snap-type from mandatory to proximity\n- Add overflow-anchor: none\n- Add width: 100% to mobile .board and .list-view\n- Update board-mobile.test.tsx scroll-snap assertion 2026-05-12 23:27:43 +08:00
gsxdsm
9732f5f6f6 chore(release): v0.27.1
Version bump via changesets.
2026-05-12 07:48:21 -07:00
Fusion
1d9bd52b41 fix(FN-4112): remove mobile preset grid scroll cap
- Remove the inner preset grid max-height and overflow cap in the New Agent dialog mobile layout
- Add a dashboard CSS regression test that asserts the mobile media block keeps the preset grid fully visible
- Add a patch changeset for @runfusion/fusion covering the mobile blank-space fix

Fusion-Task-Id: FN-4112
2026-05-12 07:47:11 -07:00
Fusion
266eafaecd feat(FN-4103): add default agents selection in MailboxView
MailboxView's default agents selection logic was implemented and refactored to be more concise (14 lines removed), with corresponding test coverage for the all-agents default selection behavior added to MailboxView.test.tsx.

Fusion-Task-Id: FN-4103
2026-05-12 07:47:11 -07:00
Fusion
2d46a882f0 feat(FN-4078): add ntfy access token support to notifications
Adds ntfy access token support to Fusion's notification system, wiring the token through the core settings schema, dashboard UI (SettingsModal), engine notifier, and notification pipeline, with corresponding tests across core, dashboard, and engine packages; also updates settings and storage documen

Fusion-Task-Id: FN-4078
2026-05-12 07:47:11 -07:00
Fusion
e0fcc7e2fa feat(FN-4095): restore green verification gates and add QuickChatFAB regres
Restores green verification gates for executor review verdicts (FN-4095) with a targeted core store change, and adds a regression test ensuring the QuickChatFAB scrolls to the bottom when opened.

Fusion-Task-Id: FN-4095
2026-05-12 07:47:11 -07:00
Fusion
d98c053eda feat(FN-4088): split AgentDetailView tests into seven focused suites with s
Refactors the monolithic `AgentDetailView.test.tsx` into seven focused test suites (core, advanced-settings, chain-of-command, editors, logs-tasks-runs, settings, skills-procedure) plus a shared test helpers module, extracting 5,793 lines from the original 5,406-line file.

Fusion-Task-Id: FN-4088
2026-05-12 07:47:10 -07:00
Fusion
ca0cb2b52e feat(FN-4076): tighten mobile agents header and popup, add compact planning
Merges FN-4076: tightens the mobile Agents header and aligns the controls popup on smaller screens, while also introducing compact planning breakdown task creation with preserved payload coverage — tests for scoped and empty-generated planning payloads were added alongside fixes to the legacy API an

Fusion-Task-Id: FN-4076
2026-05-12 07:47:10 -07:00
Fusion
0eae54d9b2 feat(FN-4054): surface inline chat failures with interactive error referenc
Implements inline chat failure rendering in the ChatView with interactive reference affordances, proper attribution preservation in failure bubbles, and aligned error typing across the chat stream pipeline, with corresponding tests and documentation updates.

Fusion-Task-Id: FN-4054
2026-05-12 07:47:10 -07:00
Fusion
7002427c90 feat(FN-4070): add workflow revision forking for task retries
Implements workflow revision forking with a new per-project setting, allowing follow-up tasks to inherit a fork of the calling task's workflow rather than the original revision. The feature adds classification logic, fork execution, and the settings UI, with docs and tests covering the full flow.

Fusion-Task-Id: FN-4070
2026-05-12 07:47:10 -07:00
Fusion
a65b8019d6 feat(FN-4065): fix sidebar action overflow in AgentsView
Fixes sidebar action containment in the dashboard AgentsView component and adds test coverage for the sidebar action overflow contract.

Fusion-Task-Id: FN-4065
2026-05-12 07:47:10 -07:00
Fusion
6cd5fee317 feat(FN-4081): keep mobile timestamps inline in task detail modal
FN-4081 keeps task detail timestamps inline on mobile (no collapsible "more" row), with accompanying docs updates and a changeset for `@runfusion/fusion`. A test contract was updated to match the responsive layout change.

Fusion-Task-Id: FN-4081
2026-05-12 07:47:10 -07:00
Fusion
9d52cc4163 feat(FN-4077): fix mobile switcher trigger sizing in ChatView
Fixes the mobile switcher trigger sizing in ChatView by updating CSS dimensions and adjusting the component's conditional rendering logic, with corresponding test coverage added.

Fusion-Task-Id: FN-4077

Fusion-Task-Lineage: 966eafb9-35fd-4ac6-ab4a-42c0e96a2584
2026-05-12 07:47:10 -07:00
Fusion
79182d212f feat(FN-4075): repair room reply session creation
Fixes FN-4075: repairs room reply session creation logic in the chat module, with accompanying tests added to cover the fix.

Fusion-Task-Id: FN-4075
2026-05-12 07:47:10 -07:00
Fusion
afa2240fd6 feat(FN-4029): expose database health in API and store contracts
Adds database health endpoints to the API layer (FN-4029), exposing a new store health accessor through `api-node.ts` and `api/legacy.ts`, with aligned auth middleware integration tests and updated architecture documentation.

Fusion-Task-Id: FN-4029
2026-05-12 07:47:10 -07:00
gsxdsm
35c0da57e3 chore(release): v0.27.0
Version bump via changesets.
2026-05-11 21:52:56 -07:00
Fusion
4a09924c56 feat(FN-4050): add one-click install support for reports plugin
- Add reports plugin to bundled plugin resolver so it can be installed from packaged assets
- Expose reports plugin in dashboard plugin manager and server routes for one-click install flows
- Add CLI and dashboard test coverage for bundled install behavior and plugin route availability
- Update reports/plugin management/settings docs and include a changeset for @runfusion/fusion
2026-05-11 21:48:26 -07:00
Fusion
287ebaf102 feat(FN-4053): unify task ID allocation with store-owned distributed alloca
Unifies task ID allocation under a single store-owned distributed allocator, removing redundant ID-generation logic from dashboard route handlers and simplifying the overall flow; Step 1 merges the allocation authority into the store, Step 3 removes the now-unnecessary mixed-path routing, and tests

Fusion-Task-Id: FN-4053
2026-05-11 21:48:26 -07:00
Fusion
8f7f728dd6 feat(FN-4064): keep interview sessions visible when resuming missions
Added interview session visibility on task resume in MissionManager, with comprehensive test coverage for the resume-session interview behavior.

Fusion-Task-Id: FN-4064
2026-05-11 21:48:26 -07:00
Fusion
b4075eac42 feat(FN-3936): apply workflow revision tokenized inline create styles
Applies tokenized CSS variables to inline task creation cards within workflow revision views, fixing a style regression in the inline create component.

Fusion-Task-Id: FN-3936
2026-05-11 21:48:26 -07:00
Fusion
fab4ed4e61 feat(FN-4062): add global thinking log setting to persist agent reasoning a
Adds a global `thinkingLogEnabled` setting that gates AI thinking log persistence across the engine (executor, reviewer, merger, triage, step-session) and exposes the control in the dashboard Settings modal, with tests verifying settings parity and modal behavior.

Fusion-Task-Id: FN-4062
2026-05-11 21:48:26 -07:00
Fusion
c8d530dec1 feat(FN-4057): add printing press built-in plugin entry
Bundled the Printing Press plugin into the dashboard by adding it as a built-in entry in `PluginManager.tsx` with corresponding tests and documentation updates, and included a changeset to publish the change under `@runfusion/fusion`.

Fusion-Task-Id: FN-4057
2026-05-11 21:48:26 -07:00
Fusion
1f7958fc0f feat(FN-3935): align engineer role routing with explicit assignment and del
Centralized routing policy helpers in core and aligned both direct assignment and delegation to route engineer-role agents consistently, ensuring assigned tasks respect explicit engineer routing the same way delegated tasks do. Added comprehensive test coverage across core, CLI, dashboard, and engin

Fusion-Task-Id: FN-3935

Fusion-Task-Lineage: 069f4d54-f7a8-4bd3-a2c3-4de830de042f
2026-05-11 21:48:26 -07:00
Fusion
6fd19dd0db fix(FN-4061): prevent mobile chat session switcher title clipping
- Add explicit normal line-height on mobile session trigger and option rows
- Render session option titles as block elements with normal line-height for wrapped text
- Extend ChatView mobile CSS regression assertions to cover new line-height and display rules

Fusion-Task-Id: FN-4061
2026-05-11 21:48:26 -07:00
Fusion
17f1bfe041 feat(FN-4060): fix mobile keyboard layout regression in QuickChatFAB compos
Fixes the keyboard-up composer gap in QuickChatFAB (Step 2), with companion regression tests covering the mobile keyboard layout and QuickChatFAB component behavior.

Fusion-Task-Id: FN-4060

Fusion-Task-Lineage: 341b16b1-47db-4e23-b9fe-87cf0782da6a
2026-05-11 21:48:26 -07:00
Fusion
448ee188ed feat(FN-4058): add bulk lifecycle transitions to agent detail view
Adds a bulk actions menu to the AgentDetailView header with support for bulk lifecycle transitions, backed by a new test suite for the feature.

Fusion-Task-Id: FN-4058
2026-05-11 21:48:26 -07:00
Fusion
28d051cd79 feat(FN-4059): keep task timestamps on a single row in detail modal
Adds a UI refinement to the TaskDetailModal that keeps timestamps on a single row instead of wrapping, with matching tests and docs for FN-4059.

Fusion-Task-Id: FN-4059
2026-05-11 21:48:26 -07:00
Fusion
9b531dab65 feat(FN-4056): remove queued warning toasts
Removed queued warning toasts from chat queueing flows in `useChat` and `useQuickChat` hooks, with corresponding test coverage for the queueing behavior without the toast.

Fusion-Task-Id: FN-4056
2026-05-11 21:48:26 -07:00
Fusion
4908b862f9 feat(FN-4052): add mobile oauth manual-code scroll assist and modal flow te
Adds mobile OAuth manual-code fallback with scroll assistance in the OAuthManualCodeForm component, including full test coverage across ModelOnboardingModal and SettingsModal flows, plus documentation updates. Also introduces weighted test shard planning for CI.

Fusion-Task-Id: FN-4052
2026-05-11 21:48:26 -07:00
Fusion
2484591ae2 feat(FN-4047): add responsive compact timestamps and mobile icon-only contr
Restored compact timestamp rendering in AgentDetailView and TaskDetailModal, added responsive timestamp layout for mobile and desktop, and added mobile icon-only stop/run controls to AgentDetailView, with new tests covering both components and a documentation note for the compact timestamp behavior.

Fusion-Task-Id: FN-4047
2026-05-11 21:48:26 -07:00
Fusion
1772572191 feat(FN-4027): memoize startup slim list reads to avoid redundant fresh fet
Added memoization for startup slim task list reads (`store.ts`), with dashboard server routing startup reads through the memo window and tests covering the store watcher consumers in scheduler and worktree-pool, plus performance documentation.

Fusion-Task-Id: FN-4027
2026-05-11 21:48:26 -07:00
Fusion
3a45a3fc25 feat(FN-4050): fix mobile session title clipping in ChatView
Fixes mobile session title clipping in ChatView via CSS updates, adds a test for the fix, and updates the mobile switcher docs for FN-4050.

Fusion-Task-Id: FN-4050
2026-05-11 21:48:26 -07:00
Fusion
ebb867ea4e feat(FN-4044): restore github tracking patch persistence
Restored GitHub tracking patch persistence in the core store with matching test coverage in the task detail and routes tasks ops suites, plus documentation for the repaired flow.

Fusion-Task-Id: FN-4044
2026-05-11 17:55:09 -07:00
Fusion
07ac776306 feat(FN-4045): keep inline metadata controls visible on mobile row
Removed mobile-specific layout rules from TaskDetailModal that would have hidden or repositioned inline metadata controls, ensuring the row layout stays consistent across breakpoints; updated the corresponding responsive test assertions to match.

Fusion-Task-Id: FN-4045

Fusion-Task-Lineage: 089dc9df-ac82-4a74-b4bb-8c0ca00925e6
2026-05-11 17:26:38 -07:00
Fusion
e95515b484 feat(FN-4040): add optimistic room send with failure handling and reconcili
The merge implements optimistic room send with failure recovery in the ChatView and useChatRooms hook, including a reconciliation flow that handles send failures gracefully and documents the UX behavior. The dashboard guide and architecture docs are updated to reflect the new room messaging pattern.

Fusion-Task-Id: FN-4040
2026-05-11 16:51:01 -07:00
Fusion
2535de9f0f feat(FN-4032): add tracking retry with actionable create issue error in tas
The merge adds a GitHub integration retry lifecycle to the task tracking system, including an actionable retry mechanism for failed issue creation, fixes to tracking and auth retry flow, and corresponding tests in the dashboard and engine packages. Documentation is updated in `docs/architecture.md`

Fusion-Task-Id: FN-4032
2026-05-11 16:33:16 -07:00
Fusion
d589069b21 feat(FN-4042): add mobile chat quick switcher to thread header
Added a mobile chat quick switcher accessible from the thread header, with styling for the session dropdown and test coverage. Documentation for the feature was added to MOBILE.md and the dashboard guide.

Fusion-Task-Id: FN-4042
2026-05-11 16:24:08 -07:00
Fusion
b918a2123d feat(FN-4013): align file mention spinner styles with component ownership
Refactored file mention popup styles by removing duplicate spinner rules from `AgentMentionPopup.css` and consolidating them into `FileMentionPopup.css`, restoring proper component-level CSS ownership per the project's co-located stylesheet convention.

Fusion-Task-Id: FN-4013
2026-05-11 16:16:05 -07:00
Fusion
0e4a2afbd1 feat(FN-4043): fix memory editor flex layout in SettingsModal
Fixes the memory editor flex layout in SettingsModal (Step 1 of FN-4043) and adds a CSS regression guard for that component.

Fusion-Task-Id: FN-4043
2026-05-11 16:06:37 -07:00
Fusion
8af867e365 feat(FN-4040): anchor mobile chat views to latest message on show
Anchored mobile ChatView and QuickChat FAB to scroll to the latest message when opened, improving chat tail behavior on small screens; added documentation for this behavior. Also aligned scoped chat manager's pluginRunner typing and expanded test coverage for both components.

Fusion-Task-Id: FN-4040
2026-05-11 15:58:26 -07:00
Fusion
262432af59 feat(FN-4038): repair interview resume latch and document mission resume di
Fixed mission resume behavior in MissionManager by repairing the interview resume latch and added tests covering the feature, with a one-line documentation update to clarify resume discoverability.

Fusion-Task-Id: FN-4038
2026-05-11 15:47:40 -07:00
gsxdsm
6e44e1bb50 fix(chat): restore room message visibility and responders 2026-05-11 15:19:16 -07:00
Fusion
3f6c4c688a feat(FN-3959): add heartbeat timer registration repair sweep
Heartbeat timer repair sweep — adds a registration repair mechanism that detects and flags stale timers via agent updates, with tests covering the new sweep behavior. Documentation updated in agents.md to reflect the repair flow.

Fusion-Task-Id: FN-3959

Fusion-Task-Lineage: 40708b6b-01e1-4673-93e1-299678de2879
2026-05-11 15:18:40 -07:00
Fusion
1f47e137f7 feat(FN-4023): preserve triage column when SSE updates contain only priorit
Fix FN-4023: preserve the triage column filter when SSE updates only carry priority changes, preventing unintended column resets during selective priority refreshes. Added regression tests across the task store, useTasks hook, and API routes to cover column-stability scenarios.

Fusion-Task-Id: FN-4023
2026-05-11 14:56:46 -07:00
Fusion
1e53b76eda feat(FN-4025): defer database integrity check and expose via health endpoin
Exposes database health status via the API by deferring integrity checks asynchronously, with docs and tests covering the core DB layer, store integration, and dashboard server health endpoint.

Fusion-Task-Id: FN-4025
2026-05-11 14:15:17 -07:00
Fusion
d8830a5235 feat(FN-4022): isolate ThemeSelector stylesheet and consolidate light theme
Consolidated light-theme token ownership from `CustomModelDropdown.css` into `ThemeSelector.css` and `styles.css`, completing the isolation of theme-related CSS across the dashboard. Added a corresponding test fixture for `CustomModelDropdown`.

Fusion-Task-Id: FN-4022
2026-05-11 13:44:14 -07:00
Fusion
6604826aba feat(FN-4024): scope chat styles to owning components
Scoped chat and popup styles to their owning components, removing cross-contaminating global rules from AgentReflectionsTab and consolidating FileMentionPopup and AgentMentionPopup styles locally, while applying final tokenization and budget style revisions in the fixup commit.

Fusion-Task-Id: FN-4024
2026-05-11 13:14:08 -07:00