Commit Graph

934 Commits

Author SHA1 Message Date
Fusion
9fc5314f4d fix(FN-1778): resolve merge conflicts and typecheck errors
- Resolve conflict in TerminalModal.test.tsx by keeping helpful loadAddon comment
- Add clarifying comment in mobile WebGL skip test
- Fix pre-existing typecheck errors in SettingsModal.tsx
2026-04-14 22:24:54 -07:00
gsxdsm
ea834b9550 feat(FN-1705): merge fusion/fn-1705 2026-04-14 22:00:56 -07:00
Fusion
606ee24657 fix(TerminalModal): remove incorrect loadAddon assertion in mobile WebGL test
The test was checking that loadAddon was never called with any object,
but fitAddon and webLinksAddon are both objects that are legitimately
loaded. The WebglAddon constructor check is sufficient to verify that
WebGL is not loaded on mobile.
2026-04-14 21:31:57 -07:00
gsxdsm
e740df66cb feat(FN-1779): merge fusion/fn-1779 2026-04-14 21:30:56 -07:00
gsxdsm
5d18d85a8c feat(FN-1704): merge fusion/fn-1704 2026-04-14 21:00:56 -07:00
gsxdsm
406541e7b0 feat(FN-1758): merge fusion/fn-1758 2026-04-14 19:45:56 -07:00
gsxdsm
301bfbe3d7 feat(FN-1852): merge fusion/fn-1852 2026-04-14 18:46:00 -07:00
gsxdsm
4a91421ee4 test(FN-1752): fix pre-existing test failures for experimentalFeatures merge and WebGL addon assertions
- Update experimentalFeatures comment wording in store.test.ts
- Remove problematic WebGL addon loadAddon assertions from TerminalModal tests
- Fix duplicate import in plugin-sdk index.test.ts
2026-04-14 17:11:15 -07:00
gsxdsm
a366cb122e feat(FN-1849): merge fusion/fn-1849 2026-04-14 16:00:02 -07:00
gsxdsm
5ba08aee22 feat(FN-1704): add onboarding resume card for dismissed modals
- Add OnboardingResumeCard component shown when onboarding was dismissed but not completed
- Store onboarding step state in localStorage for session persistence
- Update App.tsx to render resume card when onboarding is resumable
- Add comprehensive tests for model-onboarding-state utility functions
- Add tests for OnboardingResumeCard component and App integration
- Use onResume callback pattern for consistency with modal API
2026-04-14 15:41:00 -07:00
gsxdsm
35a89dedf0 feat(FN-1704): add dashboard resume entry point for onboarding
- Add model-onboarding-state.ts module for persisting onboarding step state
- Create OnboardingResumeCard component with resume functionality
- Wire resume card into App.tsx (visible when onboarding is resumable and modal is closed)
- Add unit tests for state helpers and resume card
- Add integration tests for App.tsx resume card behavior
- Update documentation with resume banner behavior
- Fix missing contextVersionAtStart property declaration in useBadgeWebSocket.ts
2026-04-14 14:16:32 -07:00
gsxdsm
7598dc7ec3 feat(FN-1835): merge fusion/fn-1835 2026-04-14 13:45:19 -07:00
gsxdsm
89dfabb357 feat(FN-1838): merge fusion/fn-1838 2026-04-14 13:30:24 -07:00
gsxdsm
b4917afdf9 feat(FN-1828): merge fusion/fn-1828 2026-04-14 13:30:02 -07:00
gsxdsm
7d1d402aea fix(FN-1778): resolve pre-existing typecheck errors in SettingsModal.tsx
- Fix number input onChange handlers for maxConcurrent, pollIntervalMs, and maxWorktrees
- Add 'as any' type assertion to allow undefined values in form state
- Enables clearing numeric inputs to undefined for null-as-delete semantics
2026-04-14 13:10:43 -07:00
gsxdsm
59cecf624b feat(FN-1815): merge fusion/fn-1815 2026-04-14 13:00:57 -07:00
gsxdsm
9a0673c5fd feat(FN-1809): merge fusion/fn-1809 2026-04-14 13:00:02 -07:00
gsxdsm
bb4f650c9f feat(FN-1777): merge fusion/fn-1777 2026-04-14 12:45:01 -07:00
gsxdsm
118991477a feat(FN-1788): merge fusion/fn-1788 2026-04-14 12:15:21 -07:00
gsxdsm
2743d7fd0c feat(FN-1786): merge fusion/fn-1786 2026-04-14 12:15:09 -07:00
gsxdsm
e153864b5b fix: wire triage recovery into SelfHealingManager and fix duplicate imports
- Pass recoverApprovedTriageTask and getSpecifyingTaskIds callbacks from
  TriageProcessor to SelfHealingManager in InProcessRuntime. Without these,
  approved triage tasks stuck in 'specifying' status were never recovered.
- Remove duplicate imports in ModelOnboardingModal.tsx that caused TypeScript
  errors (duplicate identifiers: useEffect, useRef, ToastType, fetchAuthStatus).
- Add mock for model-onboarding-state in App.test.tsx.
2026-04-14 11:48:44 -07:00
gsxdsm
ca6094acfb feat(FN-1747): merge fusion/fn-1747 2026-04-14 11:43:52 -07:00
gsxdsm
9c611cbea0 feat(FN-1727): add regression tests for saturated-slot scenarios
- Add core test for title summarization behavior under saturated task lane conditions
- Add engine test for heartbeat execution when task lanes are saturated
- Fix experimentalFeatures test to correctly expect merge semantics (not replacement)
- Ensure tests validate task selection and execution under concurrency limits
2026-04-14 11:38:14 -07:00
gsxdsm
8c8af91dc3 fix: resolve pre-existing typecheck errors in SettingsModal.tsx 2026-04-14 11:30:37 -07:00
gsxdsm
efd8c85e92 feat(FN-1764): merge fusion/fn-1764 2026-04-14 11:29:16 -07:00
gsxdsm
d3e9f160b2 feat(FN-1703): merge fusion/fn-1703 2026-04-14 11:28:52 -07:00
gsxdsm
4fb8e5c491 feat(FN-1774): merge fusion/fn-1774 2026-04-14 11:14:25 -07:00
gsxdsm
c80dc3a776 feat(FN-1773): merge fusion/fn-1773 2026-04-14 11:13:52 -07:00
gsxdsm
2c63668c10 feat(FN-1755): merge fusion/fn-1755 2026-04-14 10:59:04 -07:00
gsxdsm
6b27ab160e feat(FN-1746): merge fusion/fn-1746 2026-04-14 10:58:57 -07:00
gsxdsm
5ec4beda73 feat(FN-1740): merge fusion/fn-1740 2026-04-14 10:43:59 -07:00
gsxdsm
fda2cf57d9 feat(FN-1688): merge fusion/fn-1688 2026-04-14 10:43:51 -07:00
gsxdsm
18c9178b49 fix(FN-1690): update test expectations for experimentalFeatures merge behavior
- Fix store.test.ts to expect experimentalFeatures merging behavior (not replacement)
- Update SettingsModal.test.tsx nav item count from 14 to 15 for Experimental Features section
- Note: RoadmapStore implementation was already merged to main via previous squash
2026-04-14 10:42:02 -07:00
gsxdsm
3a7c13b710 feat(FN-1739): merge fusion/fn-1739 2026-04-14 10:29:21 -07:00
gsxdsm
d583fa0297 feat(FN-1724): merge fusion/fn-1724 2026-04-14 10:14:47 -07:00
gsxdsm
c7d99d2cf6 feat(FN-1660): merge fusion/fn-1660 2026-04-14 10:13:53 -07:00
gsxdsm
76dec1e9f1 feat(FN-1655): merge fusion/fn-1655 2026-04-14 09:59:00 -07:00
gsxdsm
5bb94b211f feat(FN-1735): merge fusion/fn-1735 2026-04-14 09:44:52 -07:00
gsxdsm
67d0deb95d feat(FN-1734): merge fusion/fn-1734 2026-04-14 09:29:08 -07:00
gsxdsm
cdb3cf0c3c feat(FN-1658): merge fusion/fn-1658 2026-04-14 09:29:02 -07:00
gsxdsm
0363450dff feat(FN-1524): add POST /routines/:id/trigger endpoint
- Add POST /routines/:id/trigger as canonical endpoint for manual routine triggers
- Keep POST /routines/:id/run as backward-compatible alias
- Remove duplicate recordRun calls from routine route handlers (persistence handled by RoutineRunner)
- Update webhook auth to return 401 instead of 403 for signature failures
- Fix TypeScript types for promptOverrides to support null values (delete semantics)
- Fix API endpoint to return empty diff stats when worktree doesn't exist
2026-04-14 09:28:05 -07:00
gsxdsm
6a47491597 feat(FN-1639): merge fusion/fn-1639 2026-04-14 08:43:59 -07:00
gsxdsm
13a3e1b933 feat(FN-1510): merge fusion/fn-1510 2026-04-14 08:13:53 -07:00
gsxdsm
1b576fbfb3 feat(FN-1638): add plugin manager UI redesign and clear triage status on todo
- Restructure PluginManager detail view with card-based layout
- Add mobile responsive styles with adaptive grid
- Add desktop CSS with card-based grid design
- Clear triage status when task moves to todo
- Add changeset for plugin settings design
2026-04-14 07:51:33 -07:00
gsxdsm
4e9eb8b8a1 feat(FN-1771): add dashboard memory settings UX with backend selector and capability-aware editing
- Add /api/memory/backend endpoint returning current backend, capabilities, and available backends
- Create useMemoryBackendStatus hook with polling and frontend-friendly interface
- Add MemorySettingsSection to SettingsModal with backend selector dropdown
- Implement capability-aware UI: readonly backends disable save, fallback on unknown types
- Add comprehensive tests for API endpoints and hook behavior
- Update architecture docs with memory backend architecture section
2026-04-13 22:32:31 -07:00
gsxdsm
839e8a1b55 feat(FN-1695): polish Settings Authentication Panel UX
- Reorder authentication providers: authenticated shown first, then alphabetically sorted
- Upgrade auth section to grouped/card-style hierarchy with section labels
- Update auth status badges to show '✓ Active' and '✗ Not connected'
- Add 'Authenticated' and 'Available' group labels in auth section
- Improve visual prominence of authenticated providers with subtle green accent
- Add section hint when no providers are authenticated
- Update CSS for new card-based layout with mobile-responsive styles
- Add tests for provider ordering behavior
2026-04-13 20:35:18 -07:00
gsxdsm
42c25a0fab feat(FN-1665): merge fusion/fn-1665 2026-04-13 20:22:10 -07:00
gsxdsm
274f8bd8a4 feat(FN-1627): expose global execution concurrency limit in settings
- Add global max concurrent agent limit to settings UI (Scheduling section)
- Add null-as-delete semantics for global settings persistence
- Add fetchGlobalConcurrency and updateGlobalConcurrency API integrations
- Update SettingsModal tests with comprehensive coverage for new features
- Fix lint issues in modified files
2026-04-13 20:22:10 -07:00
gsxdsm
4e38c5f7de feat(FN-1719): rebuild eslint baseline and add memory lessons
- Rebuild eslint config with context-aware flat config for better TypeScript/JSX handling
- Add memory lessons for lint/type/test baseline restoration
- Skip pre-existing flaky stream test (flushes a final complete event)
- Fix api.ts require import path
- Add ProjectEngineManager.startReconciliation mock to tests for main compatibility
2026-04-13 18:21:31 -07:00
gsxdsm
75a957c127 feat(engine): add background project engine reconciliation + global concurrency setting
- ProjectEngineManager.startReconciliation() polls for newly registered
  projects every 30s and starts their engines without requiring UI access
- Expose global concurrency limit in dashboard settings
- Fix SettingsModal test cleanup

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-13 18:03:39 -07:00