Commit Graph

9544 Commits

Author SHA1 Message Date
gsxdsm
cdf4a69515 docs: fix chat screenshots to show selected conversations
Chat sessions now open via data-testid selectors (chat-session-chat-* and
chat-room-item-leads) and the right dock is closed before capture to prevent
pointer interception. Direct chat threads and the #leads room are now properly
selected and visible in all agent chat and chat room captures.
2026-06-23 19:14:29 -07:00
gsxdsm
aea1fc8560 docs: re-capture screenshots with collapsed sidebar, add graph + Command Center tab shots
- Collapse the left sidebar in all captures for full-width content
- Ensure a chat thread is selected in agent chat screenshots
- Add board Graph view (task dependency node graph) screenshot
- Add Command Center Overview, Activity, and Signals tab screenshots
- Re-capture all GIFs and PNGs with sidebar collapsed at 1600x1000
2026-06-23 18:16:48 -07:00
gsxdsm
5e4c37996a docs: refresh README media with live captures across all themes incl. Ember
Re-captured all showcase GIFs and screenshots from the running Fusion
dashboard at 1600x1000 (16:10) to match original aspect ratios and avoid
the vertical squashing caused by vh-based CSS at shorter viewports.

Media changes:
- Dashboard board + Agents roster shots (Tokyo Night + Ember)
- Command Center, Workflows, Chat, Chat Rooms, Agent Mail GIFs refreshed
  across Tokyo Night, Shadcn Light, Shadcn Dark Gray, and new Ember theme
- 6 mobile screenshots (board, agents, missions, command center, chat)
- 8 new Ember-themed assets added to every showcase table

Also extended demo/seed.ts to seed chat messages and agent mail (agents,
a direct chat session, a #leads multi-agent room, and mailbox messages
covering triage summaries, approvals, and hand-offs) and fixed two
pre-existing task-transition bugs so the full seed runs to completion.

README updated to add a 'board & agent team' showcase section and expand
every theme table from 2 columns to 3 (Light / Dark Gray / Ember).
2026-06-23 17:58:22 -07:00
gsxdsm
63c702d4b7 docs: add 'AI factory in your pocket' mobile showcase to the README
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 03:28:21 -07:00
gsxdsm
40fd3014e9 Merge pull request #1716 from Runfusion/feature/update-readme
docs: refresh README with feature showcase and media
2026-06-22 01:35:26 -07:00
gsxdsm
65d9a812f8 docs: sync localized READMEs with the refreshed English README
Apply the inline orange logo, software-factory framing, the
'See it in action' showcase (Command Center, workflows, agent chat,
chat rooms, agent mail), moved Quick start, and removed stat table to
all five locale READMEs, translating the new copy. Image paths and
section order match the English README exactly.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 00:45:53 -07:00
gsxdsm
3c01f25379 docs: inline an orange Fusion mark beside the title in the README hero
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 00:34:35 -07:00
gsxdsm
4234d5d6da docs: drop the Command Center stat table, keep the graph images
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 00:27:12 -07:00
gsxdsm
dd8129a271 docs: reframe README as a software factory and refresh feature media
- Lead with "a software factory, run by a multi-agent orchestrator" and
  emphasize the plan/build/review/ship assembly-line framing.
- Move the Quick start section directly above "The flow".
- Re-render the workflow GIFs (Tokyo Night, Shadcn Light, Dark Gray) to
  pan across the graph nodes with no lingering selection.
- Refresh the agent chat GIF.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-22 00:17:12 -07:00
gsxdsm
5191e1f22d FN-6911: defer Droid CLI startup probes
Defer Droid CLI validation and discovery so startup no longer spawns or hangs on droid.

- Register the Droid provider without boot-time validation or model discovery side effects.
- Trigger CLI validation only when a Droid stream starts and expose explicit model discovery.
- Add regression coverage for non-interactive droid process spawning and startup probe behavior.
- Add a patch changeset for the published Fusion CLI package.

Files changed:
 .changeset/fn-6911-droid-cli-no-boot-spawn.md      |  5 ++
 .../commands/__tests__/droid-cli-extension.test.ts | 15 +++-
 packages/droid-cli/index.ts                        | 33 ++++----
 packages/droid-cli/src/__tests__/index.test.ts     | 90 +++++++++-------------
 .../src/__tests__/discover-models.test.ts          |  7 +-
 .../src/__tests__/probe.test.ts                    |  8 ++
 .../src/__tests__/process-manager.test.ts          | 74 ++++++++++++++++++
 .../src/__tests__/startup-probes.test.ts           |  5 +-
 8 files changed, 160 insertions(+), 77 deletions(-)

Fusion-Task-Id: FN-6911

Fusion-Task-Lineage: ef4bc3df-bfe8-416a-b701-64f752faea30
2026-06-21 23:44:26 -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
8d815f00cf docs: refresh README with feature showcase and media
Shrink the wordmark and add a "See it in action" section showcasing
Command Center, selectable workflows, agent chat, multi-agent chat
rooms, and agent mail. Each feature pairs a looping GIF with value
copy; Command Center adds live fleet stats, graph highlights, and
split light/dark color-theme grids.

New screenshots and GIFs committed under demo/assets/ — Tokyo Night
plus Shadcn Light and Shadcn Dark Gray variants. Workflow GIFs show
the Stepwise coding graph with node-level zoom/pan.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-21 23:24:03 -07:00
gsxdsm
bb663a4705 FN-6906: improve non-coding workflow artifact prompts
Non-coding built-in workflows now guide agents toward structured, reviewable artifacts.

- Expand marketing and lead-generation prompts with explicit inputs, output structure, quality bars, and persisted task-document deliverables.
- Require design execution to persist a reviewable preview document and update design review guidance to inspect it.
- Document the new artifact-oriented behavior and cover prompt routing with regression tests while preserving coding workflow defaults.
- Add a patch changeset for the published Fusion package.

Files changed:
 .changeset/fn-6906-non-coding-workflow-prompts.md  |  5 +++++
 docs/workflow-steps.md                             | 11 +++++++----
 .../builtin-lead-generation-workflow-ir.test.ts    |  2 ++
 .../core/src/__tests__/builtin-workflows.test.ts   | 22 ++++++++++++++++++++++
 .../src/builtin-lead-generation-workflow-ir.ts     | 13 ++++++++-----
 packages/core/src/builtin-marketing-workflow-ir.ts |  9 ++++++---
 packages/core/src/builtin-workflows.ts             | 16 ++++++++++++++--
 7 files changed, 64 insertions(+), 14 deletions(-)

Fusion-Task-Id: FN-6906
Fusion-Task-Lineage: 76f39350-e441-4dde-8571-35a6fbf6fcda
2026-06-21 23:15:46 -07:00
gsxdsm
7fd14eb88c FN-6907: rename task documents to artifacts
Rename the task-modal Documents tab to Artifacts and include task-scoped media outputs alongside task documents.

- Add shared artifact media rendering for global and task-local artifact cards.
- Surface image, video, audio, document, and generic artifacts in the task Artifacts tab.
- Update tab labels, empty states, counts, translations, tests, docs, and release notes for the Artifacts wording.

Files changed:
 .changeset/fn-6907-task-artifacts-tab.md           |   5 +
 docs/dashboard-guide.md                            |   5 +-
 .../dashboard/app/components/ArtifactMedia.tsx     |  55 +++++++
 .../dashboard/app/components/DocumentsView.tsx     |  47 +-----
 .../dashboard/app/components/TaskDetailModal.tsx   |   3 +-
 .../dashboard/app/components/TaskDocumentsTab.css  |  33 +++++
 .../dashboard/app/components/TaskDocumentsTab.tsx  | 109 ++++++++++++--
 .../TaskDetailModal.attachments-and-tabs.test.tsx  |   4 +-
 .../TaskDetailModal.definition-actions.test.tsx    |  20 +--
 .../components/__tests__/TaskDocumentsTab.test.tsx | 160 ++++++++++++++++++++-
 packages/i18n/locales/en/app.json                  |  16 ++-
 packages/i18n/locales/es/app.json                  |  16 ++-
 packages/i18n/locales/fr/app.json                  |  16 ++-
 packages/i18n/locales/ko/app.json                  |  16 ++-
 packages/i18n/locales/zh-CN/app.json               |  16 ++-
 packages/i18n/locales/zh-TW/app.json               |  16 ++-
 16 files changed, 436 insertions(+), 101 deletions(-)

Fusion-Task-Id: FN-6907

Fusion-Task-Lineage: a1318ed5-4d47-42f8-8b6c-fe91506e11fb
2026-06-21 23:07:55 -07:00
gsxdsm
f4d2fa2ece FN-6910: hide subtask quick-add behind experiment
Hide the AI subtask-breakdown quick-add action unless the experimental flag is explicitly enabled.

- Gate Subtask Breakdown callbacks from App on the default-off subtaskBreakdown experiment.
- Remove Subtask quick-add buttons from inline create and quick entry surfaces when no callback is wired.
- Add settings, quick-add, documentation, and changeset coverage for the new experiment toggle.

Files changed:
 .changeset/fn-6910-subtask-breakdown-flag.md       |  5 ++++
 docs/dashboard-guide.md                            |  2 +-
 packages/dashboard/app/App.tsx                     |  8 ++++---
 .../dashboard/app/components/InlineCreateCard.tsx  | 27 ++++++++++++----------
 .../dashboard/app/components/QuickEntryBox.tsx     | 27 ++++++++++++----------
 .../dashboard/app/components/SettingsModal.tsx     |  2 ++
 .../components/__tests__/InlineCreateCard.test.tsx | 13 +++++++++++
 .../components/__tests__/QuickEntryBox.test.tsx    | 12 ++++++++++
 .../components/__tests__/SettingsModal.test.tsx    | 13 +++++++++++
 9 files changed, 81 insertions(+), 28 deletions(-)

Fusion-Task-Id: FN-6910

Fusion-Task-Lineage: a7738b1f-7b41-438d-bd94-79ef56928262
2026-06-21 23:02:16 -07:00
gsxdsm
c78b44ce4c FN-6909: allow narrower list sidebar
Lower the desktop list-view sidebar minimum width while keeping resize behavior covered.\n\n- Reduce the shared list sidebar clamp from 200px to 120px.\n- Update keyboard resize expectations for stored widths below the new minimum.\n\nFiles changed:\n packages/dashboard/app/components/ListView.tsx               |  2 +-\n .../dashboard/app/components/__tests__/ListView.test.tsx     | 12 ++++++------\n 2 files changed, 7 insertions(+), 7 deletions(-)

Fusion-Task-Id: FN-6909

Fusion-Task-Lineage: 0bf345af-c94d-4f73-bb03-e7e43a6bb398
2026-06-21 22:57:01 -07:00
gsxdsm
43421722a5 FN-6904: name CE slash commands in built-in workflow prompts
Built-in compound-engineering workflow prompts now point agents at the intended /ce- skill commands directly.

- Prefix each compound-engineering skill stage prompt with its matching /ce- slash command.
- Add workflow coverage that verifies every skill-node prompt names the expected command while the merge boundary stays generic.
- Add a patch changeset for the published Fusion package.

Files changed:
 .changeset/fn-6904-ce-workflow-prompt-skill-callout.md |  5 +++++
 packages/core/src/__tests__/builtin-workflows.test.ts  | 18 ++++++++++++++++++
 packages/core/src/builtin-workflows.ts                 | 16 ++++++++++------
 3 files changed, 33 insertions(+), 6 deletions(-)

Fusion-Task-Id: FN-6904
Fusion-Task-Lineage: c1d8c9cd-c0ae-49a0-a287-48721490f41f
2026-06-21 22:51:07 -07:00
gsxdsm
7034b55288 FN-6887: add footer terminal launcher
Move terminal access from the header into a footer launcher and resizable bottom panel.

- Add a TerminalLauncher footer control with dock, resize, collapse, and pop-out affordances.
- Extend TerminalModal to support bottom-panel layout, drag resizing, and persistent panel state.
- Remove terminal/script controls from header overflow while preserving compact Mailbox and tool ordering.
- Update executor footer spacing, dashboard docs, changeset, and focused terminal/header tests.

Files changed:
 .changeset/fn-6887-terminal-footer-panel.md        |   5 +
 docs/dashboard-guide.md                            |   2 +
 packages/dashboard/app/App.tsx                     |   6 +-
 .../app/__tests__/tablet-header-controls.test.tsx  |  95 +---
 .../dashboard/app/components/ExecutorStatusBar.css |   8 +
 .../dashboard/app/components/ExecutorStatusBar.tsx |  27 +-
 packages/dashboard/app/components/Header.css       |  27 -
 packages/dashboard/app/components/Header.tsx       | 549 +--------------------
 .../dashboard/app/components/TerminalLauncher.css  | 180 +++++++
 .../dashboard/app/components/TerminalLauncher.tsx  | 306 ++++++++++++
 .../dashboard/app/components/TerminalModal.css     | 117 +++++
 .../dashboard/app/components/TerminalModal.tsx     | 360 +++++++++++++-
 .../__tests__/ExecutorStatusBar.test.tsx           |  52 +-
 .../app/components/__tests__/Header.test.tsx       | 304 ++----------
 .../components/__tests__/TerminalLauncher.test.tsx |  57 +++
 .../components/__tests__/TerminalModal.test.tsx    | 111 +++++
 16 files changed, 1282 insertions(+), 924 deletions(-)

Fusion-Task-Id: FN-6887

Fusion-Task-Lineage: 755f28b1-1ba5-43f8-b13c-264e31507658
2026-06-21 22:43:34 -07:00
gsxdsm
8f4897d3aa FN-6905: add build preflight to velocity measurement
Add a non-measured build setup step so velocity baselines do not misclassify missing dist artifacts as lane time.

- Run a default `pnpm build` preflight before measured test velocity lanes, with an explicit skip flag for pre-built CI.
- Add injectable command-runner coverage for preflight ordering, failure reporting, and skip behavior.
- Document the preflight behavior in the generated baseline report and testing docs.

Files changed:
 docs/test-velocity-baseline.md                    |   2 +
 docs/testing.md                                   |   4 +-
 scripts/__tests__/test-velocity-baseline.test.mjs | 159 ++++++++++++++++++++++
 scripts/test-velocity-baseline.mjs                |  38 +++++-
 4 files changed, 195 insertions(+), 8 deletions(-)

Fusion-Task-Id: FN-6905

Fusion-Task-Lineage: 3016a542-4395-4d06-9f2e-1a91f4939e07
2026-06-21 22:29:13 -07:00
gsxdsm
cf6718f3c1 FN-6892: show default model for configured prompt nodes
Prompt workflow nodes with inline prompts or names now summarize their default model instead of appearing unconfigured.

- Return the localized Default model summary for model prompt nodes without pinned provider/model settings when prompt or name is present.
- Cover direct prompt summary cases and all built-in workflow prompt nodes to prevent Not configured regressions.
- Add localized summary text and workflow-step documentation for default-model prompt nodes.

Files changed:
 docs/workflow-steps.md                             |  2 +-
 .../nodes/__tests__/node-summary.test.ts           | 32 ++++++++++++++++++++++
 .../dashboard/app/components/nodes/node-summary.ts |  7 +++++
 packages/i18n/locales/en/common.json               |  1 +
 packages/i18n/locales/es/common.json               |  1 +
 packages/i18n/locales/fr/common.json               |  1 +
 packages/i18n/locales/ko/common.json               |  1 +
 packages/i18n/locales/zh-CN/common.json            |  1 +
 packages/i18n/locales/zh-TW/common.json            |  1 +
 9 files changed, 46 insertions(+), 1 deletion(-)

Fusion-Task-Id: FN-6892

Fusion-Task-Lineage: 5892429d-22ee-495e-bc40-06cbf81ee471
2026-06-21 22:14:15 -07:00
gsxdsm
c4c8961c1e FN-6903: preserve workflow quick-create visibility
Optimistically attach newly quick-created tasks to the active workflow lane until workflow metadata refetches.

- Update board and list quick-create paths to cache the selected workflow for created tasks immediately.\n- Refresh board-workflows metadata after optimistic assignment so authoritative state reconciles.\n- Cover board/list workflow-lane quick-create visibility with regression tests.\n- Document the workflow-filtered quick-create behavior and add a patch changeset.\n\nFiles changed:\n .../fn-6903-workflow-lane-create-visibility.md     |   5 +\n docs/dashboard-guide.md                            |   2 +-\n packages/dashboard/app/components/Board.tsx        |  34 ++-\n packages/dashboard/app/components/ListView.tsx     |  36 ++-\n ...d-quickcreate-workflow-lane-visibility.test.tsx | 319 +++++++++++++++++++++\n 5 files changed, 390 insertions(+), 6 deletions(-)

Fusion-Task-Id: FN-6903

Fusion-Task-Lineage: dd2c6fa1-f2e8-4777-aa3c-69d000efb1b1
2026-06-21 22:04:32 -07:00
gsxdsm
3817ada788 FN-6901: refresh weekly test velocity baseline
Refresh the weekly test velocity report with the latest captured baseline data.

- Advance the documented baseline from 2026-W25 to 2026-W26.
- Record the latest gate, changed-only test, quarantine, and boot-smoke measurement status.
- Append the new measurement row to the persisted test velocity history.

Files changed:
 docs/test-velocity-baseline.md     |  22 +++----
 scripts/test-velocity-history.json | 116 +++++++++++++++++++++++++++++++++++++
 2 files changed, 127 insertions(+), 11 deletions(-)

Fusion-Task-Id: FN-6901

Fusion-Task-Lineage: 06f42104-b3c5-4a26-86ee-fb2791f7006d
2026-06-21 21:48:40 -07:00
gsxdsm
d78b8a5c4c FN-6900: keep Git Manager tabs visible on mobile
Keep the Git Manager section tab strip usable in mobile modal layouts.

- Prevent the mobile Git Manager sidebar from shrinking away and preserve horizontal tab scrolling.
- Use token-sized tab touch targets and remove duplicate breakpoint rules that could override the canonical mobile layout.
- Cover mobile tab rendering, section switching, and CSS breakpoint invariants in dashboard tests.

Files changed:
 packages/dashboard/app/components/ScriptsModal.css |  53 ++-------
 .../components/__tests__/GitManagerModal.test.tsx  | 118 +++++++++++++++++++--
 .../__tests__/core-modals-mobile.test.tsx          |   7 +-
 3 files changed, 126 insertions(+), 52 deletions(-)

Fusion-Task-Id: FN-6900

Fusion-Task-Lineage: e9506053-c80d-49ea-bb80-34db51dd50f4
2026-06-21 21:41:19 -07:00
gsxdsm
26c8d960a2 FN-6893: add editable built-in workflow prompts
Enable project-scoped prompt overrides for built-in workflows without allowing structural edits.

- Add workflow prompt override storage, normalization, and IR overlay support for prompt and gate nodes.
- Expose dashboard API routes and Workflow Node Editor controls to edit or reset built-in prompts.
- Cover override persistence, route behavior, editor flows, and engine workflow resolution with tests.
- Document editable built-in prompts and reset-to-default behavior.

Files changed:
 docs/dashboard-guide.md                            |   2 +-
 docs/settings-reference.md                         |   2 +
 docs/workflow-steps.md                             |  20 ++-
 .../__tests__/workflow-definition-store.test.ts    |  25 +++
 .../workflow-prompt-overrides-store.test.ts        | 190 ++++++++++++++++++++
 .../__tests__/workflow-prompt-overrides.test.ts    |  58 +++++++
 packages/core/src/db.ts                            |  35 +++-
 packages/core/src/index.ts                         |   7 +
 packages/core/src/store.ts                         |  97 ++++++++++-
 packages/core/src/workflow-ir-resolver.ts          |  21 ++-
 packages/core/src/workflow-prompt-overrides.ts     |  65 +++++++
 packages/dashboard/app/api/legacy.ts               |  34 ++++
 .../app/components/WorkflowNodeEditor.css          |  35 ++++
 .../app/components/WorkflowNodeEditor.tsx          | 191 ++++++++++++++++++++-
 .../__tests__/WorkflowNodeEditor.test.tsx          | 136 ++++++++++++++-
 .../src/__tests__/workflow-routes.test.ts          |  59 +++++++
 .../src/routes/register-workflow-routes.ts         |  86 +++++++++-
 .../workflow-prompt-overrides-resolution.test.ts   |  61 +++++++
 packages/i18n/locales/en/app.json                  |  14 +-
 packages/i18n/locales/es/app.json                  |  14 +-
 packages/i18n/locales/fr/app.json                  |  14 +-
 packages/i18n/locales/ko/app.json                  |  14 +-
 packages/i18n/locales/zh-CN/app.json               |  14 +-
 packages/i18n/locales/zh-TW/app.json               |  14 +-
 24 files changed, 1168 insertions(+), 40 deletions(-)

Fusion-Task-Id: FN-6893

Fusion-Task-Lineage: 961eb119-32e1-44c3-9b51-6edd982fa565
2026-06-21 21:23:41 -07:00
gsxdsm
5b33da9268 FN-6882: move toolbar tools into right dock
Move desktop toolbar tools into the right dock while keeping Files as the inline dock view.

- Remove desktop toolbar buttons and overflow menu entries for Activity, Activity Log, GitHub Import, Git Manager, Files, and Automation.
- Convert right-dock registry entries into launcher actions for modal tools and keep Files/plugin entries as expandable inline views.
- Update right-dock selection, expansion, documentation, tests, and release notes for the new tools rail behavior.

Files changed:
 .changeset/fn-6882-toolbar-to-right-sidebar.md     |   5 +
 docs/dashboard-guide.md                            |  10 +-
 packages/dashboard/app/App.tsx                     |   2 +-
 .../app/__tests__/tablet-header-controls.test.tsx  |   6 +-
 packages/dashboard/app/components/Header.css       |   3 -
 packages/dashboard/app/components/Header.tsx       | 115 +-----------
 packages/dashboard/app/components/RightDock.tsx    |  50 +++--
 .../app/components/RightDockExpandModal.tsx        |  10 +-
 .../app/components/__tests__/Header.test.tsx       | 112 +++++------
 .../app/components/__tests__/RightDock.test.tsx    | 189 +++++++++++--------
 .../__tests__/overflowViewRegistry.test.tsx        |  73 +++++---
 .../app/components/overflowViewRegistry.tsx        | 204 ++++++---------------
 .../app/components/useRightDockController.tsx      |  10 +
 13 files changed, 323 insertions(+), 466 deletions(-)

Fusion-Task-Id: FN-6882

Fusion-Task-Lineage: 4b423b3e-ff82-41d4-83f9-7cff23361e81
2026-06-21 20:55:28 -07:00
gsxdsm
beaf52bb50 FN-6898: stabilize ci-status plugin tests
Rescue the ci-status plugin test suite by making CI polling deterministic and network-free.

- Stub global fetch for the full suite so refresh handlers and interval polls cannot reach ci.example.com.
- Share the mock task fixture across refresh and task-move tests.
- Cover tracked-branch and empty-branch refresh paths plus interval polling behavior.

Files changed:
 .../src/__tests__/index.test.ts                    | 145 ++++++++++++++++-----
 1 file changed, 115 insertions(+), 30 deletions(-)

Fusion-Task-Id: FN-6898

Fusion-Task-Lineage: 3758d995-bda9-4ab9-add7-e6a3f710dc6f
2026-06-21 20:40:59 -07:00
gsxdsm
4fec139927 FN-6881: move stash recovery into Git Manager
Move stash recovery into the Git Manager while retiring the standalone dashboard route.

- Add a Recovery section to Git Manager that hosts the existing StashRecoveryView.
- Remove stash recovery from top-level, overflow, mobile, and lazy-loaded view registries.
- Preserve orphaned-stash counts on Git Manager entry points and migrate saved stash-recovery routes back to Board.
- Update dashboard docs, lazy-load inventory, tests, and add a published package changeset.

Files changed:
 .changeset/fn-6881-stash-recovery-git-manager.md   |  5 +++
 AGENTS.md                                          |  3 +-
 docs/dashboard-guide.md                            |  9 ++--
 packages/dashboard/app/App.tsx                     | 13 ------
 .../app/__tests__/lazy-loaded-views-docs.test.ts   | 11 ++---
 .../dashboard/app/components/GitManagerModal.tsx   | 19 +++++++-
 packages/dashboard/app/components/Header.css       |  9 ++++
 packages/dashboard/app/components/Header.tsx       | 22 +++-------
 .../dashboard/app/components/LeftSidebarNav.tsx    |  4 --
 packages/dashboard/app/components/MobileNavBar.tsx | 16 +------
 .../components/__tests__/GitManagerModal.test.tsx  | 51 ++++++++++++++++++++++
 .../app/components/__tests__/Header.test.tsx       | 21 +++++++++
 .../components/__tests__/LeftSidebarNav.test.tsx   | 10 ++---
 .../app/components/__tests__/MobileNavBar.test.tsx | 10 +++++
 .../app/components/__tests__/RightDock.test.tsx    |  4 +-
 .../__tests__/overflowViewRegistry.test.tsx        |  3 +-
 .../app/components/overflowViewRegistry.tsx        | 10 -----
 packages/dashboard/app/hooks/__tests__/useViewState.test.ts       | 28 ++++++++++++
 packages/dashboard/app/hooks/useViewState.ts       | 19 +++++++-
 packages/dashboard/src/view-chunk-manifest.ts      |  1 -
 20 files changed, 184 insertions(+), 84 deletions(-)

Fusion-Task-Id: FN-6881

Fusion-Task-Lineage: 467d34ec-8a6a-46db-8eb8-cb0216c031da
2026-06-21 20:28:33 -07:00
gsxdsm
15d427bc11 FN-6886: move planning mode into sidebar view
Planning Mode now opens as a top-level embedded dashboard view instead of a header modal affordance.

- Add Planning to the left sidebar navigation and persisted task-view registry.
- Mount PlanningModeModal as an embedded main-content view while preserving initial-plan and resume-session payloads.
- Remove legacy desktop and compact header planning buttons so compact layouts have one canonical MobileNavBar planning entry.
- Update dashboard navigation tests and add a published package patch changeset.

Files changed:
 .changeset/fn-6886-planning-sidebar-view.md        |   5 +
 packages/dashboard/app/App.tsx                     |  47 ++++++--
 .../app/__tests__/tablet-header-controls.test.tsx  |  16 +--
 packages/dashboard/app/components/AppModals.tsx    |  20 ----
 packages/dashboard/app/components/Header.tsx       |  50 +-------
 .../dashboard/app/components/LeftSidebarNav.tsx    |  14 +++
 .../dashboard/app/components/PlanningModeModal.css |  23 ++++
 .../dashboard/app/components/PlanningModeModal.tsx |  29 +++--
 .../app/components/__tests__/App.test.tsx          |  57 ++++-----
 .../app/components/__tests__/Header.test.tsx       | 132 +++------------------
 .../components/__tests__/LeftSidebarNav.test.tsx   |  10 ++
 .../PlanningModeModal.planning-flow.test.tsx       |  25 ++++
 packages/dashboard/app/hooks/useModalManager.ts    |   5 +-
 packages/dashboard/app/hooks/useViewState.ts       |   7 +-
 14 files changed, 188 insertions(+), 252 deletions(-)

Fusion-Task-Id: FN-6886
Fusion-Task-Lineage: 18111cc7-ef2e-40a0-8272-220c01390ae2
2026-06-21 19:52:16 -07:00
gsxdsm
2db99ec6fd FN-6894: widen workflow switcher menus
Workflow switcher dropdowns now size open menus to fit long workflow names without widening the collapsed trigger.

- Add menu width calculation that combines measured workflow names, option decorations, trigger width, and viewport bounds.
- Measure option names with a canvas when opening/repositioning the dropdown.
- Cover long-name, viewport clamp, trigger sizing, and CSS overflow behavior in WorkflowSwitcher tests.
- Document the open-listbox sizing behavior in the dashboard guide.

Files changed:
 docs/dashboard-guide.md                            |  2 +-
 .../dashboard/app/components/WorkflowSwitcher.tsx  | 49 +++++++++++++-
 .../components/__tests__/WorkflowSwitcher.test.tsx | 78 +++++++++++++++++++++-
 3 files changed, 123 insertions(+), 6 deletions(-)

Fusion-Task-Id: FN-6894

Fusion-Task-Lineage: 3f2f8129-3f85-484d-9c0f-b6ebe673b6a9
2026-06-21 19:23:51 -07:00
gsxdsm
9ce9f74b5c FN-6880: add sidebar New Task action
Add a persistent New Task entry to the left sidebar so task creation is available from project views.

- Wire the left sidebar to the existing New Task dialog trigger from App.
- Render an accessible, token-styled New Task CTA above sidebar navigation with collapsed rail support.
- Cover the new sidebar affordance behavior and document it in the dashboard guide.

Files changed:
 docs/dashboard-guide.md                            |  2 +-
 packages/dashboard/app/App.tsx                     |  1 +
 .../dashboard/app/components/LeftSidebarNav.css    | 27 +++++++
 .../dashboard/app/components/LeftSidebarNav.tsx    | 18 +++++
 .../components/__tests__/LeftSidebarNav.test.tsx   | 83 ++++++++++++++++++++++
 5 files changed, 130 insertions(+), 1 deletion(-)

Fusion-Task-Id: FN-6880

Fusion-Task-Lineage: 7d9cffd4-c216-4250-9615-51e7c16438c2
2026-06-21 19:17:06 -07:00
gsxdsm
e77f785fbc FN-6890: rename documents navigation to artifacts
Rename the user-facing Documents destination to Artifacts across dashboard navigation.

- Update header, sidebar, mobile, right-dock, and view title labels to say Artifacts while preserving the existing documents route identifiers.
- Refresh localized app strings and generated i18n types for the renamed label.
- Adjust dashboard and i18n coverage tests to assert the Artifacts label across navigation surfaces.

Files changed:
 docs/dashboard-guide.md                            | 10 ++---
 .../app/__tests__/tablet-header-controls.test.tsx  | 12 +++---
 .../dashboard/app/components/DocumentsView.tsx     |  3 +-
 packages/dashboard/app/components/Header.tsx       | 10 +++--
 .../dashboard/app/components/LeftSidebarNav.tsx    |  6 ++-
 packages/dashboard/app/components/MobileNavBar.tsx |  3 +-
 .../components/__tests__/DocumentsView.test.tsx    |  1 +
 .../app/components/__tests__/Header.test.tsx       | 10 ++---
 .../components/__tests__/LeftSidebarNav.test.tsx   |  2 +
 .../app/components/__tests__/MobileNavBar.test.tsx | 11 ++++++
 .../app/components/__tests__/RightDock.test.tsx    |  3 +-
 .../__tests__/overflowViewRegistry.test.tsx        |  6 ++-
 .../app/components/overflowViewRegistry.tsx        |  6 ++-
 packages/i18n/locales/en/app.json                  |  6 +--
 packages/i18n/locales/es/app.json                  |  6 +--
 packages/i18n/locales/fr/app.json                  |  6 +--
 packages/i18n/locales/ko/app.json                  |  6 +--
 packages/i18n/locales/zh-CN/app.json               |  6 +--
 packages/i18n/locales/zh-TW/app.json               |  6 +--
 .../i18n/src/__tests__/i18n-gate-coverage.test.ts  | 24 ++++++++++++
 packages/i18n/src/resources.d.ts                   | 45 +++++++++++++++++++---
 21 files changed, 139 insertions(+), 49 deletions(-)

Fusion-Task-Id: FN-6890
Fusion-Task-Lineage: 7a50dc24-3278-4cdf-8e4c-fd8cc5c3c40d
2026-06-21 18:55:36 -07:00
gsxdsm
1270dc192d FN-6895: add execution mode to new task modal
Expose execution-mode selection when creating tasks from the New Task dialog.

- Add Fast/standard execution-mode state to the New Task modal and pass Fast through create payloads.
- Treat Fast as dirty state and reset the selector after create or discard flows.
- Cover the More options affordance, Fast payload inclusion, Standard payload omission, and reset behavior.

Files changed:
 packages/dashboard/app/components/NewTaskModal.tsx | 15 ++++-
 .../app/components/__tests__/NewTaskModal.test.tsx | 69 ++++++++++++++++++++++
 2 files changed, 82 insertions(+), 2 deletions(-)

Fusion-Task-Id: FN-6895

Fusion-Task-Lineage: f52dc78f-7ea0-4539-b256-4354f7b35c25
2026-06-21 18:50:32 -07:00
gsxdsm
e2a57f0a80 FN-6840: document Shadcn theme selection surfaces
Document the expanded Shadcn theme workflow across dashboard customization docs.

- Note that the Command Center overview selector exposes the same Shadcn variants as Settings → Appearance.
- Add the DashboardTheming FNXC requirement note for the expanded Shadcn family, custom preset, and accent-following sidebar behavior.
- Describe sidebar active and resize accents following the selected theme token.

Files changed:
 docs/dashboard-guide.md | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Fusion-Task-Id: FN-6840

Fusion-Task-Lineage: 2f87dc23-7a37-4ed6-9418-7bd06b2ecd82
2026-06-21 18:28:57 -07:00
gsxdsm
91971b674b FN-6891: route CE review through ce-code-review
Route compound-engineering review directly through the CE code-review skill gate.

- Remove the generic review seam from the compound-engineering workflow.
- Keep ce-code-review as the single gated review stage with coding tool mode.
- Add workflow tests covering CE review ordering, layout, compiled steps, and unaffected built-in review seams.
- Add a patch changeset for the published fusion package.

Files changed:
 .changeset/fn-6891-ce-review-skill.md              |  5 ++
 .../core/src/__tests__/builtin-workflows.test.ts   | 54 +++++++++++++++++++---
 packages/core/src/builtin-workflows.ts             |  5 +-
 3 files changed, 57 insertions(+), 7 deletions(-)

Fusion-Task-Id: FN-6891

Fusion-Task-Lineage: c85e2672-5715-4328-9dcb-ba697d4ac000
2026-06-21 18:22:43 -07:00
gsxdsm
f49d8c61e7 FN-6879: add AI handoffs to New Task dialog
Expose the board quick-add planning handoffs from the New Task dialog.

- Wire New Task modal actions through AppModals to open Planning Mode and Subtask Breakdown.
- Reset and close the dialog without discard confirmation when handing off the typed description.
- Cover the dialog affordance parity, trimmed handoff payloads, and disabled empty-description state.
- Document the Plan and Subtask quick-add buttons in the dashboard guide.

Files changed:
 docs/dashboard-guide.md                            |  2 +
 packages/dashboard/app/App.tsx                     |  2 +
 packages/dashboard/app/components/AppModals.tsx    |  6 ++
 packages/dashboard/app/components/NewTaskModal.tsx | 41 ++++++++----
 .../app/components/__tests__/NewTaskModal.test.tsx | 77 +++++++++++++++++++++-
 5 files changed, 113 insertions(+), 15 deletions(-)

Fusion-Task-Id: FN-6879

Fusion-Task-Lineage: 9e4b499d-8175-4172-afeb-fe70845241c0
2026-06-21 18:17:47 -07:00
gsxdsm
6b59c5bbde FN-6885: enable org chart drag panning
Enable drag panning for the Command Center Team org chart while preserving node clicks and touch scrolling.

- Add pointer-driven mouse/pen panning with a movement threshold and click suppression after drag gestures.
- Style the draggable org chart viewport with grab/grabbing cursor states.
- Cover panning behavior, click preservation, drag click suppression, and touch pointer passthrough in TeamArea tests.
- Document drag-to-pan support in the dashboard guide.

Files changed:
 docs/dashboard-guide.md                            |   2 +-
 .../components/command-center/areas/TeamArea.tsx   |  82 +++++++++-
 .../areas/__tests__/TeamArea.orgchart-pan.test.tsx | 172 +++++++++++++++++++++
 .../app/components/command-center/areas/areas.css  |  10 ++
 4 files changed, 263 insertions(+), 3 deletions(-)

Fusion-Task-Id: FN-6885

Fusion-Task-Lineage: d0749fc9-cea4-4bc4-b457-b93ddd2a3613
2026-06-21 18:13:56 -07:00
gsxdsm
a4ae13057c FN-6889: move Secrets and Todos out of left sidebar
Keep auxiliary Secrets and Todos navigation anchored to the right dock instead of the left sidebar.\n\n- Remove Secrets and Todos entries and unused icons from LeftSidebarNav.\n- Update sidebar tests to assert those shortcuts are omitted while other routes still work.\n- Refresh dashboard navigation docs for right-dock Todos and Secrets placement.\n\nFiles changed:\n docs/dashboard-guide.md                                       |  6 +++---\n packages/dashboard/app/components/LeftSidebarNav.tsx          | 11 ++++-------\n .../app/components/__tests__/LeftSidebarNav.test.tsx          |  8 +++-----\n 3 files changed, 10 insertions(+), 15 deletions(-)

Fusion-Task-Id: FN-6889

Fusion-Task-Lineage: de135281-a9a8-4583-8251-e78a6b28122e
2026-06-21 18:08:27 -07:00
gsxdsm
31dd7429a3 FN-6883: fill Command Center line charts
Restore Command Center Activity line charts so their plotted geometry fills the rendered chart box without distorting point markers.

- Measure the rendered SVG dimensions and use them as the line chart viewBox so paths span wide desktop and mobile layouts.
- Preserve safe bounded geometry for zero, single-point, NaN, and resized chart states.
- Update Command Center chart tests and dashboard rendering guidance for the fill-width/circular-marker invariant.

Files changed:
 docs/dashboard-guide.md                            |  2 +-
 .../command-center/__tests__/charts.test.tsx       | 71 ++++++++++++++---
 .../command-center/areas/__tests__/areas.test.tsx  | 35 ++++++---
 .../components/command-center/charts/LineChart.tsx | 89 ++++++++++++++++++----
 .../components/command-center/charts/charts.css    |  4 +-
 5 files changed, 164 insertions(+), 37 deletions(-)

Fusion-Task-Id: FN-6883

Fusion-Task-Lineage: 71c19a62-1a76-455d-92cb-9c22d0613881
2026-06-21 18:02:49 -07:00
gsxdsm
69b8178844 FN-6884: expand Team org chart connectors
Make the Command Center Team org chart easier to scan with taller scrolling and visible parent-child connectors.

- Increase desktop and mobile Team org chart scroll heights.
- Draw horizontal-mode parent drops, sibling rails, and child connector stubs while preserving vertical connector styling.
- Add CSS invariant coverage for connector rules, viewport heights, and design-token usage.
- Document the taller connected Team org chart behavior.

Files changed:
 docs/dashboard-guide.md                            |   2 +-
 .../CommandCenter.orgchart-connectors.css.test.ts  | 119 +++++++++++++++++++++
 .../app/components/command-center/areas/areas.css  |  38 ++++++-
 3 files changed, 156 insertions(+), 3 deletions(-)

Fusion-Task-Id: FN-6884

Fusion-Task-Lineage: 0a68f0a1-3303-4730-b3bd-788cc6218c0a
2026-06-21 17:19:03 -07:00
gsxdsm
1e81f99f72 FN-6877: stabilize dashboard changed-mode affected runs
Stabilize changed-mode affected runs by giving dashboard its own memory envelope.

- Generalize scoped affected memory-envelope handling beyond the engine lane.
- Run @fusion/dashboard changed-mode Vitest scopes in a 6144 MB, single-worker envelope.
- Cover dashboard and engine scoped partitioning/env contracts with script tests.
- Document the dashboard changed-mode OOM/SIGKILL guard and remeasurement expectations.

Files changed:
 docs/testing.md                         |   6 +-
 scripts/__tests__/test-changed.test.mjs | 112 +++++++++++++++++++++++++++-----
 scripts/test-changed.mjs                |  67 +++++++++++++++----
 3 files changed, 155 insertions(+), 30 deletions(-)

Fusion-Task-Id: FN-6877

Fusion-Task-Lineage: 084df464-ebda-4578-bfac-305800da5b6c
2026-06-21 16:48:20 -07:00
gsxdsm
1f23a2e622 FN-6878: register Droid provider before probes
Register Droid provider startup without waiting on local binary probes.

- Register the Droid CLI provider synchronously with an empty model list, then refresh discovered models asynchronously.
- Harden Droid runtime probes to convert spawn errors and timeouts into unavailable sentinel results.
- Add coverage for non-blocking startup, failed probes, unavailable binaries, and process cleanup behavior.
- Add a patch changeset for the published Fusion CLI package.

Files changed:
 .changeset/fn-6878-droid-boot.md                   |  5 ++
 packages/droid-cli/index.ts                        | 73 +++++++++++-------
 packages/droid-cli/src/__tests__/index.test.ts     | 52 ++++++++++++-
 .../src/__tests__/process-manager.test.ts          | 58 +++++++--------
 .../src/__tests__/discover-models.test.ts          |  8 ++
 .../src/__tests__/probe.test.ts                    | 43 ++++++++++-
 .../src/__tests__/startup-probes.test.ts           | 86 ++++++++++++++++++++++
 plugins/fusion-plugin-droid-runtime/src/probe.ts   | 32 +++++---
 8 files changed, 283 insertions(+), 74 deletions(-)

Fusion-Task-Id: FN-6878

Fusion-Task-Lineage: 4e44a6e8-0eea-4867-a172-3bdc0c6368e1
2026-06-21 16:40:32 -07:00
gsxdsm
09acfbb707 FN-6875: allow manual unpause for assigned tasks
Allow users to recover paused agent-assigned tasks without switching to agent controls.

- Remove the API conflict that blocked manual pause and unpause on assigned tasks.
- Keep pause and unpause actions visible for assigned, paused, and agent-paused tasks in the detail menu.
- Cover assigned-task pause controls and route unpause behavior with regression tests.
- Document manual unpause support and add a patch changeset.

Files changed:
 .changeset/fn-6875-allow-unpause-assigned.md       |   5 +
 docs/agents.md                                     |   2 +-
 docs/dashboard-guide.md                            |   1 +
 .../dashboard/app/components/TaskDetailModal.tsx   |  17 +++-
 .../TaskDetailModal.definition-actions.test.tsx    |  97 +++++++++++++++++--
 .../register-task-workflow-routes.unpause.test.ts  | 103 ++++++++++++++-------
 .../src/routes/register-task-workflow-routes.ts    |  14 ++-
 7 files changed, 187 insertions(+), 52 deletions(-)

Fusion-Task-Id: FN-6875

Fusion-Task-Lineage: 9233822c-2013-475d-b17a-2212a38ab388
2026-06-21 16:34:41 -07:00
gsxdsm
55266b6e9e FN-6874: document Command Center pricing semantics
Document the Command Center pricing contract for maintainers and users.

- Explain that estimated token costs are derived at read time from the maintained pricing table and are not persisted billing truth.\n- Document pricingAsOf, stale low-confidence, unknown-model unavailable, and provider coverage maintenance expectations.\n- Add a documentation contract test to keep the dashboard and architecture guides aligned.

Files changed:\n docs/architecture.md                               |  2 ++\n docs/dashboard-guide.md                            |  3 +-\n .../__tests__/command-center-pricing-docs.test.ts  | 35 ++++++++++++++++++++++\n 3 files changed, 39 insertions(+), 1 deletion(-)

Fusion-Task-Id: FN-6874

Fusion-Task-Lineage: 04606ae1-4870-479a-afb6-8a24675fe66b
2026-06-21 16:28:30 -07:00
gsxdsm
d5ea17d8ab FN-6873: exclude archived tasks from auto-claim scans
Auto-claim now revalidates cached candidates so archived tasks cannot be surfaced or claimed.

- Restrict auto-claim candidate runnability to live todo rows while still allowing archived dependencies to satisfy blockers.
- Rebuild fresh auto-claim candidates from canonical task fields before heartbeat prompt rendering and claim selection.
- Cover archived-while-cached snapshots and executor/engineer heartbeat behavior with regression tests.

Files changed:
 .../src/__tests__/auto-claim-snapshot.test.ts      | 52 ++++++++++++++++--
 .../src/__tests__/heartbeat-executor.test.ts       | 63 ++++++++++++++++++++++
 packages/engine/src/auto-claim-snapshot.ts         |  6 +++
 3 files changed, 118 insertions(+), 3 deletions(-)

Fusion-Task-Id: FN-6873

Fusion-Task-Lineage: 3bd438f8-bbf8-428e-a7e2-56aebbbc6522
2026-06-21 16:23:42 -07:00
gsxdsm
58f758842b FN-6816: add shadcn custom color picker
Add a Shadcn Custom theme flow for editing and applying sanitized dashboard color tokens.

- Add a lazy-loaded Shadcn color picker modal with token defaults, reset controls, and validation tests.
- Persist sanitized custom color overrides through settings, pre-hydration theme bootstrapping, and Command Center/theme dropdown surfaces.
- Register the Shadcn Custom theme option in core types, schema, docs, theme CSS, and release notes.

Files changed:
 .changeset/fn-6816-shadcn-custom-colors.md         |   5 +
 docs/dashboard-guide.md                            |   2 +-
 docs/settings-reference.md                         |   3 +-
 packages/core/src/settings-schema.ts               |   1 +
 packages/core/src/types.ts                         |   4 +
 packages/dashboard/app/App.tsx                     |   7 +-
 packages/dashboard/app/components/AppModals.tsx    |   6 +
 .../dashboard/app/components/SettingsModal.tsx     |  12 ++
 .../dashboard/app/components/ShadcnColorPicker.css | 101 ++++++++++++++
 .../dashboard/app/components/ShadcnColorPicker.tsx |  95 +++++++++++++
 .../dashboard/app/components/ThemeDropdown.tsx     |  23 +++-
 .../dashboard/app/components/ThemeSelector.css     |  14 ++
 .../dashboard/app/components/ThemeSelector.tsx     |  19 ++-
 .../__tests__/ShadcnColorPicker.test.tsx           |  50 +++++++
 .../components/__tests__/ThemeDropdown.test.tsx    |  19 +++
 .../components/__tests__/ThemeSelector.test.tsx    |  64 +++++++++
 .../__tests__/shadcnCustomColors.test.ts           |  52 ++++++++
 .../components/command-center/CommandCenter.tsx    |  15 +++
 .../command-center/CommandCenterControls.tsx       |   8 +-
 .../settings/sections/AppearanceSection.tsx        |   8 +-
 .../dashboard/app/components/shadcnCustomColors.ts |  80 +++++++++++
 packages/dashboard/app/components/themeOptions.ts  |   1 +
 .../dashboard/app/hooks/__tests__/useTheme.test.ts | 108 +++++++++++++++
 packages/dashboard/app/hooks/useTheme.ts           |  91 ++++++++++++-
 packages/dashboard/app/index.html                  |  19 ++-
 packages/dashboard/app/public/theme-data.css       | 148 ++++++++++++++++++++-
 26 files changed, 938 insertions(+), 17 deletions(-)

Fusion-Task-Id: FN-6816

Fusion-Task-Lineage: f16baaa9-16f5-4526-8159-9a1ceff4f807
2026-06-21 16:13:54 -07:00
gsxdsm
ef4889585f FN-6779: add artifacts gallery to Documents
Adds a Documents-view artifact gallery backed by dashboard artifact registry APIs.

- Add artifact listing and media-serving endpoints with project scoping, validation, and safe artifact path resolution.
- Add client artifact API helpers, SWR caching, and a useArtifacts hook for background-refresh gallery data.
- Extend Documents view with an Artifacts tab, media previews, localized labels, documentation, tests, and a published package changeset.

Files changed:
 .changeset/fn-6779-artifacts-gallery.md            |   5 +
 docs/dashboard-guide.md                            |   6 +-
 packages/dashboard/app/api/legacy.ts               |  34 ++++
 .../dashboard/app/components/DocumentsView.css     | 142 ++++++++++++++++
 .../dashboard/app/components/DocumentsView.tsx     | 178 ++++++++++++++++++--
 .../components/__tests__/DocumentsView.test.tsx    | 163 +++++++++++++++++-
 .../app/hooks/__tests__/useArtifacts.test.ts       | 136 +++++++++++++++
 packages/dashboard/app/hooks/useArtifacts.ts       | 145 ++++++++++++++++
 packages/dashboard/app/utils/swrCache.ts           |   1 +
 .../src/routes/__tests__/artifacts-routes.test.ts  | 182 +++++++++++++++++++++
 .../src/routes/register-task-workflow-routes.ts    | 125 ++++++++++++++
 packages/i18n/locales/en/app.json                  |  22 ++-
 packages/i18n/locales/es/app.json                  |  27 ++-
 packages/i18n/locales/fr/app.json                  |  27 ++-
 packages/i18n/locales/ko/app.json                  |  27 ++-
 packages/i18n/locales/zh-CN/app.json               |  27 ++-
 packages/i18n/locales/zh-TW/app.json               |  27 ++-
 scripts/line-count-baseline.json                   |  16 +-
 18 files changed, 1255 insertions(+), 35 deletions(-)

Fusion-Task-Id: FN-6779

Fusion-Task-Lineage: 1d71e4be-4bfc-4706-9cbf-7214f91a79d1
2026-06-21 16:01:07 -07:00
gsxdsm
7ee1fec22c FN-6861: reject repo-root task worktrees
Prevent stale task metadata from treating the project repository root as a reusable task worktree.

- Classify root-equal task worktree paths as repo-root before registered-worktree checks.
- Clear stale resumed repo-root assignments so acquisition creates a fresh configured task worktree.
- Add structured executor audit metadata and regression coverage for repo-root liveness collisions.
- Document the repo-root requeue-loop invariant and recovery behavior.

Files changed:
 docs/architecture.md                               |  2 +-
 .../repo-root-task-worktree-requeue-loop.md        | 49 ++++++++++++++++
 .../__tests__/executor-worktree-liveness.test.ts   | 23 +++++++-
 .../src/__tests__/worktree-acquisition.test.ts     | 67 +++++++++++++++++++++-
 .../src/__tests__/worktree-pool-liveness.test.ts   | 25 ++++++++
 packages/engine/src/executor.ts                    | 22 ++++++-
 packages/engine/src/worktree-acquisition.ts        |  4 ++
 packages/engine/src/worktree-pool.ts               | 13 ++++-
 8 files changed, 198 insertions(+), 7 deletions(-)

Fusion-Task-Id: FN-6861

Fusion-Task-Lineage: d6a4922e-5a21-4037-b2c2-86ff53d8e9e3
2026-06-21 14:28:58 -07:00
gsxdsm
8124fa3761 FN-6867: fix roadmap CSS tokens
Roadmap dashboard styling now uses defined Fusion theme tokens and has regression coverage for undefined CSS custom properties.

- Retoken roadmap surfaces, form controls, and text from retired aliases to defined dashboard tokens.
- Document the roadmap styling requirement with an FNXC comment in the plugin CSS.
- Add a CSS-token validity test that rejects retired aliases and undefined roadmap custom-property references.

Files changed:
 .../src/dashboard/RoadmapsView.css                 |  63 ++++-----
 .../RoadmapsView.css-token-validity.test.ts        | 147 +++++++++++++++++++++
 2 files changed, 179 insertions(+), 31 deletions(-)

Fusion-Task-Id: FN-6867

Fusion-Task-Lineage: 0d5c71dc-b6ad-4b70-a792-2d8a05fe81f1
2026-06-21 14:17:45 -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
gsxdsm
d99246cb74 FN-6834: use OS-available memory for system metrics
Use shared OS-available memory readings so macOS cache/inactive pages are not counted as used.

- Add a core available-memory helper that prefers `process.availableMemory()` and flags `freemem` fallback reliability.
- Route core metrics, dashboard system stats, and the dashboard TUI through the shared helper.
- Move and expand memory tests across core, dashboard routes, and verification coverage while documenting the telemetry behavior.
- Add a patch changeset for the published CLI package.

Files changed:
 .changeset/fix-macos-memory-used.md                |  5 ++
 docs/architecture.md                               |  2 +-
 docs/dashboard-guide.md                            |  2 +-
 .../__tests__/available-memory.test.ts             | 54 --------------
 .../cli/src/commands/dashboard-tui/controller.ts   | 37 +---------
 .../core/src/__tests__/available-memory.test.ts    | 83 ++++++++++++++++++++++
 packages/core/src/__tests__/system-metrics.test.ts | 36 +++++++++-
 packages/core/src/available-memory.ts              | 32 +++++++++
 packages/core/src/index.ts                         |  1 +
 packages/core/src/system-metrics.ts                |  9 ++-
 .../dashboard/src/__tests__/routes-system.test.ts  | 27 +++++++
 packages/dashboard/src/routes.ts                   |  7 +-
 .../src/__tests__/run-verification-command.test.ts | 18 +++++
 13 files changed, 218 insertions(+), 95 deletions(-)

Fusion-Task-Id: FN-6834

Fusion-Task-Lineage: 2e651551-6c35-46d1-b517-535758c7ace2
2026-06-21 13:32:19 -07:00