Commit Graph

12 Commits

Author SHA1 Message Date
gsxdsm
b293525751 fix(dashboard): repair CSS token/contrast regressions and stale tests
Fixes ~19 deterministic dashboard test failures pre-existing on origin/main
(non-blocking full-suite lane). Mix of real product fixes and stale-test
reconciliation; no appeasement (no widened timeouts, skips, or weakened
assertions).

Product CSS fixes (real regressions the guards caught):
- Info toast contrast: shadcn-custom light theme had white-on-#0284c7 (4.10,
  below WCAG AA 4.5); enrolled it in the light-mode dark-text correction.
- 27 undefined CSS token references (typos/foreign tokens) renamed to canonical
  defined tokens; defined the genuinely-intended --border-strong and
  --right-dock-min/max-width.
- Raw rgba() box-shadow fallback tokenized to color-mix; dev-server mobile
  header split into its own responsive rule.

Stale tests reconciled with intentional product changes:
- workflowColumns graduated to always-on (board-workflows unit test).
- workflow optional-steps source re-pointed to v2 optional-group nodes.
- command-center pricing docs (one doc gap filled: openai-codex:* keying).
- SetupWizardModal added detectWorkspace + workspaceMode/taskPrefix payload.
- board-mobile listener-count assertion → unmount no-throw behavior.
- CommandCenterControls / ThemeSelector: default theme relabeled "Fusion Legacy".
- ProjectOverview / WorkflowNodeEditor: header divider intentionally removed.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-25 14:37:52 -07:00
gsxdsm
2d038e7ffa feat(FN-6950): polish dashboard responsive chrome 2026-06-22 23:58:38 -07:00
gsxdsm
f9043d733e fix(dashboard): polish workflow and chrome defaults 2026-06-22 19:48:50 -07:00
gsxdsm
ab9db246bb feat(dashboard): right dock resizes wider (max 1280) + Files goes two-pane when the dock is wide
- RIGHT_DOCK_MAX_WIDTH 720 to 1280 (all clamps/persist/aria funnel through it); CSS --right-dock-max-width raised to calc(space-2xl * 40), keeping min(100%, ...).
- The dock now threads its live width into the overflow view render props; the Files entry deterministically forces the LEFT|RIGHT two-pane split when the dock width >= 640 (no longer relying on the flaky @container query that left it stacked top/bottom). Narrow dock keeps the stacked single-panel nav; the expand pop-out stays always two-pane.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 10:11:56 -07:00
gsxdsm
19be91c9f8 feat(dashboard): shared bring-to-front z-stack for all floating modals; fix TaskChatTab tests
- Floating modals (FloatingWindow, right-dock pop-out, terminal, New Task) now share one z-index stack (floatingWindowStack) — tapping any one raises it above all others regardless of type. Floating overlays reset to z-index:auto so panels interleave in the shared 4000+ band.
- TaskChatTab tests: the test i18n now resolves the entryCount/toolCallCount plural forms (production already had them) so '2 entries'/'7 tool calls' render; fixed stale 'Tool call → result/error' casing to match the rendered 'Result'/'Error'. All 179 pass.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 05:33:10 -07:00
gsxdsm
e6aebdc316 feat(dashboard): full issue/PR preview, floating dock pop-out, header dedups, gm one-row, single-line quick entry
- GitHub import preview shows the full issue/PR body (markdown) + metadata (list already returned full bodies; removed client truncation).
- Task-detail main view: constrain width (no right cutoff); move 'Back to board' into the gray header far right.
- Dock pop-out: smoother touch drag (touch-action:none + captured-element listeners); popping out closes the dock but keeps the floating modal; modal survives dock dismiss.
- Remove duplicate inner headers in Git Manager / Activity Log / Dev Server / Secrets (dock + pop-out chrome already titles them); keep the title on mobile narrow; relocate gm Refresh into the section tab strip.
- Git Manager tabs: one scrollable row of compact icon-only tabs (max visible, scroll if needed).
- List quick entry is single-line (not tall) via singleLine prop; Board unchanged.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 04:37:28 -07:00
gsxdsm
cc2753c8a2 fix(dashboard): resizers, overlaps, dock pop-out, dedup refactors, live tweaks
Resize fixes (root causes):
- List view: clamp ResizeObserver collapsed the pane to min when container measured 0; harden + rewrite drag to pointer events with teardown.
- Mailbox: split was a CSS grid whose auto track ignored the inline width; switch to flex (pane flex:0 0 auto) + pointer-event drag. List + mailbox panes narrower mins.

Layout fixes:
- Memory Working-Memory overlap: real cause was a cascade collision (MemoryView imports SettingsModal.css, whose .memory-editor-section flex:1 won, overflowing the fixed-height editor onto siblings). Scope MemoryView rules under .memory-working-tab + intrinsic height.
- Agent detail header no longer overlaps (flex-wrap; identity flex:1 1 auto).
- Git Manager dock tabs wrap so all sections are visible (no single-tab swipe).
- Terminal shortcuts+arrows on one line; Skills full width; Skills refresh + Add Goal button heights matched; mailbox divider matches chat divider; Todos in-view header removed.

Features:
- Right-dock pop-out is now a floating, draggable, smoothly resizable, non-blocking window (transparent overlay, interact behind it).
- Command Center Overview gains an always-visible 'AI Engine' panel with View Board / View Agents.
- Default load lands on board, never the Dashboard.

Refactors (behavior-preserving):
- Extract useBoardWorkflows hook (Board + Planning dedup).
- Shared useEmbeddedPresentation hook collapses the 7-way embedded copy-paste; add embedded-presentation test coverage.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 04:18:35 -07:00
gsxdsm
4850e4309e fix(dashboard): apply code-review fixes + live UI tweaks
Code review (8 reviewers) fixes:
- P1: embedded board task-detail now passes onRequestClose so delete/merge/retry dismiss the panel (no ghost task).
- P1: RightDock + TerminalModal drag handlers add pointercancel + unmount teardown (no leaked document listeners / rAF / stuck userSelect); remove dead onOpenChange prop.
- Planning slot DOM-poll interval now caps (self-cancels on mobile); heartbeat slider persist debounced + mounted-guarded.
- Cleanup: remove dead ViewHeader-migration CSS (Skills/Insights), extract shared GithubIcon, move Activity Log embedded CSS to ActivityLogModal.css, FNXC date-format fixes, AGENTS lazy-view note.
- Update stale RightDock roster tests + LeftSidebarNav 'Compound Eng' test to current behavior.

Live UI tweaks:
- Default load lands on board, never the Command Center Dashboard.
- View Board/View Agents moved to the Command Center Overview tab (under the live-activity strip).
- Heartbeat card full-width with spaced, wrapping controls.
- Dev Server panel scrolls in the dock; ChatView right-pane title takes the full line.
- Files pop-out renders deterministic left-right two-pane.
- Mailbox list pane narrower + narrow by default; Add Goal button height matches the Compound stage button; Memory Working-Memory tab no longer overlaps; Skills view fills full width.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 03:57:10 -07:00
gsxdsm
202f34158d fix(dashboard): Files pop-out renders left-right two-pane
The .dock-files-view root lacked width:100%, so as a flex root it reported a shrunk width to its container query and the min-width:720px two-pane rule never fired in the wide expand modal (which can be ~864px and shrinks with 90vw). Add width:100% and lower the breakpoint to 640px so the pop-out shows tree-left / viewer-right; narrow dock keeps the single-panel stack.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 03:34:16 -07:00
gsxdsm
70442d2b42 feat(dashboard): dock file viewer, planning workflow switcher, gm mobile layout
- Files dock: clicking a file opens it inline (read-only FileEditor) with Back + pop-out-to-resizable-modal controls (DockFilesView).
- Planning view shows the same board WorkflowSwitcher in the same Header workflow slot (PlanningWorkflowSwitcherSlot, portaled).
- Embedded Git Manager uses the mobile single-column layout in the narrow dock (section tabs strip + full-width content).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 03:34:15 -07:00
gsxdsm
a91388198b FN-6899: make right dock persistent
Make the right dock a persistent far-right surface with its own collapse control.

- Default the right dock to visible and preserve a collapsed rail instead of hiding it entirely.\n- Remove Header right-dock toggle props and routing so More views remains a menu and left-sidebar mode has no duplicate Header toggle.\n- Update docs, changeset, and regression tests for persistent dock behavior.\n\nFiles changed:\n .changeset/fn-6899-click-revealed-right-dock.md    |  5 ++\n docs/dashboard-guide.md                            |  6 +-\n packages/dashboard/app/App.tsx                     |  1 -\n .../mobile-feature-access-regression.test.tsx      | 32 ++------\n packages/dashboard/app/components/Header.tsx       | 57 +++-----------\n packages/dashboard/app/components/RightDock.css    | 18 +++++\n packages/dashboard/app/components/RightDock.tsx    | 86 ++++++++++++----------\n .../app/components/__tests__/Header.test.tsx       | 57 +++-----------\n .../app/components/__tests__/RightDock.test.tsx    | 31 ++++++--\n .../app/components/useRightDockController.tsx      |  4 +-\n 10 files changed, 132 insertions(+), 165 deletions(-)

Fusion-Task-Id: FN-6899

Fusion-Task-Lineage: 96c4ba70-eb73-4034-8254-6a192402d905
2026-06-21 23:37:25 -07:00
gsxdsm
32455363d0 FN-6845: add resizable right dock for More views
Add a tablet and desktop right dock for overflow dashboard views while preserving mobile navigation behavior.

- Route the non-mobile More views affordance into a resizable right dock with expand-to-modal support.
- Add an overflow view registry and controller to render auxiliary dashboard views in the dock.
- Make the right dock default-on in settings alongside the default left sidebar, with explicit opt-outs for legacy tests.
- Cover right dock behavior, navigation fallbacks, and overflow registry entries with focused tests and docs.

Files changed:
 docs/dashboard-guide.md                            |  10 +
 packages/dashboard/app/App.tsx                     |  15 +-
 .../mobile-feature-access-regression.test.tsx      |  78 +++++
 packages/dashboard/app/components/Header.tsx       |  66 ++++-
 packages/dashboard/app/components/RightDock.css    | 165 +++++++++++
 packages/dashboard/app/components/RightDock.tsx    | 234 +++++++++++++++
 .../app/components/RightDockExpandModal.tsx        |  70 +++++
 .../dashboard/app/components/SettingsModal.tsx     |  17 +-
 .../app/components/__tests__/Header.test.tsx       |  70 +++++
 .../app/components/__tests__/RightDock.test.tsx    | 202 +++++++++++++
 .../__tests__/navigation-history.test.tsx          |   2 +-
 .../__tests__/overflowViewRegistry.test.tsx        |  67 +++++
 .../app/components/overflowViewRegistry.tsx        | 314 +++++++++++++++++++++
 .../app/components/useRightDockController.tsx      | 126 +++++++++
 14 files changed, 1408 insertions(+), 28 deletions(-)

Fusion-Task-Id: FN-6845

Fusion-Task-Lineage: 3cb04264-cf7a-43e1-b774-678ff3cb325b
2026-06-21 13:52:12 -07:00