- Add a project storage utility with scoped key helpers and key inventories for global vs project state
- Scope dashboard/task view, list preferences, quick-entry drafts, agent/tree state, terminal tabs, usage view, and modal draft persistence to projectId
- Reload persisted UI state when project context changes so per-project settings and drafts do not leak across projects
- Update and expand dashboard tests, including new projectStorage coverage and scoped persistence regression fixes
- Extract useViewportMode into a reusable hook and update Header/ListView to use it
- Render mobile ListView cards with collapsible column sections, card metadata, and selection support
- Add mobile-first styles for card layout, touch targets, focus states, and quick-entry overflow handling
- Expand ListView and QuickEntryBox tests to cover mobile rendering and interaction behavior
- Add task-agent assignment API helpers with coverage for assign, unassign, and list endpoints
- Show assigned agent badges on task cards and add assignment controls in TaskDetailModal
- Add agent task management tab plus agent selectors in quick and inline task creation UIs
- Expand component test coverage and include a changeset for the dashboard agent assignment feature
- Replace direct Deps/Models/Save controls with a single actions trigger in QuickEntryBox
- Add portaled actions dropdown behavior, including outside-click and Escape handling plus menu repositioning
- Add actions badge styling/count to reflect selected dependencies and model overrides
- Update QuickEntryBox/ListView tests and AGENTS.md docs to match the new actions-menu interaction flow
- Redesign QuickEntryBox to use a collapsible disclosure panel for plan, subtask, and AI refine actions
- Add disclosure toggle button (lightbulb icon) that expands/collapses the action panel
- Move dependency picker and model overrides into the disclosure panel
- Update ListView and QuickEntryBox tests to cover new disclosure panel behavior
- Add CSS styles for disclosure panel transitions and layout
- Remove the actions dropdown (⋯) and move Plan, Subtask, and other action buttons directly into the disclosure panel
- Simplify QuickEntryBox component by eliminating dropdown menu state management and nested menu logic
- Update QuickEntryBox tests to reflect the simplified UI with direct button access
- Remove dependency/model selection submenus previously housed in the actions dropdown
- Refactor QuickEntryBox to use an actions dropdown (⋯) for advanced controls (deps, models, save)
- Move dependency picker and model selection (plan/executor/validator) into nested dropdown menus
- Add Plan (lightbulb) and Subtask (list) quick-action buttons to the input bar
- Update ListView and QuickEntryBox tests for new dropdown-driven UI
- Add CSS styles for dropdown menus, nested submenus, and action buttons
- Update AGENTS.md and README.md docs for the new QuickEntryBox layout
- Widen quick-entry Models menu to fill viewport on mobile (≤640px) with side padding
- Keep menu viewport-clamped to prevent horizontal crowding on small screens
- Update dashboard README with mobile model menu documentation
- Close the refine model dropdown as soon as a selection is made instead of waiting for the next render cycle
- Add test verifying the dropdown closes immediately upon refine selection in QuickEntryBox
- Document nested model menu behavior in QuickEntryBox in AGENTS.md
- Add README section describing the model selection nested menu pattern
- Add regression tests for nested model menu submenu open/close behavior
- Port model menu dropdown to a portal for proper z-index layering above overlays
- Stabilize filter input behavior inside the portaled menu
- Add CSS styles for portal-based menu positioning and layering
- Add comprehensive tests for the portaled QuickEntryBox model menu
- Add changeset for the published package fix
- Add CSS custom properties (--kb-logo-accent, --kb-cta-*) for logo accent color and new-task action buttons
- Update logo.svg to use currentColor for theme-aware accent stroke
- Apply tokenized styling to Header logo, QuickEntryBox, InlineCreateCard, ListView, and Column new-task buttons
- Add theme-aware test assertions for logo and CTA buttons in Header, InlineCreateCard, ListView, and QuickEntryBox tests
- Document theme token system in dashboard README
- Refactor QuickEntryBox to use a nested dropdown menu for model selection instead of a separate modal
- Add model preset support with auto-selection by task size in the quick entry UI
- Refactor and simplify QuickEntryBox test suite (294 lines consolidated)
- Update ListView tests to match the new menu-based model selection flow
- Add new CSS styles for nested menu, model selector, and preset indicator components
- Extend ModelSelectionModal with preset picker and apply-to-task wiring
- Wire preset state through QuickEntryBox and InlineCreateCard new-task flows
- Add regression tests for preset selection in ModelSelectionModal, QuickEntryBox, InlineCreateCard, and ListView
- Update dashboard README with preset-in-quick-add documentation
- Clean up unused footer-safe-layout test and adjust styles
- Move Plan and Subtask buttons next to the description input in QuickEntryBox, InlineCreateCard, and TaskForm
- Improve action button layout with consistent icon+label pattern and disabled states
- Add CSS styles for new action button group and description-adjacent controls
- Add regression tests for all three task creation surfaces ensuring buttons appear next to description
- Document the description-adjacent AI controls pattern in dashboard README
- Wire favorite model state into QuickEntryBox with star toggle and dropdown integration
- Add favorite model selector to Board and Column quick-add components
- Pass favorite models through ListView and App context to entry surfaces
- Add regression tests for QuickEntryBox, Board, Column, and ListView favorite behavior
- Update dashboard README to document quick-add favorite model support
- Remove unused recovery-policy module and dead code from executor/triage/scheduler
- Clean up unused types from core and simplify store methods
- Reset isDisclosureExpanded in QuickEntryBox resetForm so disclosure collapses after task creation
- Remove sticky disclosure persistence from QuickEntryBox component
- Preserve terminal sessions across transient WebSocket disconnects with buffer/replay
- Buffer and replay initial terminal state for prompt visibility on reconnect
- Update tests for non-persistent disclosure, terminal reconnect, and server routes
- Remove unused UsageIndicator tests and TaskDetailModal test cleanup
- Add favorite model selection to QuickEntryBox and InlineCreateCard components
- Wire up model favorites in TaskForm and TaskDetailModal
- Add model favorites management UI to SettingsModal
- Add tests for favorites in InlineCreateCard, QuickEntryBox, TaskForm, ListView, and SettingsModal
- Remove unused CommitDiffTab component and related tests
- Fix state desync between isExpanded and isDisclosureExpanded in QuickEntryBox component
- Ensure both states update together to prevent UI inconsistencies
- Add regression tests for state synchronization scenarios
- Add 72 lines of new test coverage in QuickEntryBox.test.tsx
- Add testid to save button in InlineCreateCard for test targeting
- Add tests verifying InlineCreateCard buttons are hidden when collapsed
- Add tests verifying QuickEntryBox controls have hidden attribute when collapsed
- Add tests for toggle behavior and button accessibility in both components
- Add autoExpand prop to QuickEntryBox (defaults to true for backward compatibility)
- When autoExpand is true, component auto-expands on focus
- List view passes autoExpand={false} to keep view collapsed by default
- Board view continues to auto-expand using default behavior
- Add tests for both autoExpand modes and verify focus behavior
- Add project selector component with search and dropdown UI
- Add Task Changes tab styles for viewing diffs in task detail
- Implement QuickEntryBox disclosure pattern with collapsible controls panel
- Move Usage and Activity Log buttons to mobile overflow menu
- Add disclosure preference persistence via localStorage
- Complete legacy comment migration for unified comments system
- Update QuickEntryBox tests for disclosure behavior
- Add chevron expand/collapse toggles to dashboard quick-add flows in list and board views
- Keep advanced quick-add controls hidden until expanded and collapse them after successful submission
- Tighten quick-add accessibility and blur behavior around overlays and empty drafts
- Add dashboard regression coverage and a published changeset for the quick-add interaction update
- Add an autoExpand prop to QuickEntryBox with default focus expansion behavior
- Preserve manual expand and blur persistence while allowing list view to opt out
- Add coverage for autoExpand={false} behavior in QuickEntryBox tests
- Include a published-package changeset describing the quick entry behavior change
- Render ModelSelectionModal via createPortal to document.body so it is no longer clipped behind the board on mobile
- Add SSR guard (typeof document check) around the portal call
- Update QuickEntryBox test to assert the modal is portaled outside the component container
- Add changeset for the patch fix
- Add toggle button (ChevronDown/ChevronUp) to QuickEntryBox (list view) and InlineCreateCard (board view)
- Replace auto-expand behavior with manual toggle control
- Add CSS styles for collapsed/expanded states and toggle button positioning
- Update tests to verify toggle behavior
- Provide cleaner default UI while keeping advanced options discoverable
- Add persistent disclosure state with localStorage to QuickEntryBox
- Add toggle button for manual expand/collapse with ChevronUp/Down icons
- Change expanded controls to show based on user preference, not focus
- Add comprehensive CSS for toggle button and expanded/collapsed states
- Reorganize mobile header overflow menu (Usage and Activity Log buttons)
- Update all QuickEntryBox tests for new disclosure behavior
- Add autoExpand prop to QuickEntryBox component (defaults to true for backward compatibility)
- Pass autoExpand={false} in ListView to prevent auto-expansion on focus
- Board view continues to auto-expand by default
- Add test coverage for autoExpand={false} behavior
- Optimize backup tests using fake timers instead of real timeouts
- Enable parallel file execution in core, engine, CLI, and dashboard packages
- Add inline test helpers to reduce dependencies in dashboard routes tests
- Update executor tests with exact command matching and improved assertions
- Update AGENTS.md with test optimization patterns (fake timers, unique temp dirs)
- Add disclosure state with expanded/collapsed toggle button
- Implement disclosure pattern CSS styles for visual feedback
- Update QuickEntryBox to support expandable/collapsible interface
- Fix CSS variable reference: use --card-hover instead of non-existent --background-hover
- Set default disclosure state to expanded (true) for backward compatibility
- Add comprehensive tests for disclosure state, toggle behavior, and interactions
- Add toggle button to QuickEntryBox (list view) for expand/collapse
- Add toggle button to InlineCreateCard (board view) for expand/collapse
- Add CSS styles for toggle buttons and collapsed states
- Update component tests for new toggle functionality
- Add changeset for the toggle button feature
- Add autoExpand prop to QuickEntryBox component (defaults to true for backward compatibility)
- Pass autoExpand={false} from ListView to prevent automatic expansion on focus
- Keep board view with default auto-expand behavior
- Add test coverage for autoExpand={false} behavior
- Add changeset for patch release
- Add project API methods and types (fetchProjects, registerProject, fetchProjectHealth, etc.)
- Add ProjectCard component with health metrics, status badges, and pause/resume actions
- Add server-side project management routes for multi-project orchestration
- Add ActivityFeed component with grouped entries and project badges
- Add SetupWizard component with 5-step project creation flow
- Fix TypeScript errors in server routes for listProjects and getGlobalConcurrencyState
- Add autoExpand prop to QuickEntryBox component (defaults to true)
- Disable auto-expand in list view to reduce visual clutter
- Add tests for autoExpand={false} behavior
- Add changeset for the quick entry auto-expand change
- Fix duplicate variable in QuickEntryBox component
- Remove unused imports from useTasks hook
- Change default task prefix from KB to FN across all packages
- Rename branch naming pattern from kb/{id} to fusion/{id}
- Update all test assertions and fixtures to use new prefixes
- Add changeset for the breaking change
- Resolve merge conflicts in TaskCard.test.tsx touch gesture tests
- Change QuickEntryBox Save button to immediately create task instead of just saving
- Add draft persistence to InlineCreateCard via localStorage for recovery
- Add comprehensive tests for InlineCreateCard draft persistence
- Update QuickEntryBox tests for new save-and-create behavior
- Rename @kb/core, @kb/dashboard, @kb/engine to @fusion/* namespace
- Update all import statements across 143+ files to use new package names
- Update workspace dependencies and root package.json references
- Fix bundler configurations (tsup, vite) for new package names
- Update test files and fix typecheck issues
- Add changeset file documenting the package rename
- Add onMouseDown handler with preventDefault() to action buttons in QuickEntryBox
- Prevent focus blur when clicking Deps, Models, Plan, and Subtask buttons
- Add regression tests to verify button interactions maintain focus
- Fixes focus loss issue when using QuickEntryBox action buttons while typing
- Add Save button to QuickEntryBox component for manual task creation
- Include loading state and disabled state during submission
- Add comprehensive tests for Save button functionality (114 lines)
- Add changeset for the new save button feature
- Add AI text refinement backend service with OpenAI/Anthropic integration
- Add /api/refine-text API endpoint with error handling
- Add QuickEntryBox AI refine button with style presets menu
- Add NewTaskModal AI refine feature for task description editing
- Add comprehensive tests for backend service, API, and components
- Add changeset for the new feature
- Persist draft task input in localStorage to prevent data loss on refresh
- Restore saved draft when component mounts
- Clear localStorage entry when task is successfully created
- Add comprehensive tests for persistence behavior
- Remove fixed positioning styles from ListView component
- Collapse QuickEntryBox on blur regardless of content (only check dropdowns open state)
- Change expanded controls to show only when focused (isExpanded), not when content exists
- Remove dependency on text content for determining expanded state
- Update all QuickEntryBox tests to reflect new blur behavior and focus requirements
- Fix test async handling with act() for timer advancement
- Replace 'break into subtasks' checkbox with explicit Plan and Subtask buttons
- Update InlineCreateCard (Board view) and QuickEntryBox (List view) with new button layout
- Wire up button callbacks in App.tsx, Board, and ListView components
- Update and add tests for disabled button behavior when no description entered
- Document new Plan and Subtask button behavior in AGENTS.md
- 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)