Commit Graph

238 Commits

Author SHA1 Message Date
gsxdsm
3a66e2d22c feat(KB-220): rebrand dashboard to Fusion with compact toolbar and mobile layout
- Redesign dashboard header with compact toolbar layout and simplified navigation
- Add mobile responsive view with back button for task detail modal
- Rebrand documentation from KB to Fusion across README and CLI docs
- Remove legacy ActivityLogModal and consolidate settings UI
- Update GitHub import modal styling and improve test coverage
- Add visually-hidden utility class for accessibility
- Remove deprecated App.tsx and api.ts dashboard entry points
2026-03-30 18:36:41 -07:00
gsxdsm
bd83ee6d9c test(KB-086): complete Step 8 — add ActivityLogModal component tests 2026-03-30 18:36:26 -07:00
gsxdsm
eb659a8877 test(KB-224): update tests for combined definition/spec tab 2026-03-30 18:35:34 -07:00
gsxdsm
581d33cec1 feat(KB-086): complete Step 7 — integrate ActivityLogModal with Header and App 2026-03-30 18:31:38 -07:00
gsxdsm
5c02600bc8 feat(KB-086): complete Step 6 — create ActivityLogModal component with styles 2026-03-30 18:31:07 -07:00
gsxdsm
b36244f5a7 feat(KB-086): complete Step 4 — add activity log API endpoints 2026-03-30 18:30:12 -07:00
gsxdsm
8a09889116 feat(KB-223): add taskStuckTimeoutMs field to SettingsModal
- Add taskStuckTimeoutMs input field to SettingsModal UI

- Add comprehensive tests for the new setting field
2026-03-30 18:25:24 -07:00
gsxdsm
d0b499fb91 feat(KB-177): restructure ListView with dedicated create area
- Move QuickEntryBox from NewTaskModal to ListView create area
- Add list-create-area CSS styling for new layout
- Update ListView tests for new component structure
- Remove unused binary/fn renaming code from core package
- Clean up NewTaskModal and remove obsolete tests
2026-03-30 18:19:18 -07:00
gsxdsm
597acd6261 feat(KB-219): auto-focus description textarea in NewTaskModal
- Add auto-focus to description textarea when NewTaskModal opens\n- Add test to verify textarea receives focus on modal open\n- Focus management improves UX by allowing immediate typing
2026-03-30 18:13:10 -07:00
gsxdsm
ffe42cbb6c fix(KB-217): resolve planning mode hanging race condition
- Fix race condition causing planning mode to hang after submitting answers
- Keep SSE connection alive during response submission to prevent premature disconnect
- Add scrollable CSS styling for AI thinking output display in planning mode
- Add tests for race condition fix ensuring subsequent questions are received
- Include changeset for planning mode patch release
2026-03-30 18:12:49 -07:00
gsxdsm
0a71659fbb feat(KB-171): propagate availableModels prop through dashboard component tree
- Update App.tsx to fetch and pass availableModels to Board
- Update Board component to accept and pass availableModels to Column
- Update Column component to receive availableModels prop
- Update ListView to handle availableModels prop
- Update Board test mock to include availableModels prop
2026-03-30 18:00:17 -07:00
gsxdsm
75189f51bc feat(KB-216): implement auto-load behavior for GitHub import modal
- Add auto-load behavior to GitHubImportModal component
- Modal now automatically fetches and displays importable repositories on open
- Update tests to cover auto-load state transitions and error handling
- Refactor test setup for improved maintainability
2026-03-30 17:58:29 -07:00
gsxdsm
f6468a7a97 feat(KB-163): add rich task creation UI to QuickEntryBox
- Update QuickEntryBox with rich creation UI including title, description, column selection, and dependency fields
- Add CSS styles for new QuickEntryBox components
- Update Column, Board, and ListView components with TaskCreateInput signature and allTasks prop
- Add comprehensive tests for QuickEntryBox rich creation features
- Remove settings CLI commands (no longer needed)
2026-03-30 17:38:24 -07:00
gsxdsm
bbbb668044 test(KB-215): add pace integration tests for usage indicators
- Add backend tests verifying pace is attached to windows with valid timing data

- Add frontend test verifying UsageIndicator displays pace from backend data

- Test full data flow from backend calculation to UI display
2026-03-30 17:18:18 -07:00
gsxdsm
cf5a98fdf0 feat(KB-104): move file browser from task modal to toolbar
- Add backend API routes and file service for project-scoped file operations
- Create useProjectFileBrowser and useProjectFileEditor hooks with comprehensive tests
- Update FileBrowserModal to support both task and project modes via dualMode prop
- Add Files button to dashboard header toolbar
- Remove Files tab from TaskDetailModal
- Integrate project file browser into main App layout
- Include changeset for @dustinbyrne/kb package
2026-03-30 17:06:50 -07:00
gsxdsm
0ab4f251cf feat(KB-101): add ntfy notification test button in settings
- Add /api/settings/test-ntfy endpoint for sending test notifications
- Add test notification button to SettingsModal when ntfy is enabled
- Display success/error feedback after test notification attempt
- Add comprehensive tests for test notification flow
- Include changeset for patch release
2026-03-30 16:54:01 -07:00
gsxdsm
304506b237 feat(KB-069): add Archive All Done feature
- Add archiveAllDone method to TaskStore with filtering and batch archive
- Add POST /tasks/archive-all-done API endpoint with tests
- Add useTasks hook support and API function for archiveAllDone
- Add Archive All button to done column header in Board UI
- Wire up onArchiveAllDone through Board component hierarchy
2026-03-30 16:50:34 -07:00
gsxdsm
107fbe17dc feat(KB-179): reorder search bar left of view toggle
- Move search bar to the left of the view toggle in Header component
- Remove batch badge fetching implementation (useBatchBadgeFetch hook, tests, GitHub routes)
- Clean up associated types and API endpoints
- Add changeset for visual improvement
2026-03-30 16:41:37 -07:00
gsxdsm
7899345cfa feat(KB-064): add batch GitHub badge status fetching
- Add batch status API types (BatchStatusRequest, BatchStatusResponse, etc.)

- Add batch GitHub client wrappers for efficient PR/issue status fetching

- Create useBatchBadgeFetch hook for coordinated dashboard fetching

- Update Board component to batch fetch badge statuses on mount

- Update TaskCard to merge batch, WebSocket, and task data with freshness comparison

- Add batch status REST endpoint at POST /api/tasks/batch/status
2026-03-30 16:41:24 -07:00
gsxdsm
2508682a29 feat(KB-173): add Zen theme to dashboard
- Add Zen to COLOR_THEMES array in core types
- Add Zen theme CSS styles with dark and light variants
- Add Zen theme option to ThemeSelector component
- Add tests for Zen theme selection in ThemeSelector
- Update index.html theme initialization to include Zen
- Add changeset for the new theme
2026-03-30 16:34:49 -07:00
gsxdsm
e03bd1ae38 feat(KB-045): add scheduled tasks automation system
- Add AutomationStore and core automation types for cron-based scheduling
- Implement CronRunner engine for executing scheduled automations
- Add REST API routes for CRUD operations on automations
- Create UI components: ScheduleCard, ScheduleForm, and ScheduledTasksModal
- Integrate scheduled tasks into dashboard App.tsx and CLI dashboard command
- Add comprehensive tests for store, runner, API, and UI components
- Include changeset for the new scheduled tasks feature
2026-03-30 16:27:23 -07:00
gsxdsm
5f60afc02d feat(KB-211): fix TaskCard memoization test for React StrictMode
- Update TaskCard test to handle React StrictMode double-rendering behavior
- Fix memoization assertions that fail under StrictMode
- Ensure test correctly accounts for development mode re-renders
2026-03-30 16:19:30 -07:00
gsxdsm
af87361992 test(KB-210): fix mobile viewport test expectations
- Update test to expect terminal button in overflow menu on mobile
- Update test to expect usage button inline on all screen sizes
- Clarify pause controls remain inline on mobile
- Fix test descriptions to match actual UI behavior
2026-03-30 16:17:56 -07:00
gsxdsm
7e1fdfeaf2 feat(KB-152): add Minimax and Zai providers with usage pace indicators
- Add Minimax provider backend with full test coverage
- Add Zai (Zhipu AI) provider backend for additional model options
- Implement pace calculation in UsageWindow with ahead/behind/on-pace detection
- Update UsageIndicator frontend component to consume backend pace data
- Fix pace indicator colors and icons to match design specification
- Resolve ListView QuickEntryBox type error for type safety
2026-03-30 13:45:52 -07:00
gsxdsm
01faf8cb89 test(KB-197): fix Pencil mock in TaskCard tests 2026-03-30 13:19:53 -07:00
gsxdsm
56d2dbb357 test(KB-197): complete Step 2 — add regression tests for size badge positioning 2026-03-30 13:17:36 -07:00
gsxdsm
d59d81f079 feat(KB-197): complete Step 1 — fix card header layout with actions wrapper 2026-03-30 13:17:00 -07:00
gsxdsm
cc31967d65 feat(KB-194): add collapsible sections to ListView with localStorage persistence
- Add collapse state management with localStorage persistence per section
- Update section headers with chevron icon and click handler
- Conditionally render task rows based on collapsed state
- Add aria-expanded attribute for accessibility
- Add comprehensive tests for collapsible section behavior
2026-03-30 13:15:59 -07:00
gsxdsm
fc0ce7cf95 feat(KB-193): auto-expand steps for in-progress task cards
- Auto-expand steps disclosure when task is in-progress
- Keep steps collapsed for todo/done/archived states
- Add comprehensive tests for auto-expand behavior in TaskCard
- Update TaskCard component with expanded state logic
2026-03-30 12:49:25 -07:00
gsxdsm
b0f1de4eb1 feat(KB-192): move progress bars to top of definition tab
- Reposition progress indicator bars to the top of the definition tab in TaskDetailModal
- Add changeset for the UI improvement
2026-03-30 12:42:44 -07:00
gsxdsm
a833b7e455 feat(KB-191): change request refinement button to 'Refine'
- Update TaskDetailModal button text to 'Refine'

- Update test assertions in TaskDetailModal.test.tsx

- Add changeset for the UI text change

- Remove stale kb-100-header-test-branding changeset file
2026-03-30 12:39:38 -07:00
gsxdsm
c6774d8162 feat(KB-188): reorganize header button layout for mobile
- Reorganize Header component button layout for mobile view

- Update Header tests with mobile layout coverage

- Improve responsive button arrangement in mobile breakpoint
2026-03-30 12:26:33 -07:00
gsxdsm
cdeaa48432 feat(KB-183): replace native select with CustomModelDropdown in SettingsModal
- Replace native <select> with CustomModelDropdown for model selection
- Remove legacy option filtering and selection logic from SettingsModal
- Update SettingsModal tests to work with new dropdown component
- Add comprehensive test coverage for CustomModelDropdown interactions
2026-03-30 12:16:59 -07:00
gsxdsm
b372200949 feat(KB-097): clean up type errors and remove obsolete code
- Remove stale changeset files (mobile touch fixes, subtask breakdown)
- Fix type errors in QuickEntryBox and TaskCard components
- Remove obsolete test files (TaskCard.test.tsx, triage.test.ts)
- Fix import issues in planning.ts
- Clean up triage.ts and useAgentLogs.ts
2026-03-30 11:47:37 -07:00
gsxdsm
75821418ee fix(KB-167): prevent task modal from opening on mobile scroll
- Implement touch gesture detection to distinguish tap from scroll gestures
- Add CSS touch-action property for proper mobile scroll handling
- Add comprehensive tests for touch gesture behavior in TaskCard
- Include changeset for patch release
2026-03-30 11:42:56 -07:00
gsxdsm
ba69864707 feat(KB-149): add mobile touch gesture support to TaskCard
- Implement touch gesture detection for swipe and tap interactions in TaskCard
- Add comprehensive tests for touch event handling (209 lines of test coverage)
- Include changeset for mobile touch sensitivity fix
- Enable smooth card interactions on mobile devices
2026-03-30 11:40:09 -07:00
gsxdsm
50cd478f2e feat(KB-129): dashboard performance optimizations
- Fix SSE hook cleanup to prevent memory leaks and stale connections
- Cap agent log memory and optimize batch log processing
- Memoize Board, Column, and TaskCard with custom comparator to reduce re-renders
- Stabilize column task arrays and preserve pagination across live updates
- Add TaskCardBadge component for PR/issue state display
- Remove deprecated GitHub polling code and archive functionality from core store
2026-03-30 11:26:55 -07:00
gsxdsm
66b2aac57f feat(KB-168): add usage pace indicator to dashboard
- Add pace calculation based on task velocity to UsageIndicator
- Display pace marker and progress bar with visual indicators
- Add view mode toggle for compact vs detailed display
- Include comprehensive tests for pace indicator behavior
- Add changeset for the new feature
2026-03-30 10:44:14 -07:00
gsxdsm
519c792e00 test(KB-120): add search filter tests for Header and Board
- Add Header search tests for filter functionality (48 lines)

- Add Board search filter tests for task filtering (203 lines)

- Remove unused code from TaskDetailModal component

- Cover search input rendering and filter behavior for both components
2026-03-30 09:17:29 -07:00
gsxdsm
2e163a37df feat(KB-166): fix search reset bug in dependency dropdown
- Fix search input resetting when selecting dependencies in PlanningModeModal
- Remove obsolete changeset file fix-planning-modal-autostart.md
- Update PlanningModeModal tests for the fixed behavior
- Add focus management improvements in TaskDetailModal
2026-03-30 09:15:29 -07:00
gsxdsm
8debaec941 fix(KB-165): resolve planning modal autostart in StrictMode
- Fix double-render bug by using ref for hasAutoStarted instead of state\n- Enable auto-start planning tests in App.test.tsx and ListView.test.tsx\n- Add changeset for the planning modal autostart fix\n- Add comprehensive tests for planning mode auto-start behavior
2026-03-30 09:13:10 -07:00
gsxdsm
4784b4bc8d feat(KB-164): unify list view task creation with board view modal
- Replace inline QuickEntryBox with NewTaskModal trigger in list view
- Wire ListView to open NewTaskModal via onCreateTask prop
- Remove standalone task creation logic from QuickEntryBox
- Update App component to pass modal handlers to ListView
- Simplify QuickEntryBox to pure quick-entry without inline creation
- Update tests to verify unified modal-based creation flow
2026-03-30 09:12:23 -07:00
gsxdsm
168618efb1 feat(KB-160): implement expandable textarea in QuickEntryBox
- Add expandable textarea with auto-resize functionality to QuickEntryBox
- Update QuickEntryBox tests for new expandable behavior
- Refactor PlanningModeModal tests for improved consistency
- Remove obsolete changeset for planning-mode-streaming fix
- Add CSS transitions for smooth textarea expansion
2026-03-30 09:06:57 -07:00
gsxdsm
9823849346 test(KB-159): skip timing-sensitive auto-start tests 2026-03-30 09:02:00 -07:00
gsxdsm
63106cf449 test(KB-159): update PlanningModeModal tests for streaming 2026-03-30 08:59:21 -07:00
gsxdsm
a749d206d3 feat(KB-158): fix refresh button spacing and remove transient error detection
- Fix refresh button icon spacing in UsageIndicator component

- Remove transient error detection feature and related tests

- Clean up planning mode API routes and modal integration code

- Add changeset for refresh button spacing fix

- Remove obsolete handle-transient-errors changeset
2026-03-30 08:55:19 -07:00
gsxdsm
c12428e996 feat(KB-159): complete Step 4 — update frontend for streaming display 2026-03-30 08:55:07 -07:00
gsxdsm
9085e8d867 feat(KB-153): add usage view mode toggle and provider icons
- Add 'used' vs 'remaining' view mode toggle with localStorage persistence
- Integrate ProviderIcon component for visual provider identification
- Add getProviderIconKey helper to map provider names to icon keys
- Update UsageWindowRow to display percentages based on selected view mode
- Add comprehensive tests for view mode toggle and icon rendering
2026-03-30 08:50:41 -07:00
gsxdsm
fb0846fc17 feat(KB-155): fix dropdown search reset in TaskDetailModal
- Fix search input state not resetting when task detail modal reopens
- Remove obsolete mobile input font size test file
- Clean up stale changeset for PTY loading fix
- Update terminal service error handling
- Remove test artifacts and temporary KB-* directories
2026-03-30 08:40:13 -07:00
gsxdsm
e35c745fc2 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