Commit Graph

9 Commits

Author SHA1 Message Date
gsxdsm
d67f61d03e FN-6135: remove workflow toolbar collapse toggle
Simplify the workflow board toolbar by removing its collapse state and persistence.

- remove the workflow toolbar collapse toggle, handlers, and scoped localStorage persistence from Board
- drop collapse-specific workflow toolbar styling and mobile collapsed-layout rules
- replace collapse-focused board tests with assertions that the toolbar renders without a collapse affordance
- remove the unused workflow toolbar storage key and update project storage expectations

Files changed:
 packages/dashboard/app/components/Board.tsx        | 129 +++++---------
 packages/dashboard/app/components/Lane.css         |  36 ----
 .../app/components/__tests__/Board.test.tsx        | 187 +++------------------
 .../app/utils/__tests__/projectStorage.test.ts     |   3 +-
 packages/dashboard/app/utils/projectStorage.ts     |   1 -
 5 files changed, 60 insertions(+), 296 deletions(-)

Fusion-Task-Id: FN-6135

Fusion-Task-Lineage: 11c17edf-bbed-4ec5-a06e-00a2537ffac1
2026-06-09 16:02:08 -07:00
gsxdsm
dfb037edd8 FN-6133: fix workflow toolbar toggle accessibility
Replace the empty workflow toolbar icon toggle with an accessible text control.

- move workflow toolbar collapse/expand handling into shared click and keyboard callbacks
- make the expanded toolbar itself clickable while rendering a focusable "Workflow" label in collapsed mode
- update toolbar styling and Board tests to cover keyboard toggling, single-workflow cases, and the absence of empty icon buttons

Files changed:
 packages/dashboard/app/components/Board.tsx        |  51 ++++++++---
 packages/dashboard/app/components/Lane.css         |  19 +++-
 .../app/components/__tests__/Board.test.tsx        | 100 +++++++++++++++++++--
 3 files changed, 147 insertions(+), 23 deletions(-)

Fusion-Task-Id: FN-6133

Fusion-Task-Lineage: 6dd217a0-ede0-424a-8ab7-cdde39d2b6ce
2026-06-09 15:05:25 -07:00
gsxdsm
17312c9fae FN-6118: make workflow lane headers tappable
Replace the empty lane toggle button with an accessible tappable header for workflow rows on mobile.

- make the full workflow lane header act as the collapse toggle
- add keyboard support plus hover and focus-visible states for the header control
- update Lane tests to cover header click, keyboard toggles, and removal of the empty icon button

Files changed:
 packages/dashboard/app/components/Lane.css         | 11 +++++++
 packages/dashboard/app/components/Lane.tsx         | 30 +++++++++++--------
 packages/dashboard/app/components/__tests__/Lane.test.tsx | 35 +++++++++++++++++++---
 3 files changed, 60 insertions(+), 16 deletions(-)

Fusion-Task-Id: FN-6118

Fusion-Task-Lineage: 0cc1b632-1e59-4d1d-b274-f1da53a503f4
2026-06-09 12:51:20 -07:00
gsxdsm
4366a933da FN-6046: add collapsible workflow selectors
Add collapsible workflow selectors for board workflow controls and inline task creation.

- add a collapsible board workflow toolbar with persisted per-project state
- make the inline create workflow selector collapsible and store its expanded state per project
- update workflow selector styling, storage key allowlist, and regression coverage for collapse behavior

Files changed:
 packages/dashboard/app/components/Board.tsx        | 104 +++++++++++++--------
 .../dashboard/app/components/InlineCreateCard.css  |   9 ++
 .../dashboard/app/components/InlineCreateCard.tsx  |   3 +
 packages/dashboard/app/components/Lane.css         |  23 +++++
 .../dashboard/app/components/WorkflowSelector.css  |  20 +++-
 .../dashboard/app/components/WorkflowSelector.tsx  |  81 ++++++++++++++--
 .../app/components/__tests__/Board.test.tsx        | 101 ++++++++++++++++++--
 .../components/__tests__/InlineCreateCard.test.tsx |  57 ++++++++++-
 .../components/__tests__/WorkflowSelector.test.tsx |  73 ++++++++++++++-
 .../app/utils/__tests__/projectStorage.test.ts     |   4 +-
 packages/dashboard/app/utils/projectStorage.ts     |   2 +
 11 files changed, 420 insertions(+), 57 deletions(-)

Fusion-Task-Id: FN-6046

Fusion-Task-Lineage: 07cbe7a8-5740-479d-94a3-b178c72a5273
2026-06-09 02:09:31 -07:00
gsxdsm
59c613cf38 FN-6052: move hold-task promote action into task cards
Move hold-column promotion into the shared task card action row.

- pass hold-column promote handlers and loading state through Column into TaskCard
- render a card-level Promote button with shared action styling and loading behavior
- remove the separate hold-column wrapper/button styling in Lane.css
- update Column and Lane tests to target the card-level promote control and add TaskCard coverage

Files changed:
 packages/dashboard/app/components/Column.tsx       | 64 ++++++++------------
 packages/dashboard/app/components/Lane.css         |  9 ---
 packages/dashboard/app/components/TaskCard.css     | 37 ++++++++++++
 packages/dashboard/app/components/TaskCard.tsx     | 32 +++++++++-
 .../app/components/__tests__/Column.test.tsx       | 16 +++--
 .../app/components/__tests__/Lane.test.tsx         | 16 +++--
 .../app/components/__tests__/TaskCard.test.tsx     | 70 ++++++++++++++++++++++
 7 files changed, 187 insertions(+), 57 deletions(-)

Fusion-Task-Id: FN-6052

Fusion-Task-Lineage: b2f98e06-cd3f-4f49-b540-68b56753c1fb
2026-06-09 01:29:47 -07:00
gsxdsm
56b194383d fix: address workflow PR feedback 2026-06-07 23:30:16 -07:00
gsxdsm
e138971030 fix: stabilize workflow board and loop recovery 2026-06-07 23:30:16 -07:00
gsxdsm
65c915bb36 fix(ci): lane columns snap-align center per mobile scroll-snap convention 2026-06-04 03:52:45 -07:00
gsxdsm
3aa8d2d28b feat(dashboard): flag-gated multi-lane board — lane per workflow, trait-keyed columns, typed drag rejections, hold promote (U9) 2026-06-04 01:49:51 -07:00