Commit Graph

1585 Commits

Author SHA1 Message Date
Fusion
f071fdcdfb feat(FN-2025): move secondary header views into overflow menu
- Add view-toggle overflow state and refs in Header with Escape and outside-click close behavior
- Replace inline Skills/Roadmaps/Insights buttons with a More views trigger and dropdown menu actions
- Style the view-toggle overflow menu and items for positioning, hover, and active states
- Update Header, tablet header controls, and App integration tests to validate overflow interactions and active view behavior
2026-04-17 20:57:26 -07:00
Fusion
e4f43a8b43 fix(FN-2040): prevent false unresponsive agent states
- Apply a default 30s heartbeat interval when scheduler config is missing or invalid
- Dynamically register and update heartbeat triggers from AgentStore create/update events
- Register all non-disabled agents at startup and guard listener cleanup when stopping runtime
- Treat non-periodic agents as healthy in dashboard health checks to avoid stale-time false alarms
- Expand engine and dashboard tests and add a patch changeset for @gsxdsm/fusion
2026-04-17 20:40:06 -07:00
Fusion
0a89068ef0 fix(FN-2041): reduce Quick Chat FAB desktop edge margin
- Change QuickChatFAB desktop drag clamp margin from 48px to 8px while keeping the 4px mobile margin
- Update QuickChatFAB drag boundary tests and descriptions to assert the new 8px desktop behavior
- Add a patch changeset for @gsxdsm/fusion documenting the FAB edge margin reduction
2026-04-17 20:31:53 -07:00
Fusion
a0cf637c66 fix(FN-2022): correct insights status badge classes and mobile wrapping
- Fix status badge class interpolation in InsightsView so status-specific modifiers render correctly
- Add regression tests that assert generated and confirmed statuses map to the right badge classes
- Improve mobile insights layout by allowing action/meta rows to wrap and preventing title overflow
- Increase mobile icon button touch targets in insight item actions
2026-04-17 20:16:23 -07:00
Fusion
c6377a91d4 fix(FN-2021): raise model selector dropdown above quick chat panel
- Increase the model selector dropdown z-index in dashboard styles from 1000 to 1010
- Ensure the selector menu layers above the quick chat panel so options remain visible and clickable
2026-04-17 19:54:49 -07:00
Fusion
13855cf11a fix(FN-2019): raise mobile toast position above bottom actions
- Update mobile .toast-container bottom offset to include nav, executor footer, standalone gap, safe area, and spacing tokens
- Keep toast notifications visible above bottom action buttons on mobile layouts
- Align utility-mobile CSS expectation with the new token-based calc expression
2026-04-17 19:44:37 -07:00
Fusion
a19175cb59 fix(FN-2010): increase quick chat panel height on mobile
- Remove the redundant mobile .quick-chat-panel override block that duplicated panel sizing rules
- Increase .quick-chat-panel--mobile height to min(520px, calc(100dvh - 120px)) for more chat space on small screens
- Preserve existing bottom offset behavior tied to footer, nav, and safe-area insets
2026-04-17 19:34:45 -07:00
Fusion
f6cc5aeaf0 feat(FN-2009): show waiting and thinking states during chat streaming
- Render streaming assistant bubbles in ChatView and QuickChatFAB as soon as streaming starts
- Show "Connecting…" before text arrives and switch to "Thinking…" when thinking output is present
- Render streaming thinking content in a collapsible details block in QuickChatFAB to match ChatView behavior
- Add muted italic waiting-state styles for chat and quick chat message content
- Add ChatView streaming state tests for waiting and thinking pre-text scenarios
2026-04-17 19:23:40 -07:00
Fusion
695d0fd858 feat(FN-2033): gate agents view navigation behind feature flag
- Wire App.tsx to read experimentalFeatures.agentsView, hide agents view when disabled, and redirect agents taskView back to board
- Add showAgentsTab prop to Header and MobileNavBar and conditionally render agents navigation controls only when enabled
- Update App, Header, and MobileNavBar tests to cover enabled/disabled agents tab behavior and active-state interactions
- Adjust mobile and tablet regression tests to pass showAgentsTab where agents controls are expected
2026-04-17 19:17:24 -07:00
Fusion
fc106f6e6e feat(FN-2002): add markdown preview modes to agent content tabs
- Add edit/preview toggles for Instructions, Soul, and Memory tabs in AgentDetailView
- Render markdown previews with ReactMarkdown and remark-gfm, including empty-state placeholders
- Hide save actions during preview mode and reset preview state when agent content changes
- Add CSS for preview toolbars and panes, plus comprehensive AgentDetailView tests for tab preview behavior
2026-04-17 18:55:12 -07:00
Fusion
8711c10922 feat(FN-2027): gate Insights and Roadmaps views behind experimental flags
- Add insightsEnabled and roadmapEnabled state in useAppSettings derived from project experimentalFeatures.
- Pass experimental feature visibility into Header and MobileNavBar and hide Insights/Roadmaps navigation controls unless enabled.
- Redirect users back to Board when a disabled Insights or Roadmaps view is active after settings load.
- Update Settings modal to always show labeled Insights and Roadmaps feature toggles alongside any custom experimental flags.
- Expand App, Header, MobileNavBar, and SettingsModal tests to cover gated rendering and behavior.
2026-04-17 18:47:40 -07:00
Fusion
77f384ca66 feat(FN-2032): gate Header nodes button by nodesView flag
- Add optional showNodesButton prop to Header while keeping default behavior backward compatible
- Hide desktop and mobile overflow Nodes actions when showNodesButton is false
- Wire App.tsx to experimentalFeatures.nodesView, guard node toggle handling, and auto-close the overlay when disabled
- Add Header tests for desktop/mobile visibility and click behavior across showNodesButton states
2026-04-17 18:03:46 -07:00
Fusion
3538a5c99d fix(FN-1991): prevent horizontal scrolling in mobile pi settings
- Add horizontal overflow clipping to the mobile settings content container
- Wrap long helper text in settings form-group small elements to avoid viewport overflow
- Preserve vertical scrolling behavior for settings sections on small screens
2026-04-17 17:55:33 -07:00
Fusion
cfb5228855 feat(FN-1990): promote quick fields in new task modal
- Add TaskForm renderBelowPrimary and hideDependencies props to support injected primary-section content
- Build NewTaskModal quick-fields for dependency selection and agent assignment above the More options panel
- Style quick-fields and mobile modal spacing with design tokens, including full-width triggers and 36px touch targets
- Expand modal and form tests to cover slot rendering, dependency hiding behavior, quick-fields visibility, and mobile CSS rules
2026-04-17 17:44:53 -07:00
Fusion
a9275f9bdb fix(FN-1988): improve dashboard mobile view ergonomics
- Add AgentsView mobile overrides for content padding and wrapped control/title layouts
- Add comprehensive NodesView mobile CSS for header/action wrapping, compact stats grid, and section spacing
- Refine InsightsView mobile touch targets and count typography for action controls
- Add mobile CSS regression tests that assert AgentsView and NodesView rules inside max-width 768px media blocks
2026-04-17 17:21:00 -07:00
Fusion
81d2cbeb56 fix(FN-1987): move skills search to top and improve catalog fallback
- Move the shared skills search input to the top of SkillsView so it applies to discovered skills and catalog results
- Add client-side discovered skills filtering by name/path with a dedicated filtered-empty-state message
- Extend skills adapter fallback logic to use unauthenticated catalog search when authenticated requests return 400, 401, or 403
- Add dashboard component and adapter tests covering discovered filtering behavior and authenticated-endpoint fallback scenarios
2026-04-17 17:06:09 -07:00
Fusion
c6f3b8c074 feat(FN-2031): gate skills view behind experimental feature flag
- Read experimentalFeatures from app settings and derive skillsView enablement
- Hide Skills view toggles in Header and MobileNavBar unless showSkillsTab is enabled
- Prevent direct navigation to skills view by redirecting disabled sessions back to board
- Update Header and MobileNavBar tests to cover enabled, disabled, and default-hidden skills tab behavior
2026-04-17 16:59:09 -07:00
Fusion
0678a5cdf6 feat(FN-2028): reorder settings sections by scope group
- Reorder SETTINGS_SECTIONS to present Account, Global, then Project groups in the sidebar
- Move Project Models into the Project group to match its project-scoped behavior
- Update SettingsModal inline documentation to clarify section grouping and scope ownership
2026-04-17 16:51:33 -07:00
Fusion
0750e69f63 fix(FN-1985): expand agent import skills list on mobile
- Add a mobile max-height rule for .agent-import-skill-list using dynamic viewport units.
- Allow the skills picker to fill available screen space without overflowing the agent import modal.
2026-04-17 16:45:07 -07:00
Fusion
7b38fa623d feat(FN-1978): rename schedule actions to Automation and polish mobile layout
- Rename Schedules/Scheduled Tasks labels to Automation in header and mobile navigation actions
- Update desktop, tablet, and mobile header tests to assert the new Automation wording and behavior
- Improve mobile schedule and routine modal spacing with token-based padding/margin updates for cards, forms, and empty states
- Refresh the UX audit report to reference the Automation label in the header control inventory
2026-04-17 16:36:15 -07:00
Fusion
cdcaf027e4 fix(FN-1969): remove redundant mobile margin on milestone ideas button
- Remove the mobile-specific margin override from .roadmap-suggestion-expand-btn in dashboard styles.
- Rely on existing container spacing so the generate milestone ideas action aligns consistently on small screens.
2026-04-17 15:47:59 -07:00
gsxdsm
0a8d58e63b feat(FN-1967): merge fusion/fn-1967 2026-04-17 15:40:02 -07:00
Fusion
da2d9fbcf1 fix(FN-2011): keep chat input responsive during streaming
- Make useChat and useQuickChat sendMessage synchronous and update consumers to call it without awaiting
- Allow ChatView and QuickChatFAB inputs to remain editable while responses stream
- Keep quick chat send disabled during active streaming to prevent concurrent sends
- Add hook and component tests for synchronous sendMessage and non-blocking input behavior
2026-04-17 15:38:32 -07:00
Fusion
d8f3cb065a fix(FN-2020): prevent duplicate retry toasts
- Remove the pre-retry info toast from TaskDetailModal retry handling
- Keep a single completion toast with updated success copy: "Retried {taskId}"
- Add regression tests to assert exactly one toast is shown on retry success
- Add regression tests to assert exactly one toast is shown on retry failure
2026-04-17 15:31:59 -07:00
gsxdsm
a054db8859 feat(FN-2018): merge fusion/fn-2018 2026-04-17 15:25:02 -07:00
gsxdsm
c5181c6e32 feat(FN-2012): merge fusion/fn-2012 2026-04-17 15:24:46 -07:00
gsxdsm
6fbf2871e9 feat(FN-1956): merge fusion/fn-1956 2026-04-17 15:24:37 -07:00
Fusion
0433ce5dd8 fix(FN-2024): gate task SSE subscriptions by active view
- Add an sseEnabled option to useTasks and skip SSE subscription setup when disabled
- Compute taskSseEnabled in App based on board/list views and pass it through to useTasks
- Migrate useRemoteNodeEvents from raw EventSource management to shared subscribeSse bus usage
- Update App, useTasks, and useRemoteNodeEvents tests to cover SSE gating and bus-based event wiring
2026-04-17 15:21:15 -07:00
Fusion
8d6ad619e8 feat(FN-2023): merge fusion/fn-2023 2026-04-17 15:16:21 -07:00
Fusion
0132328128 feat(FN-2006): split quick chat flows into agent and model modes
- Add explicit agent/model mode toggles to QuickChatFAB and NewChatDialog
- Update session target logic so model mode starts chats with the KB agent while agent mode uses selected agents
- Clear opposite selections when switching modes and adjust placeholders/disabled states to match active mode
- Expand ChatView and QuickChatFAB tests to cover toggle visibility, mode switching, and session payload behavior
- Add useQuickChat coverage to verify agent-only switchSession calls omit model parameters
2026-04-17 15:02:54 -07:00
gsxdsm
24c4c008ad feat(FN-2008): merge fusion/fn-2008 2026-04-17 14:55:28 -07:00
gsxdsm
f17f666df1 feat(FN-2015): merge fusion/fn-2015 2026-04-17 14:40:39 -07:00
Fusion
20f47ad93f test(FN-2016): stabilize PlanningModeModal favorites persistence tests
- Move model favorites persistence coverage into the main PlanningModeModal describe block so shared mocks and fixtures are in scope
- Replace skipped placeholder cases with user-interaction tests for adding and removing provider/model favorites via the combobox portal
- Assert updateGlobalSettings payloads for favorite toggles and verify rollback behavior when settings persistence fails
- Remove duplicate API import and delete the broken out-of-scope favorites describe block
2026-04-17 14:39:19 -07:00
Fusion
96aeb67a4f feat(FN-2014): merge fusion/fn-2014 2026-04-17 14:31:43 -07:00
gsxdsm
633ed3e591 feat(FN-2001): merge fusion/fn-2001 2026-04-17 14:09:45 -07:00
gsxdsm
ef696f4564 fix(FN-1572): stabilize fusion agent execution 2026-04-17 12:13:39 -07:00
gsxdsm
383033fcdc fix(FN-000): align qmd memory lifecycle 2026-04-17 09:41:05 -07:00
Fusion
28accdb085 feat(FN-2000): add memory auto-summarize settings and automation sync
- Add Memory section controls for enabling auto-summarize with threshold and cron schedule inputs
- Wire ProjectEngine to sync auto-summarize automation on startup and when related settings change
- Reuse a single startup settings snapshot when syncing insight extraction and auto-summarize automations
- Add SettingsModal and ProjectEngine tests covering auto-summarize UI persistence and automation re-sync behavior
2026-04-17 09:16:08 -07:00
gsxdsm
3a9c56fda3 feat(FN-1999): merge fusion/fn-1999 2026-04-17 09:01:27 -07:00
gsxdsm
20b01981b8 fix(FN-000): compact selected memory file 2026-04-17 08:55:50 -07:00
gsxdsm
f0415937d3 fix(FN-000): restore memory compaction and log pagination 2026-04-17 08:43:13 -07:00
gsxdsm
0f16bb78e9 fix(FN-000): add qmd install button 2026-04-17 08:23:26 -07:00
gsxdsm
75dc5a8c77 fix(FN-000): simplify qmd memory settings 2026-04-17 08:16:36 -07:00
Fusion
1433ca98ce feat(FN-1998): instrument onboarding funnel analytics events
- Add onboarding event tracking utility with localStorage persistence, session IDs, and ring-buffer pruning
- Emit funnel events from ModelOnboardingModal for step progress, dismissal/completion, and first-task/CTA actions
- Track resume-card and auto-trigger onboarding entry points in OnboardingResumeCard and useAuthOnboarding
- Expand dashboard tests and mocks to validate onboarding event storage behavior and new instrumentation calls
2026-04-17 08:01:38 -07:00
gsxdsm
bdfb4842d2 fix(FN-000): rebuild layered memory system 2026-04-17 07:36:22 -07:00
Fusion
ad987bf174 fix(FN-1997): persist onboarding completion across first-task flows
- Extract a shared completeOnboarding helper to centralize settings persistence and completion tracking
- Reuse completion logic for finish, new-task, GitHub import, and post-inline-task navigation actions
- Mark onboarding complete after successful inline first-task creation so state is saved before leaving the modal
- Expand ModelOnboardingModal tests to cover completion persistence for finish, inline creation, View Task, and Go to Dashboard paths
2026-04-17 06:24:46 -07:00
gsxdsm
0f6dd7ed61 feat(FN-1996): merge fusion/fn-1996 2026-04-17 06:11:05 -07:00
Fusion
ff2f29644b feat(FN-1946): add slash skill autocomplete to chat input
- Fetch discovered skills per project and track autocomplete menu/filter/highlight state in ChatView
- Detect slash triggers in the composer, render filtered skill suggestions, and insert /skill:<name> on selection
- Support keyboard and focus UX for the menu (arrow navigation, Enter/Tab select, Escape dismiss, blur/focus timing)
- Add chat skill menu styling for desktop and mobile layouts using existing dashboard tokens
- Expand ChatView tests to cover menu rendering, filtering, selection flows, loading state, and fetch failures
2026-04-17 06:10:10 -07:00
Fusion
ad94051c79 fix(FN-1995): preserve backend chat message order
- Remove unnecessary .reverse() calls when setting messages in useChat.
- Keep paginated prepend behavior intact by using backend chronological ordering directly.
- Update useChat tests to provide message fixtures in oldest-first order.
2026-04-17 06:01:00 -07:00
Fusion
5f8597ea08 feat(FN-1943): add post-onboarding setup recommendations panel
- Add a PostOnboardingRecommendations component that detects incomplete AI provider, default model, and GitHub setup and offers direct actions
- Persist post-onboarding dismissal state in model-onboarding-state with new helpers for dismiss, check, and clear flows
- Integrate recommendations into App rendering so they appear after completed onboarding when resume onboarding is not active
- Add dashboard styles and focused tests for recommendation rendering/actions plus onboarding dismissal state coverage
- Add a changeset for @gsxdsm/fusion patch release describing the post-onboarding recommendations
2026-04-17 05:36:02 -07:00