Restores mobile access to all task detail tabs by making the tab strip the horizontal scroller.
- Allow the task-detail content, body, modal tabs, tablet tabs, and embedded tabs to shrink within narrow containers.
- Preserve touch horizontal panning and momentum scrolling on tab strips without moving horizontal overflow to the detail body.
- Cover the Board modal, List embedded pane, and complete tab label set with responsive CSS regression tests.
- Add a patch changeset for the published Fusion package.
Files changed:
.../fn-7012-task-detail-mobile-tabs-scroll.md | 7 +++
.../dashboard/app/components/TaskDetailModal.css | 25 +++++++-
...etailModal.responsive-and-dependencies.test.tsx | 67 +++++++++++++++++++++-
3 files changed, 96 insertions(+), 3 deletions(-)
Fusion-Task-Id: FN-7012
Fusion-Task-Lineage: 06b06a81-b9ec-4058-879f-2f5e187a63a4
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>
Remove the stale branch reattachment affordance from Task Detail while preserving self-healing as the recovery path.
- Remove unused rebind banner styles and mobile action-shell rules.
- Drop stale recoverBranchBinding mocks from TaskDetailModal tests.
- Add rendering coverage proving Task Detail and embedded content do not show reattachment affordances across missing, populated, workspace, and mobile branch states.
- Add a patch changeset for the published Fusion package.
Files changed:
.changeset/fn-6983-task-detail-rebind-warning.md | 7 ++
.../dashboard/app/components/TaskDetailModal.css | 42 +-----------
.../TaskDetailModal.create-pr-e2e.test.tsx | 1 -
.../TaskDetailModal.create-pr-integration.test.tsx | 1 -
.../__tests__/TaskDetailModal.rendering.test.tsx | 80 ++++++++++++++++++++++
.../__tests__/TaskDetailModal.test-helpers.ts | 1 -
6 files changed, 88 insertions(+), 44 deletions(-)
Fusion-Task-Id: FN-6983
Fusion-Task-Lineage: 1a45c38e-f7d0-4df7-94cf-7d1309758e0d
- Terminal move/resize: pointer-capture + captured-element listeners + rAF-batched updates + touch-action:none on the move grip; stop per-move localStorage writes. Matches the dock pop-out smoothness.
- Task detail: Summarize-as-title inline at the title's bottom-right; priority + speed controls shorter and equal height (30px); trimmed the gray id-header vertical padding.
- Fix footer Actions/Move dropdowns that vanished — they opened downward off the panel bottom (clipped by overflow); now open upward (above the trigger).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- 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>
Workspace tasks (no task.worktree, populated workspaceWorktrees) now render in
existing task views without crashing or going blank. New read-only
WorkspaceWorktreesSummary component (placeholder "N repos acquired" + a flat
repo→worktree/branch list — within the "doesn't look broken" ceiling, not a rich
status UI); TaskCard and TaskDetailModal nil-guard on isWorkspaceTask. Single-repo
rendering unchanged. CONCEPTS.md notes workspace-task merges are non-atomic
(repos land independently on local integration refs; partial-land is local and
operator-resettable). Tests 8/8; TaskCard regression 251/251.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Expanded agent chat now keeps the modal title context while hiding the rest of the chrome.
- Preserve the task title row when chat expands and keep header spacing balanced.
- Continue hiding tabs and modal actions while expanded chat occupies the modal body.
- Extend desktop, mobile, and embedded chat coverage for the expanded title-row behavior.
Files changed:
.../dashboard/app/components/TaskDetailModal.css | 10 ++--
.../TaskDetailModal.attachments-and-tabs.test.tsx | 58 ++++++++++++++++++++--
2 files changed, 59 insertions(+), 9 deletions(-)
Fusion-Task-Id: FN-6517
Fusion-Task-Lineage: 77a82f16-5711-4e8d-9560-fd6e0fdfa655
Keeps tablet task detail modals wide enough and within the viewport.\n\n- Reconcile the tablet overlay offset with modal max-height so actions remain visible.\n- Widen the tablet task detail modal to use more horizontal viewport space.\n- Add CSS-focused coverage for tablet sizing plus unchanged desktop and mobile guards.\n- Add a patch changeset for the published Fusion package.\n\nFiles changed:\n .changeset/fn-6500-tablet-task-detail-modal.md | 5 ++\n .../task-detail-modal-tablet-width.test.ts | 14 +++--\n .../dashboard/app/components/TaskDetailModal.css | 15 +++--\n ...etailModal.responsive-and-dependencies.test.tsx | 64 ++++++++++++++++++++++\n .../__tests__/core-modals-mobile.test.tsx | 5 +-\n 5 files changed, 94 insertions(+), 9 deletions(-)
Fusion-Task-Id: FN-6500
Fusion-Task-Lineage: 016a2839-29f9-48de-b644-a5fcd27b35e3
Tightens the task detail chat layout so the composer sits closer to the transcript without affecting other detail tabs.
- Reduce the chat tab stack gap and composer vertical padding on desktop and mobile.
- Remove the chat section's inherited top margin while keeping shared tab padding intact.
- Document the spacing requirement with FNXC comments near the affected chat styles.
Files changed:
packages/dashboard/app/components/TaskChatTab.css | 10 ++++++----
packages/dashboard/app/components/TaskDetailModal.css | 7 ++++++-
2 files changed, 12 insertions(+), 5 deletions(-)
Fusion-Task-Id: FN-6418
Fusion-Task-Lineage: 4b484de5-9d6f-403b-902d-5df9f0591811
Clamp long task-detail headings to two lines with an explicit expand control.
- Replace character-count title truncation with measured two-line CSS clamping.
- Add overflow detection so the Show more/Show less toggle only appears when the heading actually wraps past two lines.
- Update task detail rendering tests for triage, non-triage, editing, summarize, chat-expanded, desktop, and mobile title surfaces.
Files changed:
.../dashboard/app/components/TaskDetailModal.css | 10 +
.../dashboard/app/components/TaskDetailModal.tsx | 111 ++++-
.../__tests__/TaskDetailModal.rendering.test.tsx | 441 +++++++++------------
3 files changed, 261 insertions(+), 301 deletions(-)
Fusion-Task-Id: FN-6387
Fusion-Task-Lineage: 8c1b860c-8fe7-4f91-89e1-b387dbd7320e
Add a full-modal expansion affordance for task-detail chat conversations.
- Add an expand/collapse toolbar button to the task chat tab with accessible labels and icon states.
- Let the task detail modal switch into a chat-expanded layout and reset that state when leaving chat or entering edit mode.
- Cover the chat toggle and layout behavior with dashboard component tests and document the control.
Files changed:
docs/dashboard-guide.md | 1 +
packages/dashboard/app/components/TaskChatTab.css | 22 +++++
packages/dashboard/app/components/TaskChatTab.tsx | 21 ++++-
.../dashboard/app/components/TaskDetailModal.css | 42 +++++++++
.../dashboard/app/components/TaskDetailModal.tsx | 13 ++-
.../app/components/__tests__/TaskChatTab.test.tsx | 37 ++++++++
.../TaskDetailModal.attachments-and-tabs.test.tsx | 100 +++++++++++++++++++++
7 files changed, 233 insertions(+), 3 deletions(-)
Fusion-Task-Id: FN-6370
Fusion-Task-Lineage: 787300bb-b928-45cf-a5c1-7fed5f375111
Add an inline task-detail action to summarize descriptions into titles.
- add a read-mode "Summarize as title" control in Task Detail for editable tasks with descriptions
- call the title summarizer, persist the generated title, and show loading/success/error feedback
- cover button visibility, pending, success, error, and mobile behavior in Task Detail tests
- document the new Task Detail modal action in the dashboard guide
Files changed:
docs/dashboard-guide.md | 1 +
.../dashboard/app/components/TaskDetailModal.css | 47 +++++++
.../dashboard/app/components/TaskDetailModal.tsx | 56 +++++++-
.../__tests__/TaskDetailModal.test-helpers.ts | 5 +-
.../components/__tests__/TaskDetailModal.test.tsx | 145 +++++++++++++++++++++
5 files changed, 247 insertions(+), 7 deletions(-)
Fusion-Task-Id: FN-6059
Fusion-Task-Lineage: ed5a2f1b-a490-45f7-a747-d28c345f143b
Add first-load loading states so task activity and agent log views do not flash empty states.
- show a loading status row in the task detail Activity tab while detail history is still loading
- keep agent logs in a loading state until the active task/project context has completed its initial fetch
- add accessible loading markup, regression tests, and dashboard guide documentation for the new behavior
Files changed:
docs/dashboard-guide.md | 1 +
.../dashboard/app/components/AgentLogViewer.css | 18 +++
.../dashboard/app/components/AgentLogViewer.tsx | 2 +-
.../dashboard/app/components/TaskDetailModal.css | 17 +++
.../dashboard/app/components/TaskDetailModal.tsx | 7 +-
.../components/__tests__/AgentLogViewer.test.tsx | 3 +-
.../components/__tests__/TaskDetailModal.test.tsx | 144 +++++++++++++++++++++
.../app/hooks/__tests__/useAgentLogs.test.ts | 74 +++++++++++
packages/dashboard/app/hooks/useAgentLogs.ts | 14 +-
9 files changed, 276 insertions(+), 4 deletions(-)
Fusion-Task-Id: FN-6040
Fusion-Task-Lineage: cd4b8f7f-63cd-4d75-be00-d362e915f4e8
Keep the task detail tab strip scrollable on desktop without shrinking tab labels.
- move horizontal tab-strip scrolling and momentum styles into the base .detail-tabs rule
- keep .detail-tab items from shrinking at all viewport sizes so overflow remains scrollable
- add a CSS contract test for the base tab strip behavior and extend task detail API mocks with refreshPrStatus
Files changed:
packages/dashboard/app/components/TaskDetailModal.css | 7 ++++---
.../dashboard/app/components/__tests__/TaskDetailModal.css.test.ts | 7 +++++++
.../app/components/__tests__/TaskDetailModal.test-helpers.ts | 1 +
3 files changed, 12 insertions(+), 3 deletions(-)
Fusion-Task-Id: FN-5879
Fusion-Task-Lineage: b990a88e-7b1d-44d9-b222-986a28ae143d
- Broaden mobile media query to include (max-height: 480px) so landscape
phones (which exceed 768 CSS px wide) still render the bottom nav and
mobile board layout instead of desktop horizontally-scrollable columns.
- Guard useMobileKeyboard against pinch-zoom (vv.scale > 1) — Android
Chrome ignores user-scalable=no, and a focused textarea + zoom was
false-positiving keyboard-open and hiding MobileNavBar.
- Read documentElement.clientHeight instead of stale window.innerHeight
when computing keyboard overlap (Android multi-window can leave
innerHeight cached at a wildly different value than the actual layout
viewport — observed 2848 while html was 797).
- Add interactive-widget=resizes-content to the viewport meta so Android
Chrome shrinks the layout viewport with the soft keyboard, matching iOS.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Removes the broad-scope detection feature end-to-end: the TaskCard chip and TaskDetailModal advisory banner are gone from the dashboard, the triage heuristic that flagged tasks as broad-scope has been deleted from the engine along with its associated run-audit events, and documentation references ha
Fusion-Task-Id: FN-5405
Adds broad-scope advisory chips to TaskCard and banner to TaskDetailModal with comprehensive test coverage and a dashboard guide entry. TaskCard gains an inline advisory chip (with styles), TaskDetailModal gets a matching banner, and both components have dedicated test suites covering the new UI ele
Fusion-Task-Id: FN-5314
Fusion-Task-Lineage: cbc88f36-d029-4e4b-ac9c-32a77560b8b9
Adds compact desktop styling for the GitHub tracking enable button in the task detail modal, with a new CSS regression test covering the button styling.
Fusion-Task-Id: FN-4163
Restyles the GitHub tracking header in TaskDetailModal to a compact single-row layout with tighter spacing, adds test coverage for the header layout, and includes a regression verification pass alongside a changeset documenting the change.
Fusion-Task-Id: FN-4224
Completes the GitHub tracking header alignment work in the TaskDetailModal with CSS adjustments to keep the header properly aligned, along with corresponding test coverage. The changeset prepares the `@runfusion/fusion` package for release as a patch.
Fusion-Task-Id: FN-4213
Fixed the chevron/source header top alignment in TaskDetailModal with a CSS adjustment, backed by a new CSS assertion test. Includes a changeset for a patch release of `@runfusion/fusion`.
Fusion-Task-Id: FN-4183
Adds a compact GitHub tracking enable button in the task detail modal header, with a fix to keep it visible during save operations and further shrinking the inline CTA styling.
Fusion-Task-Id: FN-4159
Adds a GitHub tracking toggle affordance to the task detail header with accompanying tests, documentation updates, and a changeset, plus a CSS fix for mobile header wrapping.
Fusion-Task-Id: FN-4147