gsxdsm
4441b72bbc
fix(FN-7273): prevent stale step resume regressions
2026-06-30 08:07:40 -07:00
gsxdsm
5ec04ec5cb
fix(FN-7271): keep fast coding tasks from skipping implementation
2026-06-30 07:31:59 -07:00
gsxdsm
ebb805d253
FN-7261: add global modal dismissal setting
...
Add a global dashboard preference that keeps modal backdrop dismissal off by default while allowing operators to opt in.
- Add dismissModalsOnOutsideClick to global settings defaults, schema, docs, and save handling.
- Provide the modal dismissal preference through App and gate shared overlay mouse/touch dismissal on it.
- Expose the preference in Global General settings and update modal dismissal tests.
- Add a changeset for the published CLI package.
Files changed:
.changeset/fn-7261-global-modal-outside-dismiss.md | 7 ++++
docs/settings-reference.md | 1 +
.../core/src/__tests__/settings-defaults.test.ts | 9 +++++
packages/core/src/settings-schema.ts | 5 +++
packages/core/src/types.ts | 5 +++
packages/dashboard/app/App.tsx | 16 +++++----
.../app/components/AgentErrorDetailsModal.tsx | 4 ++-
.../__tests__/AgentErrorDetailsModal.test.tsx | 28 +++++++++++++++-
.../__tests__/SettingsModal.general.test.tsx | 23 ++++++++++++-
.../app/components/settings/save-split.ts | 1 +
.../settings/sections/GlobalGeneralSection.tsx | 5 +++
.../app/hooks/__tests__/useOverlayDismiss.test.tsx | 38 ++++++++++++++++++----
packages/dashboard/app/hooks/useAppSettings.ts | 5 +++
packages/dashboard/app/hooks/useOverlayDismiss.ts | 36 +++++++++++++++++---
14 files changed, 163 insertions(+), 20 deletions(-)
Fusion-Task-Id: FN-7261
Fusion-Task-Lineage: 4fd5195f-c759-46b4-b567-0d5a9d5b92e3
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-30 01:50:52 -07:00
gsxdsm
eb83c81ffb
fix(FN-7265): align per-step review workflow
2026-06-29 23:25:17 -07:00
gsxdsm
ea0707c573
FN-7264: add opt-in absolute file-browser paths
...
Add an opt-in project setting that lets the workspace file browser use slash-prefixed absolute paths while preserving existing confined defaults.
- Add the allowAbsoluteFileBrowserPaths project setting, docs, and changeset release note.
- Thread absolute-path validation through workspace file-browser listing, editing, file operations, and downloads without widening other path APIs.
- Add Settings UI controls and keep settings-specific file pickers project-relative.
- Cover absolute-path browsing, percent-literal paths, root navigation, and settings picker behavior with tests.
Files changed:
.changeset/fn-7264-absolute-file-browser-paths.md | 7 +
docs/settings-reference.md | 3 +
.../core/src/__tests__/settings-parity.test.ts | 8 +
packages/core/src/settings-schema.ts | 5 +
packages/core/src/types.ts | 5 +
.../app/__tests__/settings-sections.test.tsx | 41 +++++
packages/dashboard/app/components/FileBrowser.tsx | 26 ++-
.../dashboard/app/components/FileBrowserModal.tsx | 7 +
.../dashboard/app/components/SettingsModal.tsx | 34 +++-
.../components/__tests__/FileBrowserModal.test.tsx | 18 ++
.../__tests__/SettingsModal.general.test.tsx | 17 ++
.../settings/sections/GeneralSection.tsx | 9 +
.../__tests__/useWorkspaceFileBrowser.test.ts | 18 ++
.../dashboard/app/hooks/useWorkspaceFileBrowser.ts | 20 ++-
.../dashboard/src/__tests__/file-service.test.ts | 199 ++++++++++++++++++++-
packages/dashboard/src/file-service.ts | 129 ++++++++-----
16 files changed, 489 insertions(+), 57 deletions(-)
Fusion-Task-Id: FN-7264
Fusion-Task-Lineage: ec71facd-0345-4490-a3df-244b98e24c2d
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-29 23:17:49 -07:00
gsxdsm
17fce43205
FN-7259: add mobile task popup setting
...
Add an opt-in mobile board-card route that opens task details in the existing popup.
- Add the openMobileTasksInPopup project setting, defaults, types, docs, and changeset.
- Expose the Appearance setting and include it in dashboard settings persistence.
- Route mobile board-card clicks without deep tabs into the task FloatingWindow while preserving dock and main-panel behavior.
- Add coverage for settings defaults, Appearance controls, mobile routing, and task popup sizing.
Files changed:
.changeset/fn-7259-mobile-task-popups.md | 7 ++++
docs/dashboard-guide.md | 5 ++-
docs/settings-reference.md | 1 +
.../core/src/__tests__/settings-defaults.test.ts | 13 ++++++
packages/core/src/settings-schema.ts | 5 +++
packages/core/src/types.ts | 7 ++++
packages/dashboard/app/App.tsx | 45 ++++++++++++++++++--
.../__tests__/App.openTasksInRightSidebar.test.ts | 48 +++++++++++++++++++++-
.../dashboard/app/components/FloatingWindow.css | 28 +++++++++++++
.../dashboard/app/components/SettingsModal.tsx | 1 +
.../components/__tests__/FloatingWindow.test.tsx | 22 ++++++++++
.../settings/sections/AppearanceSection.tsx | 7 ++++
.../sections/__tests__/AppearanceSection.test.tsx | 19 +++++++++
packages/dashboard/app/hooks/useAppSettings.ts | 5 +++
14 files changed, 206 insertions(+), 7 deletions(-)
Fusion-Task-Id: FN-7259
Fusion-Task-Lineage: 05f22978-ede7-4d13-940c-5108390959f7
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-29 23:12:56 -07:00
gsxdsm
2a5a108123
FN-7265: preserve workflow on refinements
...
Preserve workflow context when creating refinement tasks from completed or reviewed work.
- Inherit explicit source workflow selections when creating refinement tasks and seed the new card into the workflow entry column.
- Write task rows and workflow-selection rows atomically so refinements cannot be stranded outside their intended board.
- Clear successful done-task chat refinement composer bubbles and document the dashboard behavior.
- Add core and dashboard regression coverage for refinement workflow preservation.
Files changed:
.changeset/fuzzy-refinements-dance.md | 7 +
.changeset/preserve-refinement-workflow.md | 7 +
docs/dashboard-guide.md | 3 +-
.../src/__tests__/workflow-selection-store.test.ts | 159 +++++++++++++++++++--
packages/core/src/store.ts | 55 ++++++-
.../workflow-selection-cross-surface.test.tsx | 41 +++++-
packages/dashboard/app/components/TaskChatTab.tsx | 5 +
.../app/components/__tests__/TaskChatTab.test.tsx | 27 +++-
.../TaskDetailModal.definition-actions.test.tsx | 52 +++++++
9 files changed, 335 insertions(+), 21 deletions(-)
Fusion-Task-Id: FN-7265
Fusion-Task-Lineage: 48700e3e-9f3a-474e-806c-47db0b75fca1
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-29 22:54:50 -07:00
gsxdsm
cfd9d5b32e
test(FN-7249): cover phantom worktree recovery
2026-06-29 22:30:23 -07:00
gsxdsm
5a6d110483
fix(engine): stop phantom-reservation audit churn and preserve worktree on phantom reclaim
...
reconcilePhantomCommittedReservations emitted a task:reconcile-phantom-committed-reservation audit row every maintenance tick for the same orphaned committed reservations even when zero child rows were pruned (~19k no-op writes/day). Gate the audit emission on actual pruned work; the FN-7069 contract is unchanged (committed reservation stays committed so the ID is never reused).
clearPhantomExecutorBinding unconditionally unregistered held worktree paths from activeSessionRegistry, defeating the moveTask(preserveWorktree:true) the self-healing phantom reclaim pairs it with: re-dispatch then acquired a brand-new worktree instead of reattaching (FN-7249 lost its first worktree this way). Add a preserveWorktrees option that clears only the stale in-memory executor/lock bookkeeping and leaves the session-registry path entries intact; the self-healing caller opts in. Non-self-healing callers keep the default full-clear behavior.
2026-06-29 21:56:14 -07:00
gsxdsm
9fd286b1d3
fix(FN-7242): keep code review remediation recovering
2026-06-29 18:41:43 -07:00
gsxdsm
90b62b7884
FN-7246: preserve explicit empty step dependencies
...
Preserve authored empty workflow step dependencies so parallel roots remain independent.
- Keep parser and TaskStep projections from dropping explicit empty dependsOn arrays.
- Treat missing dependsOn as the legacy previous-step fallback while allowing [] to mean no dependencies.
- Cover heading and JSON parsers plus parallel foreach scheduling with regression tests and docs.
Files changed:
.changeset/fn-7246-workflow-depends-on-empty.md | 7 +++++++
docs/workflow-steps.md | 4 ++--
packages/core/src/__tests__/step-parsers.test.ts | 8 ++++----
packages/core/src/step-parsers.ts | 30 +++++++++++++++++++++---------
packages/core/src/types.ts | 13 +++++++++----
packages/engine/src/__tests__/workflow-parse-steps.test.ts | 12 ++++++++++++
packages/engine/src/__tests__/workflow-step-parallel.test.ts | 30 +++++++++++++++++++++++++++++-
packages/engine/src/workflow-graph-foreach.ts | 9 +++++++--
packages/engine/src/workflow-node-handlers.ts | 6 +++++-
9 files changed, 96 insertions(+), 23 deletions(-)
Fusion-Task-Id: FN-7246
Fusion-Task-Lineage: a75687fa-5711-4509-b60f-43669323a6c0
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-29 18:05:44 -07:00
Phil Larson
af99a353f0
test(engine): align workflow gate expectations
2026-06-29 17:13:15 -07:00
Phil Larson
90756f92b0
fix(core): await secrets store close during TaskStore shutdown
2026-06-29 17:11:59 -07:00
gsxdsm
d7f26bb6cf
fix(FN-7219): stabilize compound engineering workflow
2026-06-29 16:42:11 -07:00
gsxdsm
42226edde1
FN-7245: expose workflow authoring tools to agents
...
Expose workflow authoring and selection tools through agent-visible extension surfaces.
- Register workflow list/get/create/update/delete/settings/select and trait-list tools in the published pi extension.
- Export shared workflow tool schemas/factories and include workflow settings in centralized authoring tool sets.
- Update action-gate classifications, permission examples, docs, tests, and the changeset for the new agent workflow surface.
Files changed:
.changeset/FN-7245-workflow-tools.md | 7 +
docs/agents.md | 4 +-
docs/cli-reference.md | 17 ++
docs/workflow-steps.md | 9 +-
.../src/__tests__/extension-workflow-tools.test.ts | 244 +++++++++++++++++++++
packages/cli/src/__tests__/extension.test.ts | 8 +
packages/cli/src/extension.ts | 142 ++++++++++++
packages/core/src/types.ts | 6 +-
.../dashboard/src/__tests__/chat-manager.test.ts | 9 +-
.../planning-document-tools-exposure.test.ts | 19 +-
.../engine/src/__tests__/agent-action-gate.test.ts | 8 +
.../agent-workflow-tools-exposure.test.ts | 30 ++-
.../src/__tests__/gating-classifications.test.ts | 13 +-
.../src/__tests__/permanent-agent-gating.test.ts | 4 +-
packages/engine/src/agent-tools.ts | 13 +-
packages/engine/src/gating-classifications.ts | 6 +-
packages/engine/src/index.ts | 7 +
17 files changed, 506 insertions(+), 40 deletions(-)
Fusion-Task-Id: FN-7245
Fusion-Task-Lineage: 82501602-7177-4ee8-a67b-32de35aa73de
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-29 16:35:51 -07:00
gsxdsm
3886e585dd
fix(FN-7143): show compound workflow node progress
...
Record skill-backed workflow nodes into workflowStepResults and teach task progress surfaces to include those graph-node records without re-showing disabled optional workflow checks.
2026-06-29 14:59:16 -07:00
gsxdsm
41c0cf3603
fix(FN-7235): scope workflow remediation recovery
...
Keep merge finalization from stranding scoped workflow tasks on out-of-scope branch residue, move built-in optional gate remediation attempts into workflow config, and guard review remediation against out-of-scope fixes.
Also covers FN-7236 review-remediation scope drift.
2026-06-29 14:00:32 -07:00
gsxdsm
a84afc178f
fix(FN-7233): preserve workflow optional step phase
2026-06-29 12:47:21 -07:00
gsxdsm
50f8807037
fix(FN-7233): persist workflow transition notifications
...
Store workflow transition notification markers as durable task state so recovery alerts do not depend on human-readable log text.
2026-06-29 12:40:00 -07:00
gsxdsm
e09d45037f
fix(FN-7233): move workflow lifecycle policy into nodes
2026-06-29 12:23:20 -07:00
gsxdsm
24d78816a0
fix(FN-7233): route workflow reviews through remediation nodes
2026-06-29 11:24:41 -07:00
gsxdsm
b169072224
fix(FN-7233): enforce workflow summary and done guards
2026-06-29 11:07:11 -07:00
gsxdsm
6239b2acb3
fix(FN-7228): make built-in code review blocking
2026-06-29 10:16:17 -07:00
gsxdsm
8b20f3458e
fix(FN-7224): address workflow code review findings
...
Fusion-Task-Id: FN-7224
2026-06-29 08:36:07 -07:00
gsxdsm
64518280f7
fix(FN-7224): normalize built-in workflow review toggles
...
Expose Plan Review, Code Review, and Browser Verification optional groups across engineering built-ins, with Quick Fix defaulting all three off and Compound Engineering keeping CE code review inside the shared optional toggle.
Fusion-Task-Id: FN-7224
2026-06-29 08:28:29 -07:00
gsxdsm
f430f5db39
fix(FN-7228): respect workflow step dependencies
2026-06-29 03:23:01 -07:00
gsxdsm
50ccd79b9f
fix(FN-7226): land graph step-session commits
2026-06-29 03:15:30 -07:00
gsxdsm
399a4a2a5f
fix(FN-7226): use graph projection for step sessions
2026-06-29 03:09:43 -07:00
gsxdsm
36d090c326
fix(FN-7225): keep plan review in triage
2026-06-29 02:47:17 -07:00
gsxdsm
c93217dee0
fix(FN-7225): honor plan review approvals in workflows
...
Fusion-Task-Id: FN-7225
2026-06-29 02:08:08 -07:00
gsxdsm
998a7f2745
fix(FN-7226): make plan review the single pre-execution gate
...
Fusion-Task-Id: FN-7226
2026-06-29 01:48:27 -07:00
gsxdsm
b86ddf4d10
fix(FN-7225): route failed plan review to triage
2026-06-29 00:48:49 -07:00
gsxdsm
138d6447fb
fix(workflows): address review feedback on recovery and docs
2026-06-29 00:10:27 -07:00
gsxdsm
d1caa3bdbf
test(workflows): cover coding optional gates
2026-06-28 23:45:32 -07:00
gsxdsm
d4b8032f28
feat(workflows): add optional plan review gate
2026-06-28 23:38:33 -07:00
gsxdsm
6ce0b44058
feat(workflows): make coding stepwise with final review
2026-06-28 23:24:29 -07:00
gsxdsm
dafb0f7280
Test update
2026-06-28 19:58:30 -07:00
gsxdsm
3a83868543
FN-7212: apply reviewer model overrides
...
Route reviewer-family sessions through the shared validator model resolver so task overrides are honored consistently.
- Resolve reviewer, workflow review-step, and spec-review models from one effective settings snapshot.
- Forward task reviewer model overrides from triage into spec review calls.
- Preserve review text capture for session implementations without subscribe support.
- Add coverage for override precedence, test-mode forcing, and optional review lanes.
- Add a patch changeset for the published Fusion package.
Files changed:
.changeset/fn-7212-reviewer-model-overrides.md | 7 ++
.../core/src/__tests__/model-resolution.test.ts | 117 +++++++++++++++++++
.../src/__tests__/executor-review-verdicts.test.ts | 53 ++++++++-
packages/engine/src/__tests__/reviewer.test.ts | 130 +++++++++++++++++++--
packages/engine/src/__tests__/triage.test.ts | 14 ++-
packages/engine/src/reviewer.ts | 91 +++++++++------
packages/engine/src/triage.ts | 3 +
7 files changed, 369 insertions(+), 46 deletions(-)
Fusion-Task-Id: FN-7212
Fusion-Task-Lineage: 34820552-e99c-4da0-97ef-fb1812cb917e
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 18:07:02 -07:00
gsxdsm
368f18cce6
FN-7213: restore fast-planning prompt safeguards
...
Restore fast-planning prompt guidance that prompt assertion tests depend on while keeping the spec path concise.
- Reintroduce required duplicate, surface-enumeration, symptom-verification, workflow-routing, task-artifact, and decision-only prompt instructions.
- Keep fast-mode planning guidance lean by replacing the verbose template with compact required sections and safety rules.
- Add a patch changeset describing the restored fast-planning prompt safety guidance.
Files changed:
.changeset/FN-7213-fast-planning-prompt-guidance.md | 7 ++
packages/core/src/agent-prompts.ts | 94 +++++++---------------
2 files changed, 36 insertions(+), 65 deletions(-)
Fusion-Task-Id: FN-7213
Fusion-Task-Lineage: 5b614864-1816-4b41-8933-65a601730aa7
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 17:18:52 -07:00
gsxdsm
2051516f8b
FN-7205: prefer live concurrency counts
...
Prefer live runtime stores for concurrency counters so dashboard totals match active agent enforcement.
- Prefer engine-manager task stores before default fallback stores when sourcing live running-agent counts.
- Count running agents from slim task lists across active lifecycle states instead of trusting stale in-progress queries.
- Add regressions for count normalization, default-project store precedence, and scoped semaphore limit changes.
- Add a patch changeset for the published Fusion CLI package.
Files changed:
.changeset/fn-7205-concurrency-counter-enforcement.md | 7 ++++
packages/core/src/__tests__/live-agent-count.test.ts | 18 ++++++++-
packages/dashboard/src/__tests__/server.test.ts | 44 ++++++++++++++++++++--
packages/dashboard/src/server.ts | 8 ++--
packages/engine/src/__tests__/concurrency.test.ts | 38 +++++++++++++++++++
5 files changed, 106 insertions(+), 9 deletions(-)
Fusion-Task-Id: FN-7205
Fusion-Task-Lineage: 957d6b2a-b7c4-4fd1-b83b-62f5cd51ebda
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 17:14:00 -07:00
gsxdsm
8eed09c126
FN-7211: fix image attachment MIME sniffing
...
Correct image attachment media types from bytes before sending image blocks to models.
- Add core image MIME sniffing for PNG, JPEG, GIF, and WEBP signatures.
- Use detected image bytes in task triage and dashboard chat attachment image blocks while preserving stored attachment metadata.
- Cover mismatched and unknown image bytes with core, triage, and chat attachment tests.
- Add a patch changeset for the published CLI package.
Files changed:
.changeset/fn-7211-webp-image-mime-sniff.md | 7 +++
packages/core/src/__tests__/image-mime.test.ts | 29 ++++++++++
packages/core/src/image-mime.ts | 50 +++++++++++++++++
packages/core/src/index.ts | 2 +
.../src/__tests__/chat-attachment-content.test.ts | 54 +++++++++++++++++--
packages/dashboard/src/chat-attachment-content.ts | 9 +++-
packages/engine/src/__tests__/triage.test.ts | 63 +++++++++++++++++-----
packages/engine/src/triage.ts | 8 ++-
8 files changed, 201 insertions(+), 21 deletions(-)
Fusion-Task-Id: FN-7211
Fusion-Task-Lineage: 22bfb812-15c4-4ff7-a281-87b25427561e
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 16:51:49 -07:00
gsxdsm
b2e1c3efc2
FN-7201: refresh plugin dashboard-view metadata from manifests
...
Refresh plugin dashboard navigation metadata from the current on-disk manifest so rebuilt plugins do not serve stale view details.
- Resolve the authoritative manifest path from plugin entry directories and package roots.
- Re-read and validate dashboardViews metadata before returning dashboard navigation entries, falling back only when the manifest cannot be used.
- Await refreshed dashboard-view metadata in the dashboard route and cover rebuild/removal cases with tests.
- Add a patch changeset for the published CLI package.
Files changed:
.../FN-7201-plugin-dashboard-view-refresh.md | 7 ++
packages/core/src/__tests__/plugin-loader.test.ts | 114 ++++++++++++++++++++-
packages/core/src/plugin-loader.ts | 94 ++++++++++++++++-
.../dashboard/src/__tests__/plugin-routes.test.ts | 42 +++++++-
packages/dashboard/src/routes.ts | 2 +-
5 files changed, 244 insertions(+), 15 deletions(-)
Fusion-Task-Id: FN-7201
Fusion-Task-Lineage: dbdd5575-1999-4c9c-93a4-25eb8f213e07
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 13:23:00 -07:00
gsxdsm
6cf6ad3bd2
FN-7202: add Quick Chat outside-click dismissal setting
...
Add a project setting that lets operators keep Quick Chat open until explicitly closed.
- Add quickChatCloseOnOutsideClick to project settings defaults, schema, types, and app settings hook.
- Wire the Quick Chat floating window to honor the setting while preserving default outside-click dismissal.
- Add a Settings > General toggle, documentation, release changeset, and coverage for defaults, settings loading, modal form, and floating-window behavior.
Files changed:
.../fn-7202-quick-chat-outside-click-setting.md | 7 +++
docs/dashboard-guide.md | 2 +-
docs/settings-reference.md | 1 +
.../core/src/__tests__/settings-defaults.test.ts | 13 +++++
packages/core/src/settings-schema.ts | 5 ++
packages/core/src/types.ts | 6 +++
packages/dashboard/app/App.tsx | 6 ++-
.../components/__tests__/FloatingWindow.test.tsx | 13 +++++
.../__tests__/SettingsModal.general.test.tsx | 8 +++
.../settings/sections/GeneralSection.tsx | 9 ++++
.../app/hooks/__tests__/useAppSettings.test.ts | 62 ++++++++++++++++++++++
packages/dashboard/app/hooks/useAppSettings.ts | 5 ++
12 files changed, 135 insertions(+), 2 deletions(-)
Fusion-Task-Id: FN-7202
Fusion-Task-Lineage: 4d52ea30-6475-404e-b1b9-28e8e581005c
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 13:17:33 -07:00
gsxdsm
8facc20eee
chore(release): v0.51.0
...
Version bump via changesets.
2026-06-28 12:49:55 -07:00
gsxdsm
d9a518c0b0
FN-7200: shorten fast planning prompt
...
Shortens fast-mode planning while preserving workflow seam routing.
- Replace the verbose built-in fast triage prompt with a lean speed-first PROMPT.md template.
- Assert the fast prompt remains much shorter than standard planning while retaining required gates.
- Cover selected workflow planning-fast overrides and built-in fallback behavior.
- Add a minor changeset for the published CLI package.
Files changed:
.changeset/FN-7200-fast-planning-prompt.md | 7 +
packages/core/src/__tests__/agent-prompts.test.ts | 11 +-
packages/core/src/agent-prompts.ts | 227 +++++----------------
.../triage-fast-mode-workflow-variant.test.ts | 35 +++-
4 files changed, 98 insertions(+), 182 deletions(-)
Fusion-Task-Id: FN-7200
Fusion-Task-Lineage: cbfd7ed8-163d-4ae5-8c25-873a1b4ed669
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 12:24:38 -07:00
gsxdsm
ac4c3b7a01
FN-7192: Document custom workflow capacity dispatch
...
Clarify the custom workflow migration boundary and lock dispatch behavior with tests.
- Document that pure-v1 custom workflows keep trait-less default columns for rollback compatibility.
- Show the v2 hold(capacity) and wip traits required for custom workflow capacity dispatch.
- Add core and engine regression coverage for pure-v1 stranding and authored-v2 release behavior.
Files changed:
docs/workflow-editor.md | 34 +++++
docs/workflow-steps.md | 40 ++++++
.../__tests__/custom-v1-workflow-dispatch.test.ts | 154 +++++++++++++++++++++
packages/engine/src/__tests__/hold-release.test.ts | 81 ++++++++++-
4 files changed, 306 insertions(+), 3 deletions(-)
Fusion-Task-Id: FN-7192
Fusion-Task-Lineage: ff7af258-c0cb-4b81-8919-9e076c3ac1df
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 09:59:57 -07:00
gsxdsm
fb509b1ed3
FN-7190: fix linear built-in workflow dispatch
...
Ensure selectable linear built-in workflows carry the default queue traits needed for Todo release.
- Convert linear built-in workflow IR to v2 with cloned canonical coding workflow columns.
- Guard synthesized linear built-ins so todo retains hold-capacity dispatch traits.
- Cover quick-fix, review-heavy, design, and compound-engineering Todo release behavior with regression tests.
- Document that selectable built-ins dispatch through capacity-released queue columns.
- Add a patch changeset for the published CLI package.
Files changed:
.changeset/fn-7190-linear-builtin-todo-hold.md | 7 ++
docs/workflow-editor.md | 2 +-
docs/workflow-steps.md | 5 +
.../core/src/__tests__/builtin-workflows.test.ts | 110 +++++++++++++++++++++
packages/core/src/builtin-workflows.ts | 46 ++++++---
packages/engine/src/__tests__/hold-release.test.ts | 28 ++++++
6 files changed, 181 insertions(+), 17 deletions(-)
Fusion-Task-Id: FN-7190
Fusion-Task-Lineage: a0a40365-4bd5-49a8-8ae4-5e313cf1d4e0
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 08:19:01 -07:00
gsxdsm
a0602d0d26
FN-7169: Open board tasks in the right sidebar
...
Add a default-off project setting that routes board task-card opens into the right dock when available.
- Add the openTasksInRightSidebar project setting, defaults, docs, and release changeset.
- Wire Appearance settings to save the toggle and refresh embedded settings closes.
- Render board-opened task detail inside the right dock with mobile/dock-inactive fallback to the full panel.
- Cover the setting defaults, board routing, right-dock task surface, and Appearance toggle with tests.
Files changed:
.changeset/fn-7169-open-tasks-in-right-sidebar.md | 7 ++
docs/dashboard-guide.md | 2 +
docs/settings-reference.md | 1 +
.../core/src/__tests__/settings-defaults.test.ts | 13 +++
packages/core/src/settings-schema.ts | 1 +
packages/core/src/types.ts | 7 ++
packages/dashboard/app/App.tsx | 29 +++++-
.../__tests__/App.openTasksInRightSidebar.test.ts | 16 +++
packages/dashboard/app/components/RightDock.tsx | 41 ++++++--
.../dashboard/app/components/SettingsModal.tsx | 1 +
.../app/components/__tests__/RightDock.test.tsx | 109 +++++++++++++++++++++
.../app/components/dashboard/MainContent.tsx | 13 ++-
.../__tests__/MainContent.graph-popout.test.tsx | 29 ++++++
.../dashboard/app/components/dashboard/types.ts | 2 +
.../settings/sections/AppearanceSection.tsx | 9 +-
.../sections/__tests__/AppearanceSection.test.tsx | 63 ++++++++++++
.../app/components/useRightDockController.tsx | 64 +++++++++++-
packages/dashboard/app/hooks/useAppSettings.ts | 5 +
packages/dashboard/vitest.config.ts | 1 +
19 files changed, 397 insertions(+), 16 deletions(-)
Fusion-Task-Id: FN-7169
Fusion-Task-Lineage: b135a1ac-b661-4774-9a04-91aaf5184394
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 02:17:25 -07:00
gsxdsm
dc54b615d4
FN-7182: pause auto-merge for manual pull requests
...
Manual pull requests now pause automatic merge processing until human action closes or merges the PR.
- Mark dashboard-created or linked pull requests with manual provenance and preserve it across PR refreshes and merges.
- Exclude tasks with manual open or draft PRs from automatic merge processing while preserving pipeline PR automation.
- Add regression coverage and document the manual PR handoff behavior.
Files changed:
.changeset/FN-7182-no-auto-merge-with-manual-pr.md | 7 ++
docs/architecture.md | 2 +-
docs/dashboard-guide.md | 1 +
packages/core/src/__tests__/task-helpers.test.ts | 49 ++++++++++++-
packages/core/src/__tests__/task-merge.test.ts | 60 +++++++++++++++-
packages/core/src/index.ts | 2 +-
packages/core/src/task-helpers.ts | 13 ++++
packages/core/src/task-merge.ts | 10 ++-
packages/core/src/types.ts | 6 ++
.../dashboard/src/__tests__/routes-auth.test.ts | 80 ++++++++++++++++++++++
.../dashboard/src/__tests__/routes-github.test.ts | 45 +++++++++++-
.../dashboard/src/routes/register-git-github.ts | 20 +++++-
12 files changed, 285 insertions(+), 10 deletions(-)
Fusion-Task-Id: FN-7182
Fusion-Task-Lineage: c415a9dc-43c1-4609-a032-367991e949a1
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 01:43:08 -07:00
gsxdsm
9c207fd286
FN-7180: add configurable PR metadata prompts
...
Add project-scoped guidance fields for AI-generated Create PR metadata.
- Store PR title and description prompt guidance as project settings only.
- Surface editable guidance textareas in Project Models settings.
- Append trimmed guidance to the PR metadata system prompt without changing defaults for blank values.
- Document the settings and add release notes/tests for persistence, UI, and prompt generation.
Files changed:
.changeset/fn-7180-pr-prompt-settings.md | 7 ++
docs/dashboard-guide.md | 1 +
docs/settings-reference.md | 2 +
.../core/src/__tests__/settings-defaults.test.ts | 11 ++-
packages/core/src/__tests__/store-settings.test.ts | 19 +++++
packages/core/src/settings-schema.ts | 2 +
packages/core/src/types.ts | 12 ++++
.../app/__tests__/settings-sections.test.tsx | 54 ++++++++++++++
.../dashboard/app/components/SettingsModal.tsx | 4 ++
.../settings/sections/ProjectModelsSection.tsx | 12 ++++
.../src/__tests__/pr-metadata-generator.test.ts | 84 ++++++++++++++++++++++
packages/dashboard/src/pr-metadata-generator.ts | 23 ++++--
12 files changed, 225 insertions(+), 6 deletions(-)
Fusion-Task-Id: FN-7180
Fusion-Task-Lineage: 9bdc42d5-ffd3-4208-b64a-96d142cc1dc8
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 00:28:13 -07:00