Classify structured provider model-not-found payloads as model-selection failures so configured fallback models run when Claude Sonnet 5 is unavailable on an account or API surface.
Keep the mobile Planning Mode New session CTA reachable while saved sessions scroll independently.
- Bound the mobile planning list shell so only the session list scrolls.
- Preserve the sidebar footer as a non-shrinking bottom action in list view.
- Add CSS contract coverage and a changeset for the published CLI package.
Files changed:
.changeset/fn-7348-mobile-planning-new-session.md | 7 ++++++
.../dashboard/app/components/PlanningModeModal.css | 23 +++++++++++++++++
.../__tests__/PlanningModeModal.css.test.ts | 29 ++++++++++++++++++++++
3 files changed, 59 insertions(+)
Fusion-Task-Id: FN-7348
Fusion-Task-Lineage: 0142e539-3e4c-4ac5-9a44-d02bce2c139b
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
Align footer Engine Controls current-use dots with Command Center slider geometry.
- Mirror Command Center range sizing, touch behavior, and mobile thumb geometry in the footer controls.
- Cover the shared marker geometry contract and pending-cap marker recalculation in EngineControlMenu tests.
- Document the footer/Command Center alignment requirement and add a patch changeset for the published CLI package.
Files changed:
.changeset/fn-7340-footer-concurrency-dot-alignment.md | 7 ++
docs/dashboard-guide.md | 3 +-
packages/dashboard/app/components/EngineControlMenu.css | 28 ++++++-
packages/dashboard/app/components/__tests__/EngineControlMenu.test.tsx | 85 ++++++++++++++++++++++
4 files changed, 121 insertions(+), 2 deletions(-)
Fusion-Task-Id: FN-7340
Fusion-Task-Lineage: 5cb4d829-2b70-429c-b9da-0c559fdbf131
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
Align Shadcn Ember theme tokens with the Ember palette while preserving shadcn structure.
- Match Shadcn Ember accent text tokens to Ember values in dark and light modes.
- Strengthen regression coverage to compare every Ember-owned color token across both modes.
- Add a patch changeset for the published Fusion package.
Files changed:
.changeset/fn-7339-shadcn-ember-colors.md | 7 +++
.../app/__tests__/shadcn-ember-theme.test.ts | 69 +++++++++++++++-------
packages/dashboard/app/public/theme-data.css | 7 ++-
3 files changed, 60 insertions(+), 23 deletions(-)
Fusion-Task-Id: FN-7339
Fusion-Task-Lineage: d0c2f0cf-938f-46a4-8da4-9acafc5cc4cf
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
Board stabilization now avoids resetting the user's horizontal column position during refresh and resize handling.
- Keep mobile stabilization focused on document-level drift instead of forcing #board.scrollLeft back to triage.
- Add regression coverage for board and all-workflows scroll preservation across task refresh, window resize, and visualViewport resize.
- Add a patch changeset for the published Fusion package.
Files changed:
.changeset/fn-7342-board-scroll-reset.md | 7 ++
packages/dashboard/app/components/Board.tsx | 7 +-
.../app/components/__tests__/Board.test.tsx | 109 +++++++++++++++++++++
3 files changed, 121 insertions(+), 2 deletions(-)
Fusion-Task-Id: FN-7342
Fusion-Task-Lineage: 0aa8b152-5cc0-4f77-93d5-f20faf0a5e19
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
Stabilize Planner Chat task detail spacing across expanded and mobile layouts.
- Move Planner Chat body padding to the base selector so expand/collapse only changes height and flex behavior.
- Apply the mobile Planner Chat padding override to the same base body selector.
- Add CSS regression coverage and a patch changeset for the published CLI bundle.
Files changed:
.changeset/planner-chat-stable-spacing.md | 7 ++++
.../dashboard/app/components/TaskDetailModal.css | 11 +++++-
...etailModal.responsive-and-dependencies.test.tsx | 44 ++++++++++++++++++++++
3 files changed, 60 insertions(+), 2 deletions(-)
Fusion-Task-Id: FN-7333
Fusion-Task-Lineage: 84130908-fabb-433f-a48d-5d9c6649c234
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
Renames the task-detail Activity Current segment to Live and makes expansion available across Activity views.
- relabel Activity Current as Live while preserving the legacy internal current segment routing
- move the Activity expand/collapse control to the shared Activity toolbar for Live, Feed, and Raw Logs
- update expanded Activity layout, docs, tests, and release notes for the shared behavior
Files changed:
.changeset/fn-7325-activity-live-expand.md | 7 ++
docs/dashboard-guide.md | 8 +-
packages/dashboard/app/components/TaskChatTab.tsx | 6 +-
.../dashboard/app/components/TaskDetailModal.css | 53 ++++++++++-
.../dashboard/app/components/TaskDetailModal.tsx | 103 ++++++++++++---------
.../app/components/__tests__/TaskChatTab.test.tsx | 12 +--
.../TaskDetailModal.attachments-and-tabs.test.tsx | 90 ++++++++++++++++--
.../__tests__/TaskDetailModal.rendering.test.tsx | 2 +-
.../components/__tests__/TaskDetailModal.test.tsx | 8 +-
9 files changed, 213 insertions(+), 76 deletions(-)
Fusion-Task-Id: FN-7325
Fusion-Task-Lineage: 1aee503b-ace8-4238-a9f9-3e536a43c1f8
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
## Summary
- Add a maintainer-facing proposal for a dashboard theme/UI plugin
system
- Frame themes as scoped backend-compatible UI experiments, not just CSS
skins
- Call out selected-project scoping as a prerequisite and immediate bug
class
## Verification
- docs-only proposal; no runtime tests required
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Documentation**
* Added a proposal for a dashboard theme and UI plugin system.
* Defines support for multiple dashboard themes/shells sharing the same
backend.
* Describes a stable, project-scoped UI contract, project-scoped API
access, token-based styling, and a theme switcher.
* Documents non-goals, safety boundaries for UI experimentation,
feasibility considerations, and an implementation plan.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary
- Clear Compound Engineering artifact results when switching selected
projects before the next scoped fetch resolves
- Keep artifact Open actions explicitly scoped to the project workspace
- Assert projectId is passed into artifact discovery and update
file-open test coverage
## Verification
- pnpm --filter @fusion-plugin-examples/compound-engineering test
- pnpm --filter @fusion-plugin-examples/compound-engineering build
- pnpm check:changesets
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Bug Fixes**
* Fixed artifact browsing so project files no longer appear stale after
switching projects.
* Opening an artifact now takes you to the correct project workspace.
* Removed outdated on-screen artifact data while fresh results are
loading, reducing confusion.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
## Summary
- Threads the selected project id through the dashboard Goals view API
calls.
- Covers goals/missions reads plus create/edit/link/refine actions.
- Adds a regression test for project-scoped goals and mission reads.
## Test Plan
- `corepack pnpm --filter @fusion/dashboard exec vitest run
app/components/__tests__/GoalsView.test.tsx --pool=forks`
- `corepack pnpm --filter @fusion/dashboard typecheck`
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Bug Fixes**
* Goals now stay tied to the selected project, so goal lists, mission
links, and related actions only affect the current project.
* Goal description drafts now use the active project context for more
accurate results.
* **Tests**
* Expanded coverage to verify project-scoped loading and updates for
goals and missions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Align the expanded Quick Add action row so attachment controls sit beside Save.\n\n- Move the icon-only attachment button immediately after Save while keeping its hidden file input trigger and pending image badge.\n- Update QuickEntryBox DOM-order expectations to lock Attach next to Save.\n- Add a patch changeset for the published Fusion package.\n\nFiles changed:\n .changeset/fn-7326-quick-add-attach.md | 7 +++++\n .../dashboard/app/components/QuickEntryBox.tsx | 31 +++++++++++-----------\n .../components/__tests__/QuickEntryBox.test.tsx | 8 +++---\n 3 files changed, 28 insertions(+), 18 deletions(-)
Fusion-Task-Id: FN-7326
Fusion-Task-Lineage: f9469a3f-2e94-4af4-8c74-332f2b4a10c2
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>
Make the planner chat composer align with the send button while preserving mobile stacking.
- Let the desktop composer wrap inline controls instead of forcing a tall textarea.
- Match the planner chat textarea height and padding to button sizing.
- Extend responsive CSS coverage for desktop wrapping, input height, and mobile send-button layout.
Files changed:
.../dashboard/app/components/TaskPlannerChatTab.css | 15 ++++++++++++---
...askDetailModal.responsive-and-dependencies.test.tsx | 18 +++++++++++++++---
2 files changed, 27 insertions(+), 6 deletions(-)
Fusion-Task-Id: FN-7327
Fusion-Task-Lineage: 10ec1f7a-f131-4760-b7c7-bba795a0c6e0
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai>