Commit Graph

48 Commits

Author SHA1 Message Date
gsxdsm
7f7da79443 feat(FN-1409): extract color-theme CSS to separate theme-data.css
- Extract all color-theme CSS variable blocks from styles.css into a dedicated theme-data.css file
- Add dynamic loading of theme-data.css for non-default color themes via useTheme hook
- Preload theme-data.css for the default theme in index.html to avoid flash
- Update status-colors-theme tests for dynamic theme loading behavior
- Update memory and README with theme-data.css file location
2026-04-10 00:07:35 -07:00
gsxdsm
2077398f40 feat(FN-1504): add non-mobile search toggle for board/list views
- Add search toggle button to header controls for non-mobile viewports
- Toggle persists search visibility state across board and list views
- Implement responsive visibility rules (show on non-mobile, hide on mobile)
- Add comprehensive tests for tablet header controls and Header component
- Update Header component with search toggle functionality
2026-04-09 23:03:05 -07:00
gsxdsm
7acae1928d feat(FN-1372): reduce mobile nav bar height from 56px to 48px
- Reduce MobileNavBar height from 56px to 48px for a more compact mobile experience
- Update footer safe area padding to accommodate the new nav height
- Update board mobile layout tests to reflect the reduced height
- Update mobile nav bar CSS tests for the new height value
2026-04-09 22:50:43 -07:00
gsxdsm
6430a51172 fix(FN-1339): update CSS static-analysis tests for new stacking order 2026-04-09 15:53:29 -07:00
gsxdsm
d9be6a838d feat(FN-1335): render header search box as floating element below header
- Convert header search box to floating dropdown positioned below header
- Add mobile header controls test for floating search behavior
- Add Header component tests for search box rendering
- Update Header.tsx to render search as floating element with absolute positioning
- Add styles for floating search box with backdrop blur and shadow
2026-04-09 15:38:52 -07:00
gsxdsm
7cd9cc9754 fix(FN-1331): prevent horizontal scroll in task modal logs panel on mobile
- Add overflow-x: auto CSS to task modal logs panel for mobile
- Add unit test for detail body mobile overflow behavior
2026-04-09 15:02:18 -07:00
gsxdsm
9c5dc07166 fix(FN-1304): reduce mobile button heights from 44px to 36px
- Reduce mobile media query button heights from 44px to 36px across all dashboard components
- Update mobile CSS tests (nav bar, board, modals, mission planning) to expect 36px touch targets
- Add CSS testing patterns to project memory for consistent test guidelines
2026-04-09 04:59:44 -07:00
gsxdsm
6c9f48761f feat(FN-1322): add missions tab to mobile nav bar
- Add dedicated Missions tab button to MobileNavBar between Agents and More
- Remove Missions entry from the More sheet (no longer needed as overflow)
- Remove unused onOpenMissions prop from MobileNavBarProps and App.tsx
- Update MobileNavBar tests for five-tab layout and missions tab behavior
- Update mobile feature access regression test to reflect missions in tab bar
2026-04-08 21:57:00 -07:00
gsxdsm
7d58c20599 feat(FN-1293): add --accent override to all 34 color theme variants
- Add --accent CSS custom property override to all 34 dark and 34 light color theme variants in styles.css
- Ensure accent color is consistently applied across every theme
- Add regression tests validating --accent per color theme for both light and dark modes
2026-04-08 21:25:59 -07:00
gsxdsm
3d8abda542 feat(FN-1291): add board/list toggle sub-buttons to MobileNavBar
- Add board and list view toggle sub-buttons to MobileNavBar component
- Add CSS styles for toggle sub-buttons with active/hover states
- Update MobileNavBar tests to cover new toggle sub-buttons
- Update mobile feature access regression tests for new nav items
2026-04-08 20:17:07 -07:00
gsxdsm
665132e524 fix(FN-1235): restore terminal text input interaction
- Remove the xterm pointer-events override from dashboard styles to allow terminal text input focus and typing
- Add a terminal input CSS contract test to guard against regressions in xterm helper element interactivity
- Add a patch changeset for @gsxdsm/fusion documenting the terminal text input fix
2026-04-08 19:19:49 -07:00
gsxdsm
e3aa02d58b feat(FN-1298): add stop-agent-run flow across engine and dashboard
- Add heartbeat stopRun support in the engine and wire it into the dashboard server lifecycle
- Add an agent run stop API route and client helper with route-level test coverage
- Add stop controls in AgentDetailView and AgentRunHistory with updated UI tests
- Add a changeset for @gsxdsm/fusion documenting the new stop run feature
2026-04-08 16:17:34 -07:00
gsxdsm
3072b497ab feat(FN-1206): promote missions to an inline top-level view
- Extend dashboard task view state and nav controls to include a persistent missions view toggle
- Render MissionManager inline in App project content and route mission/session navigation into the missions view
- Remove modal-based mission wiring from AppModals and useModalManager now that missions are no longer a modal
- Add inline MissionManager styling and update App/Header/tablet tests for the new missions navigation behavior
2026-04-08 15:33:19 -07:00
gsxdsm
70a5810891 test(FN-1312): add mobile feature access regression guard
- Add dashboard regression tests that keep board, list, and agents views reachable on mobile
- Verify mobile header overflow preserves project navigation and All Projects access
- Assert More-sheet secondary actions and mobile-nav visibility fallbacks remain accessible
2026-04-08 12:29:35 -07:00
gsxdsm
a19116e1d8 feat(FN-1177): polish mission and planning modals for mobile
- Improve Mission Manager mobile behavior with wrapped headers/actions, 44px icon touch targets, overflow guards, and safe-area padding
- Refine planning and subtask modal mobile UX with touch-friendly drag/action controls, compact progress/layout spacing, and 16px form inputs to prevent iOS zoom
- Update model selection mobile styles to use constrained dropdown sizing and larger tappable options across 768px/640px breakpoints
- Add mission-planning-modals-mobile CSS tests that assert key mobile rules for Mission Manager, Subtask Breakdown, Planning Mode, and model combobox interactions
2026-04-08 11:38:09 -07:00
gsxdsm
3bb58cd9b8 feat(FN-1108): add mobile bottom navigation to dashboard
- Export viewport utilities and add a new MobileNavBar component for core mobile navigation actions
- Integrate the bottom nav into App layout and simplify Header rendering when mobile navigation is active
- Add comprehensive mobile bottom-nav styling and spacing updates in the shared dashboard stylesheet
- Add component and CSS regression tests for mobile nav behavior, including escape-key interaction coverage
- Document the mobile bottom navigation UX and behavior in the dashboard README
2026-04-08 04:20:31 -07:00
gsxdsm
3af3adbc45 feat(FN-1107): establish dashboard mobile CSS foundation
- Add mobile breakpoint tokens and a reusable .touch-target utility with 44px minimum hit area
- Harden mobile styles with global 16px text-entry sizing, safe-area inset padding, and overflow guards for wide content
- Keep Capacitor viewport constraints in index.html and document the shared mobile CSS conventions in the dashboard README
- Add mobile CSS foundation coverage and update input font-size tests to validate the new global selectors
2026-04-08 01:46:07 -07:00
gsxdsm
ed84a728c2 feat(FN-1093): add mobile build, PWA, and live reload workflow
- Optimize dashboard Vite output for mobile and include vite/client types in app typecheck
- Add PWA support with manifest, service worker, icons, and client registration hooks
- Add a mobile workspace package with Capacitor config and live-reload scripts for local development
- Add a dedicated GitHub Actions mobile pipeline and update mobile workflow documentation
- Add dashboard tests for build output, mobile scripts, and PWA asset coverage
2026-04-07 23:25:34 -07:00
gsxdsm
637556343a feat(FN-1059): add manual heartbeat run trigger with execution details in agent UI
- Wire heartbeatMonitor into ServerOptions and pass through to API routes
- Add POST /api/agents/:id/runs route to trigger heartbeat execution with optional source/triggerDetail
- Update API client startAgentRun to accept optional source and triggerDetail parameters
- Add Run Heartbeat button to AgentsView and enhance AgentDetailView RunsTab with execution details and polling
- Add route handler tests for agent runs and UI static analysis tests
- Support run history display with status, duration, trigger type, and result details
2026-04-07 14:38:12 -07:00
gsxdsm
f89f18d336 refactor(FN-1056): remove dead code and unused CSS
- Delete SetupWizard component and its test file (no longer used)
- Remove migration-stubs.ts (dead migration helper code)
- Strip unused CSS rules from dashboard styles.css
- Fix minor test assertion in activity-feed theme test
- Add changeset for patch release
2026-04-07 11:18:47 -07:00
gsxdsm
dd409094fe fix(FN-1043): fix terminal mobile keyboard layout
- Defer fitAddon.fit() via requestAnimationFrame after CSS repaint to ensure container dimensions are settled
- Add overflow:hidden to keyboard-open CSS rule to prevent layout shift
- Add regression tests for xterm re-fit on mobile keyboard open/close
- Update terminal mobile keyboard documentation in README files
2026-04-06 21:35:46 -07:00
gsxdsm
8ecb11011f feat(FN-1032): replace hardcoded colors with CSS custom properties across dashboard components
- Add CSS custom properties and modifier classes for all status colors (open, closed, merged, draft, review, in-progress, etc.)
- Remove hardcoded hex colors from GitHubBadge, replace with CSS classes
- Remove hardcoded colors from PrSection, use CSS classes and Lucide icons
- Remove COLUMN_COLOR_MAP and inline styles from TaskCard, use CSS classes
- Add theme-safety regression tests ensuring components never use inline color styles
- Update existing GitHubBadge and TaskCard tests for class-based styling
2026-04-06 15:37:45 -07:00
gsxdsm
ad56abc7ee feat(FN-1025): harden mobile keyboard-open layout for terminal modal
- Add CSS rules to properly handle viewport height when mobile virtual keyboard is open
- Add regression tests for keyboard-open overlap detection
- Add TerminalModal test coverage for keyboard-related height contract
- Document mobile keyboard layout behavior in dashboard README
2026-04-05 23:26:59 -07:00
gsxdsm
6d6bec9eb9 feat(FN-909): redesign Agent Manager UI with CSS class approach and design tokens
- Replace AgentDetailView and AgentsView components with CSS class-based styling approach
- Integrate AI generation feature from FN-865 using CSS class methodology
- Fix CSS class verification test regex and add missing .agent-detail-info rule
- Refactor NewAgentDialog to align with new component structure
- Redesign Agent Manager UI using global design tokens for consistent theming
- Expand styles.css with comprehensive agent-specific CSS rules and design system variables
- Add agent-css-classes.test.ts to verify CSS class coverage and correctness
2026-04-05 07:26:30 -07:00
gsxdsm
6a64b1fd2e fix(FN-919): remove green tint from dashboard footer
- Remove green color tint from footer styles in dashboard CSS
- Simplify executor status bar theme test to remove green tint assertions
2026-04-04 20:57:15 -07:00
gsxdsm
f3311d5aaf fix(FN-949): prevent bounce-back on Projects nav and show in mobile overflow
clearCurrentProject was triggering auto-reselect in useCurrentProject,
making the Projects button ineffective for single-project users. Added
explicit-clear flag to suppress auto-select. Also changed mobile overflow
menu to show Projects for single-project users (was gated to 2+ projects).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-04 20:30:24 -07:00
gsxdsm
b4ed704a03 feat(FN-890): tokenized executor footer state backgrounds and accents
- Replace hardcoded hex colors in executor status bar CSS with CSS custom properties for state backgrounds and accents
- Add tests covering theme-aware CSS variable overrides for all executor states (idle, running, failed, etc.)
- Document the executor status bar theming in the dashboard README
2026-04-04 16:39:55 -07:00
gsxdsm
718057577b fix(FN-873): replace hardcoded error color with theme-aware CSS variable in ActivityFeed
- Replace var(--error) with var(--color-error) in ActivityFeed TYPE_CONFIG for consistency with theme system
- Add unit tests for theme-aware color variables in TYPE_CONFIG
- Add integration test verifying ActivityFeed renders error colors correctly
- Document theme-aware styling note in dashboard README Activity Log section
2026-04-04 08:11:43 -07:00
gsxdsm
9f4e387be5 fix(FN-821): fix Activity Log modal layout and close control
- Fix modal sizing to properly fit within viewport on various screen sizes
- Fix close button visibility and accessibility in ActivityLogModal component
- Refactor CSS to simplify modal styles (remove unused/verbose rules)
- Add regression tests for modal layout and close button behavior
- Update Activity Log docs to reflect modal sizing changes
2026-04-04 01:25:16 -07:00
gsxdsm
cd1a06d66b fix(FN-824): replace mobile board viewport-height with percentage fill
- Replace viewport-height CSS with percentage-based fill to prevent mobile footer overlap
- Add regression tests for mobile footer-safe layout in dashboard-footer-mobile-layout.test.ts
- Add App.test.tsx coverage for viewport height behavior
- Document mobile layout fix in README
2026-04-03 23:38:00 -07:00
gsxdsm
01024a9d74 feat(FN-817): add expand button and swipe-friendly touch behavior for board cards
- Add expand button to TaskCard for opening task detail modal on mobile
- Implement CSS scroll-snap on board columns for swipe-friendly navigation
- Add touch-action and overscroll-behavior styles for smoother mobile scrolling
- Add comprehensive tests for mobile scroll snap behavior and expand button
- Document expand button and swipe-friendly board behavior in README
2026-04-03 22:40:00 -07:00
gsxdsm
29e225dda1 refactor(FN-811): make project workspace footer-safe and simplify file diff routes
- Fix layout so AgentsView and workspace pages don't overflow behind the footer
- Add footer-safe-layout tests covering sidebar + content layout behavior
- Simplify /api/tasks/:id/diffs route by removing redundant session-file handling
- Remove 22 unused lines from session-files test and consolidate file-diffs tests
- Update styles.css with layout adjustments for consistent footer-safe spacing
- Minor README clarification for dashboard package
2026-04-03 19:34:46 -07:00
gsxdsm
f402a70dc7 feat(FN-796): convert compact Terminal overflow to split action with script submenu
- Replace single overflow terminal button with split-action dropdown showing quick-run scripts
- Add script submenu in header for launching predefined commands from compact view
- Add comprehensive regression tests for split-button behavior and quick-run script actions
- Update dashboard README to document the new split-action terminal overflow UI
- Adjust title summarization threshold and clean up related test/store changes
2026-04-03 18:29:09 -07:00
gsxdsm
80712060b7 feat(FN-795): add mobile responsive layout for Activity Log modal
- Add mobile responsive CSS for Activity Log modal with adaptive breakpoints
- Add regression test coverage for mobile activity log layout
- Add tests for ActivityLogModal responsive behavior
- Update README with responsive layout documentation note
2026-04-03 17:52:36 -07:00
gsxdsm
074755fefa feat(FN-788): nest Scripts under Terminal in compact overflow menu
- Restructure Header.tsx to render Scripts as a submenu of Terminal in compact/tablet overflow menus
- Add submenu toggle state, keyboard navigation, and click-outside-to-close behavior
- Add CSS for nested submenu styling with slide-in animation and depth indicators
- Update Header tests to verify Scripts nested under Terminal with toggle interaction
- Update mobile-header-controls and tablet-header-controls tests for new menu hierarchy
- Update README documentation to reflect the Terminal > Scripts submenu structure
2026-04-03 13:26:02 -07:00
gsxdsm
cf3e1a142b feat(FN-786): move Settings to last position in overflow menu
- Reorder Header overflow menu items so Settings always appears last
- Update Header.tsx to position SettingsMenuItem as the final menu entry
- Add regression tests in Header.test.tsx verifying Settings is last in all overflow states
- Add ordering tests in tablet-header-controls.test.tsx for tablet layout
2026-04-03 08:49:01 -07:00
gsxdsm
797ac1a8d8 feat(FN-766): add three-tier responsive header with tablet compact mode
- Add tablet compact-header breakpoint (769px–1024px) with condensed layout
- Implement responsive Header component with mobile/tablet/desktop modes
- Add tablet-header-controls test suite (373 lines) for compact mode behavior
- Update existing Header and mobile-header-controls tests for new responsive tiers
- Refactor server routes and styles.css for three-tier responsive support
- Document responsive header architecture in README
2026-04-03 07:39:11 -07:00
gsxdsm
5654d2e230 feat: add per-provider timeout for usage panel to prevent blocking on slow responses
fix: update scheduler filesystem path from .kb to .fusion for task validation

style: clean up TaskDetailModal styling with reusable CSS classes

test: add comprehensive tests for file-service operations with mocked filesystem
2026-04-01 22:38:18 -07:00
gsxdsm
7fd5704a80 Removed unwanted files marked in .gitignore 2026-04-01 21:25:08 -07:00
gsxdsm
5dca4d1f5f test(KB-301): fix mobile CSS test — make regex more specific to match bare textarea selector 2026-03-31 11:21:39 -07:00
gsxdsm
f44411ea29 feat(KB-144): add mobile-safe planning mode text inputs
- Set planning mode text inputs to 16px font size to prevent iOS auto-zoom on focus

- Update TaskDetailModal component with mobile-safe input styling

- Add CSS styles for mobile-safe planning mode inputs

- Add unit tests for mobile planning input font size behavior

- Document mobile-safe planning mode input behavior and rationale
2026-03-30 08:42:01 -07:00
gsxdsm
317e6603a6 feat(KB-131): add mobile-safe task entry input with regression tests
- Apply 16px font size to mobile task entry inputs to prevent iOS auto-zoom
- Add regression tests for mobile input font sizing behavior
- Document mobile-safe task-entry requirements in dashboard README
- Update terminal service PTY loading logic
2026-03-30 08:38:27 -07:00
gsxdsm
2540818794 feat(KB-133): add mobile-responsive header with collapsible controls
- Add mobile-only header with collapsible search and overflow menu interactions

- Implement responsive layout locks in CSS for all screen sizes

- Update Header component with touch-friendly interaction states

- Add comprehensive unit and integration tests for mobile controls

- Document mobile header behavior and responsive design in README
2026-03-30 08:31:29 -07:00
gsxdsm
52b8205220 feat(KB-034): add task archive/unarchive functionality
- Add 'archived' column to task store with archiveTask and unarchiveTask methods
- Add CLI commands: kb task archive <id> and kb task unarchive <id>
- Add pi extension tools for archive and unarchive operations
- Add dashboard API endpoints POST /api/tasks/:id/archive and /unarchive
- Add Archived column to board UI with archive/unarchive buttons
- Prevent drag-drop into archived column, add visual distinction
- Include duplicateTask from concurrent branch in merge resolution
2026-03-29 20:03:43 -07:00
Dustin Byrne
cc4ff6d8fe feat(KB-171): constrain column widths in desktop grid and mobile flex
- Change desktop .column min-width from 260px to 0, letting the grid control sizing
- Add overflow-x: hidden to .column-body to prevent content blowout
- Use fixed width: 280px for mobile columns instead of min-width
- Add column-fixed-width tests verifying CSS constraints for desktop and mobile
2026-03-28 16:30:23 -04:00
Dustin Byrne
f5e717695d feat(KB-170): CSS scroll-snap center alignment for board columns
- Change scroll-snap-align from start to center on columns (desktop and mobile)
- Add scroll-snap-type: x proximity and scroll-padding-inline on desktop .board
- Add scroll-padding-inline: calc(50% - 140px) in mobile media query
- Restructure scroll-snap tests into desktop and mobile describe blocks
- Update all test assertions to expect center alignment instead of start
2026-03-28 16:30:23 -04:00
Dustin Byrne
c3aa58f909 feat(KB-168): remove legacy public/ directory and server fallback
- Delete public/index.html, public/style.css, and public/board.js legacy assets
- Remove public/ fallback from server.ts clientDir resolution chain
- Simplify clientDir to fall through to client/ instead of public/
- Add no-legacy-public test asserting public/ files and server references are gone
2026-03-28 16:30:23 -04:00
Dustin Byrne
01e1bdab3c feat(KB-167): add mobile scroll-snap CSS to board columns
- Add scroll-snap-type: x mandatory to .board in ≤768px media query
- Set scroll-snap-align: start and flex-shrink: 0 on .column for swipe navigation
- Enable -webkit-overflow-scrolling: touch for smooth iOS scrolling
- Add mobile-scroll-snap test suite asserting snap rules inside @media block
2026-03-28 16:30:23 -04:00