gsxdsm
843f365452
chore(release): v0.55.0
...
Version bump via changesets.
2026-07-03 13:10:20 -07:00
gsxdsm
dfb6e5270d
FN-7443: add bundled Linear import plugin
...
Add a plugin-owned Linear importer that creates Fusion tasks from Linear issues.
- Add the fusion-plugin-linear-import package with settings, Linear GraphQL client, import routes, tools, and dashboard UI.
- Bundle and register the Linear import plugin in the CLI and dashboard plugin view registry.
- Document bundled plugin authoring details and cover duplicate detection, routes, tools, UI, and packaging with tests.
Files changed:
.changeset/fn-7443-linear-import-plugin.md | 7 +
docs/PLUGIN_AUTHORING.md | 7 +
docs/task-management.md | 2 +
packages/cli/src/__tests__/bundle-output.test.ts | 22 ++
.../__tests__/bundled-plugin-install.test.ts | 29 +++
packages/cli/src/plugins/bundled-plugin-install.ts | 1 +
.../cli/src/plugins/staged-bundled-plugin-ids.ts | 1 +
packages/cli/tsup.config.ts | 8 +
.../__tests__/registerBundledPluginViews.test.tsx | 9 +-
.../app/plugins/registerBundledPluginViews.ts | 18 ++
.../app/types/plugin-dashboard-views.d.ts | 9 +
.../src/__tests__/routes-plugin-registry.test.ts | 5 +
.../runtime-plugin-alias-regression.test.ts | 12 +
packages/dashboard/src/registry-manifest.json | 10 +
packages/dashboard/vite.config.ts | 8 +
packages/dashboard/vitest.config.ts | 8 +
plugins/fusion-plugin-linear-import/README.md | 75 ++++++
plugins/fusion-plugin-linear-import/manifest.json | 48 ++++
plugins/fusion-plugin-linear-import/package.json | 38 +++
.../scripts/copy-css.mjs | 11 +
.../src/LinearImportView.css | 167 +++++++++++++
.../src/LinearImportView.tsx | 263 +++++++++++++++++++++
.../src/__tests__/LinearImportView.test.tsx | 124 ++++++++++
.../src/__tests__/import-linear.test.ts | 78 ++++++
.../src/__tests__/linear-client.test.ts | 81 +++++++
.../src/__tests__/routes.test.ts | 90 +++++++
.../src/__tests__/tools.test.ts | 79 +++++++
.../src/dashboard-interop.d.ts | 13 +
.../src/dashboard-view.tsx | 10 +
.../src/import-linear.ts | 154 ++++++++++++
plugins/fusion-plugin-linear-import/src/index.ts | 45 ++++
.../src/linear-client.ts | 247 +++++++++++++++++++
plugins/fusion-plugin-linear-import/src/routes.ts | 149 ++++++++++++
.../fusion-plugin-linear-import/src/settings.ts | 68 ++++++
plugins/fusion-plugin-linear-import/src/tools.ts | 138 +++++++++++
plugins/fusion-plugin-linear-import/tsconfig.json | 14 ++
.../fusion-plugin-linear-import/vitest.config.ts | 40 ++++
pnpm-lock.yaml | 40 ++++
pnpm-workspace.yaml | 1 +
39 files changed, 2128 insertions(+), 1 deletion(-)
Fusion-Task-Id: FN-7443
Fusion-Task-Lineage: a016a9d4-84a4-4a0b-b9b6-b9a2886da49a
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 14:31:16 -07:00
gsxdsm
abb1917999
FN-7419: add Cursor CLI binary path override
...
Add a global Cursor CLI binary path override that is validated before enabling or probing Cursor routing.
- Add global settings schema/types and API support for storing a trimmed Cursor CLI binary path override.
- Surface a Settings Authentication control to save, clear, and test the Cursor CLI binary path.
- Probe configured Cursor binaries before PATH fallbacks and expose diagnostics for status/routes.
- Cover settings, route, dashboard, and cursor runtime behavior with focused tests and documentation.
Files changed:
.changeset/fn-7419-cursor-cli-binary-path.md | 7 ++
docs/cursor-cli-contract.md | 33 ++++--
docs/settings-reference.md | 2 +
.../core/src/__tests__/cursor-cli-settings.test.ts | 34 ++++++
packages/core/src/settings-schema.ts | 6 +
packages/core/src/types.ts | 8 ++
packages/dashboard/app/api/legacy.ts | 17 ++-
.../app/components/CursorCliProviderCard.css | 37 +++++-
.../app/components/CursorCliProviderCard.tsx | 78 ++++++++++++-
.../__tests__/ModelOnboardingModal.test.tsx | 4 +
.../__tests__/SettingsModal.general.test.tsx | 2 +
.../__tests__/SettingsModal.models-auth.test.tsx | 75 ++++++++++++
.../SettingsModal.remote-notifications.test.tsx | 2 +
.../SettingsModal.scheduling-merge.test.tsx | 2 +
.../__tests__/SettingsModal.test-harness.tsx | 3 +
.../dashboard/src/__tests__/routes-auth.test.ts | 130 ++++++++++++++++++++-
.../dashboard/src/routes/register-auth-routes.ts | 69 +++++++++--
.../src/__tests__/probe.test.ts | 61 +++++++++-
.../src/__tests__/process-manager.test.ts | 10 ++
.../src/__tests__/provider.test.ts | 57 +++++++++
plugins/fusion-plugin-cursor-runtime/src/probe.ts | 39 +++++--
.../fusion-plugin-cursor-runtime/src/provider.ts | 15 ++-
plugins/fusion-plugin-cursor-runtime/src/types.ts | 3 +
23 files changed, 655 insertions(+), 39 deletions(-)
Fusion-Task-Id: FN-7419
Fusion-Task-Lineage: 2c192a37-a1db-41a9-99f5-a480ed311d9c
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 11:38:33 -07:00
gsxdsm
777f64750c
FN-7418: fix Cursor CLI Windows shim spawning
...
Fix Cursor runtime probes to execute Windows cmd and bat shims reliably while preserving diagnostics.
- Run shared Cursor CLI probe and discovery spawns through the shell only on Windows.
- Surface bounded spawn error details in unavailable Cursor probe reasons.
- Cover Windows shell spawning, failure diagnostics, probe, and process-manager behavior with tests.
- Document the Windows PATH shim invocation contract and add a patch changeset.
Files changed:
.changeset/fn-7418-cursor-cli-windows-cmd.md | 7 ++
docs/cursor-cli-contract.md | 17 ++++
.../src/__tests__/cli-spawn.test.ts | 103 +++++++++++++++++++++
.../src/__tests__/probe.test.ts | 44 ++++++++-
.../src/__tests__/process-manager.test.ts | 24 ++++-
.../fusion-plugin-cursor-runtime/src/cli-spawn.ts | 41 ++++++--
plugins/fusion-plugin-cursor-runtime/src/probe.ts | 14 ++-
7 files changed, 236 insertions(+), 14 deletions(-)
Fusion-Task-Id: FN-7418
Fusion-Task-Lineage: d689bea7-4676-4190-a60a-f85efab90aba
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 11:38:31 -07:00
gsxdsm
84a40dd82e
chore(release): v0.54.0
...
Version bump via changesets.
2026-07-02 00:22:58 -07:00
gsxdsm
abd596b700
fix: pack full desktop dependency closure + resolve bun/desktop plugin loading on Windows
...
Desktop "Local" mode crashed with ERR_MODULE_NOT_FOUND because electron-builder's
pnpm collector drops `deduped` subtrees, so engine's transitive closure
(@modelcontextprotocol/sdk, pi-ai provider SDKs, etc.) was never packed. Stage the
complete flat prod closure with `pnpm deploy --legacy --config.node-linker=hoisted`
and package it via `electron-builder --projectDir deploy`, bypassing the lossy
collector entirely.
Also make the dashboard-imported example plugins loadable under plain Node (the
Electron main runtime): cursor/droid/roadmap now expose compiled `dist` on the
`import` condition (keeping `source`→src for the bun CLI) and are built during the
desktop build. Add `source` conditions to paperclip/agent-browser/even-cards/
even-realities-glasses/whatsapp-chat so the bun `--conditions=source` Windows CLI
compile resolves them from source.
Validated on macOS: @fusion/core|engine|dashboard import cleanly from the staged
deploy; packing yields a complete 705-package asar; bun-windows-x64 cross-compiles
with all plugin dist removed.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-01 20:40:02 -07:00
gsxdsm
7488e0971f
chore(release): v0.53.1
...
Version bump via changesets.
2026-07-01 19:38:51 -07:00
gsxdsm
bb1de8a6bd
fix: add source export condition to hermes/openclaw plugins for bun Windows build
...
The CLI bun `--compile --conditions=source` build could not resolve
@fusion-plugin-examples/hermes-runtime and openclaw-runtime (statically imported
by dashboard routes.ts): those plugins lacked a `source` export condition and
fell through to `import`->dist/index.js, absent on the Windows runner. Add
`"source": "./src/index.ts"` (matching core/dashboard/engine/plugin-sdk) so bun
bundles their TS source directly, independent of dist.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-01 19:34:11 -07:00
gsxdsm
8bb18d9d61
chore(release): v0.53.0
...
Version bump via changesets.
2026-07-01 18:31:44 -07:00
gsxdsm
20e42c65d1
FN-7400: enforce JSON protocol for CE debug launches
...
Prevent Compound Engineering Debug stages from failing launch when skill guidance would otherwise produce prose.
- Prioritize the interactive JSON question/complete protocol over loaded skill instructions in CE stage prompts.
- Document CE Debug dashboard protocol requirements in the bundled debug skill.
- Add regression coverage for Debug stage startup, malformed-output errors, and session list/delete handling.
- Add a patch changeset for the published Fusion package.
Files changed:
.changeset/fn-7400-compound-debug-stage-json.md | 7 ++
.../src/__tests__/session-routes.test.ts | 89 +++++++++++++++++++++-
.../src/__tests__/stage-launch-guard.test.ts | 78 +++++++++++++++++++
.../src/session/orchestrator.ts | 7 +-
.../src/skills/ce-debug/SKILL.md | 5 ++
5 files changed, 184 insertions(+), 2 deletions(-)
Fusion-Task-Id: FN-7400
Fusion-Task-Lineage: 7d37660b-1073-489f-8115-20f07c8b05a4
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-01 15:39:34 -07:00
gsxdsm
f998fe3ffc
FN-7397: pass plugin context to lifecycle hooks
...
Ensure task lifecycle plugin hooks receive a PluginContext when fired through runtime event bridges.
- Append the plugin context for task-created, task-moved, and task-completed hooks when callers only provide raw lifecycle arguments.
- Preserve existing explicit-context hook calls and add coverage for loader and runner lifecycle dispatch paths.
- Cover Compound Engineering sync completion handling so taskStore is available in onTaskCompleted.
Files changed:
.changeset/fn-7397-plugin-hook-context.md | 7 +++
packages/core/src/__tests__/plugin-loader.test.ts | 52 +++++++++++++++++++++-
packages/core/src/plugin-loader.ts | 34 +++++++++++++-
.../engine/src/__tests__/plugin-runner.test.ts | 25 ++++++++++-
.../src/__tests__/sync.test.ts | 29 +++++++++++-
5 files changed, 141 insertions(+), 6 deletions(-)
Fusion-Task-Id: FN-7397
Fusion-Task-Lineage: 7661714c-cf2a-4f4d-bec1-fc6bc11c0613
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-01 15:39:34 -07:00
Phil Larson
a8a2673429
fix: derive CE question drift option type
2026-07-01 10:38:30 -07:00
Phil Larson
80b2dafdf7
fix: limit CE question-id drift tolerance to recovery
2026-07-01 10:00:20 -07:00
Phil Larson
ad8db59374
fix: tolerate recovered CE question ids
2026-07-01 09:41:20 -07:00
gsxdsm
d4ce6f9319
chore(release): v0.52.0
...
Version bump via changesets.
2026-07-01 00:47:09 -07:00
Phil Larson
228554d125
fix(compound-engineering): clear artifact project scope drift
2026-06-30 22:03:41 -07:00
gsxdsm
d7f26bb6cf
fix(FN-7219): stabilize compound engineering workflow
2026-06-29 16:42:11 -07:00
gsxdsm
8facc20eee
chore(release): v0.51.0
...
Version bump via changesets.
2026-06-28 12:49:55 -07:00
gsxdsm
581f85013a
FN-7198: pin Compound Engineering sidebar icon
...
Keep Compound Engineering navigation surfaces on the Boxes glyph even when stale plugin metadata is served.
- Route desktop and mobile plugin nav entries through a dashboard-view icon resolver.
- Pin Compound Engineering plugin nav icons to Boxes by plugin id while preserving normal icon fallback behavior for other plugins.
- Align manifest/header icon invariants and add regression coverage for stale Sparkles/Grid3X3 metadata.
- Add a patch changeset for the published Fusion package.
Files changed:
.changeset/FN-7198-compound-engineering-icon-match.md | 7 +++++++
packages/dashboard/app/components/LeftSidebarNav.tsx | 4 ++--
packages/dashboard/app/components/MobileNavBar.tsx | 6 +++---
.../app/components/__tests__/LeftSidebarNav.test.tsx | 6 +++++-
.../app/components/__tests__/MobileNavBar.test.tsx | 10 +++++++---
.../app/components/__tests__/pluginNavIcon.test.ts | 10 +++++++++-
packages/dashboard/app/components/pluginNavIcon.tsx | 12 ++++++++++++
.../src/__tests__/manifest.test.ts | 14 ++++++++++++++
.../src/dashboard/CompoundEngineeringView.tsx | 3 ++-
9 files changed, 61 insertions(+), 11 deletions(-)
Fusion-Task-Id: FN-7198
Fusion-Task-Lineage: e910bb82-55a7-4c81-a4fe-947a07b3e308
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 12:10:10 -07:00
gsxdsm
c48dcae331
FN-7197: assign Compound Engineering a distinct sidebar icon
...
Give Compound Engineering its own Boxes glyph across plugin navigation and headers.
- Register the Boxes lucide icon for plugin navigation so desktop and mobile sidebars can resolve it.
- Switch the Compound Engineering manifest, plugin definition, and view header from Sparkles to Boxes.
- Update navigation and manifest tests plus the release changeset for the published CLI bundle.
Files changed:
.changeset/FN-7197-compound-engineering-icon.md | 7 +++++++
.../app/components/__tests__/MobileNavBar.test.tsx | 2 +-
.../app/components/__tests__/pluginNavIcon.test.ts | 14 ++++++++++++++
packages/dashboard/app/components/pluginNavIcon.tsx | 7 ++++++-
plugins/fusion-plugin-compound-engineering/manifest.json | 2 +-
.../src/__tests__/manifest.test.ts | 2 +-
.../src/dashboard/CompoundEngineeringView.tsx | 12 +++++++++---
plugins/fusion-plugin-compound-engineering/src/index.ts | 2 +-
8 files changed, 40 insertions(+), 8 deletions(-)
Fusion-Task-Id: FN-7197
Fusion-Task-Lineage: 03c67bfa-3e28-4a2a-b15e-b2c3576588c1
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 10:06:43 -07:00
gsxdsm
631e8fc675
FN-7159: add canonical CE HTML checklist repair
...
Enable CE HTML document review to safely canonicalize malformed checklists.
- Add a DOM-safe checklist-repair operation that rewrites provable markdown-marker and checkbox list shapes into canonical CE checklist HTML.
- Refuse ambiguous, nested, state-bearing, or protected checklist-like markup while preserving report-only fallback semantics.
- Expand HTML mutation and CE doc-review tests plus operator docs and rendering guidance for the canonical checklist contract.
Files changed:
.changeset/fn-7159-canonical-html-checklist.md | 7 +
docs/workflow-editor.md | 2 +-
docs/workflow-steps.md | 5 +-
.../src/__tests__/ce-doc-review-html-mode.test.ts | 6 +-
.../src/artifacts/__tests__/html-mutation.test.ts | 135 ++++++++++++++-
.../src/artifacts/html-mutation.ts | 186 ++++++++++++++++++++-
.../ce-brainstorm/references/html-rendering.md | 31 ++++
.../src/skills/ce-doc-review/SKILL.md | 13 +-
.../skills/ce-ideate/references/html-rendering.md | 31 ++++
.../skills/ce-plan/references/html-rendering.md | 31 ++++
10 files changed, 436 insertions(+), 11 deletions(-)
Fusion-Task-Id: FN-7159
Fusion-Task-Lineage: bbde7003-2942-4363-98d5-53bc3a5976b8
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 09:20:17 -07:00
gsxdsm
68d2d41f37
FN-7194: verify Compound Engineering workflow skills
...
Add regression coverage proving the built-in Compound Engineering workflow resolves and installs every referenced skill.
- Collect skill-bearing nodes from the built-in Compound Engineering workflow, including optional-group template children.\n- Assert ce-plan, ce-work, ce-code-review, and follow-on workflow skills map to bundled SKILL.md files.\n- Verify bundled CE skill installation places each workflow-named skill on the discovery root used by sessions.\n\nFiles changed:\n .../__tests__/ce-workflow-skill-alignment.test.ts | 106 +++++++++++++++++++++\n 1 file changed, 106 insertions(+)
Fusion-Task-Id: FN-7194
Fusion-Task-Lineage: 8461ebae-1484-4e77-a9ae-e18531e617b5
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 09:12:13 -07:00
gsxdsm
fecb27e768
FN-7149: add DOM-safe CE HTML mutation
...
Add a parse5-backed mutation path for CE HTML artifacts with docs and validation coverage.
- Add safe CE HTML mutation helpers for open-question append, heading repair, whitespace normalization, visible-text replacement, atomic writes, and rollback on validation failure.
- Cover DOM mutation behavior and ce-doc-review HTML-mode expectations with focused tests.
- Update CE skill/reference guidance and workflow docs to require DOM-safe artifact edits with report-only fallback.
- Add parse5 to the compound engineering plugin and record the published CLI changeset.
Files changed:
.changeset/fn-7149-dom-safe-html-mutation.md | 7 +
docs/workflow-editor.md | 2 +-
docs/workflow-steps.md | 10 +-
.../package.json | 1 +
.../src/__tests__/ce-doc-review-html-mode.test.ts | 38 +-
.../src/artifacts/__tests__/html-mutation.test.ts | 228 +++++++++
.../src/artifacts/html-mutation.ts | 519 +++++++++++++++++++++
.../src/skills/ce-brainstorm/references/handoff.md | 12 +-
.../ce-brainstorm/references/html-rendering.md | 12 +-
.../src/skills/ce-doc-review/SKILL.md | 20 +-
.../skills/ce-ideate/references/html-rendering.md | 12 +-
.../src/skills/ce-plan/SKILL.md | 18 +-
.../skills/ce-plan/references/html-rendering.md | 16 +-
.../src/skills/ce-plan/references/plan-handoff.md | 24 +-
pnpm-lock.yaml | 3 +
15 files changed, 853 insertions(+), 69 deletions(-)
Fusion-Task-Id: FN-7149
Fusion-Task-Lineage: eaf84a8b-a52b-487d-9517-22e4499e8af7
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-28 08:03:32 -07:00
gsxdsm
7ebf58ee3b
FN-7147: add report-only HTML CE doc review
...
Enable CE document review to inspect HTML artifacts without mutating generated plans.
- Expand ce-doc-review guidance to accept markdown and HTML plan artifacts, keeping autofix/write-back only for markdown.
- Update ce-plan and brainstorm handoffs so HTML plans route through report-only findings instead of skipped-review envelopes.
- Add regression coverage that rejects legacy HTML-skip wording across the edited CE review surfaces.
- Document the compound-engineering workflow behavior and add the release changeset.
Files changed:
.changeset/fn-7147-html-aware-ce-doc-review.md | 7 ++
docs/workflow-editor.md | 2 +-
docs/workflow-steps.md | 4 +-
.../src/__tests__/ce-doc-review-html-mode.test.ts | 81 ++++++++++++++++++++++
.../src/skills/ce-brainstorm/references/handoff.md | 26 ++++---
.../ce-brainstorm/references/html-rendering.md | 20 +++---
.../src/skills/ce-doc-review/SKILL.md | 37 ++++++----
.../skills/ce-ideate/references/html-rendering.md | 20 +++---
.../src/skills/ce-plan/SKILL.md | 25 ++++---
.../skills/ce-plan/references/html-rendering.md | 18 ++---
.../src/skills/ce-plan/references/plan-handoff.md | 37 +++++-----
11 files changed, 196 insertions(+), 81 deletions(-)
Fusion-Task-Id: FN-7147
Fusion-Task-Lineage: 1f710dd9-ced7-4026-bc74-55a4160cb1bd
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-27 18:33:02 -07:00
gsxdsm
729bd5e5f9
chore(release): v0.50.0
...
Version bump via changesets.
2026-06-27 18:10:19 -07:00
gsxdsm
d4137f1abc
FN-7144: complete compound engineering workflow audit
...
Adds the missing CE document-review stage and tightens workflow docs, compilation, and tests.
- Add optional advisory ce-doc-review support to the compound engineering built-in workflow.
- Register and document the compound-engineering ce-doc-review skill for markdown CE plan review.
- Preserve optional-group workflow semantics when compiling legacy steps and cover the CE workflow seams with tests.
- Update operator docs and add a published package changeset.
Files changed:
.changeset/fn-7144-compound-engineering-audit.md | 7 +++
docs/workflow-editor.md | 2 +-
docs/workflow-steps.md | 4 +-
.../core/src/__tests__/builtin-workflows.test.ts | 29 +++++++++-
packages/core/src/builtin-workflows.ts | 62 ++++++++++++++++++++--
packages/core/src/workflow-compiler.ts | 3 +-
.../__tests__/ce-workflow-step-conventions.test.ts | 8 +++
.../src/__tests__/interpreter-merge-seam.test.ts | 3 +-
.../src/__tests__/manifest.test.ts | 1 +
.../src/skills.ts | 13 +++++
.../src/skills/ce-doc-review/SKILL.md | 54 +++++++++++++++++++
11 files changed, 175 insertions(+), 11 deletions(-)
Fusion-Task-Id: FN-7144
Fusion-Task-Lineage: bedbfad4-d6e8-489e-a555-803991a1ad54
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-27 17:40:42 -07:00
gsxdsm
04f8fe5d59
FN-7107: load CE stage skills for interactive sessions
...
Ensure Compound Engineering stages request and expose their registered skills when launching interactive sessions.
- Add plugin-local skill resolution checks that warn when a stage skill install is missing.
- Pass a stable additional skill path and requested stage skill into every CE interactive session.
- Add coverage for stage skill loading options and update skill reachability expectations.
Files changed:
...d-skills-not-loading-in-interactive-sessions.md | 1 +
.../src/__tests__/skill-reachability.test.ts | 71 +++++++++++++---------
.../src/__tests__/stage-skill-loading.test.ts | 69 +++++++++++++++++++++
.../src/session/orchestrator.ts | 48 ++++++++++++++-
4 files changed, 157 insertions(+), 32 deletions(-)
Fusion-Task-Id: FN-7107
Fusion-Task-Lineage: 0504e9ba-c2e7-4317-9c90-55693baf8170
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-27 09:28:30 -07:00
gsxdsm
9843f2e772
FN-7104: Align ce-brainstorm durable artifact references
...
Keep bundled ce-brainstorm guidance aligned with docs/plans as the durable planning artifact.
- Update the visual probe reference to name docs/plans as the durable artifact.
- Add a recursive skill-content guard that prevents docs/brainstorms from being described as new or durable output.
- Assert legacy docs/brainstorms wording remains limited to ce-plan inputs.
Files changed:
.../__tests__/skill-content-alias-guard.test.ts | 85 ++++++++++++++++++++++
.../ce-brainstorm/references/visual-probes.md | 2 +-
2 files changed, 86 insertions(+), 1 deletion(-)
Fusion-Task-Id: FN-7104
Fusion-Task-Lineage: dd26a511-816d-479c-99ac-7cfec2b96bd4
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-27 09:28:30 -07:00
gsxdsm
b69dd8eb14
FN-7103: alias brainstorm artifacts to unified plans
...
Compound Engineering now treats brainstorm output as the requirements-only form of unified plan artifacts.
- Point the brainstorm stage at docs/plans while keeping the existing stage and skill identifiers for compatibility.
- Surface CE plan frontmatter metadata during artifact discovery and reading.
- Harden CE artifact discovery against symlink escapes for conventional artifact paths.
- Update docs, tests, and changeset coverage for the unified brainstorm/plan artifact flow.
Files changed:
.changeset/fn-7103-ce-plan-alias.md | 7 ++
docs/plugins/compound-engineering.md | 21 +++-
.../fusion-plugin-compound-engineering/README.md | 36 ++++--
.../orchestrator-interrupt-resume.test.ts | 8 +-
.../src/__tests__/session-store.test.ts | 38 ++++++
.../src/__tests__/stage-registry.test.ts | 18 +++
.../src/__tests__/sync.test.ts | 36 +++++-
.../src/artifacts/__tests__/discovery.test.ts | 133 +++++++++++++++++++-
.../src/artifacts/discovery.ts | 136 +++++++++++++++++++--
.../src/session/stage-registry.ts | 10 +-
.../src/sync/reconciler.ts | 2 +-
11 files changed, 413 insertions(+), 32 deletions(-)
Fusion-Task-Id: FN-7103
Fusion-Task-Lineage: 284a5c5c-40f7-44b2-8e3e-1de671dde36a
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-27 09:28:30 -07:00
gsxdsm
5899dca4f8
FN-7094: update Compound Engineering plugin to v3.15.0
...
Update the Compound Engineering plugin content and installers to the upstream v3.15.0 release.
- Refresh bundled Compound Engineering agents, skills, references, and helper scripts from upstream v3.15.0.
- Add upstream provenance metadata and regression coverage for provenance, agent installation, and skill installation behavior.
- Update plugin registration and installer logic to expose the expanded agent and skill catalog.
Files changed:
.../fusion-plugin-compound-engineering/README.md | 18 +-
.../src/__tests__/agent-installation.test.ts | 16 +-
.../src/__tests__/skill-installation.test.ts | 19 +-
.../src/__tests__/upstream-provenance.test.ts | 62 ++
.../src/agent-installation.ts | 66 +-
.../src/agents/ce-adversarial-document-reviewer.md | 12 +-
.../src/agents/ce-adversarial-reviewer.md | 12 +-
.../agents/ce-agent-native-planning-strategist.md | 71 ++
.../src/agents/ce-best-practices-researcher.md | 23 +-
.../src/agents/ce-data-integrity-guardian.md | 4 +
.../src/agents/ce-deployment-verification-agent.md | 4 +
.../src/agents/ce-figma-design-sync.md | 4 +-
.../src/agents/ce-framework-docs-researcher.md | 4 +
.../src/agents/ce-git-history-analyzer.md | 2 +-
.../src/agents/ce-issue-intelligence-analyst.md | 9 +-
.../src/agents/ce-learnings-researcher.md | 16 +-
.../agents/ce-pattern-recognition-specialist.md | 4 +
.../src/agents/ce-performance-oracle.md | 4 +
.../src/agents/ce-pr-comment-resolver.md | 120 +--
.../src/agents/ce-product-lens-reviewer.md | 2 +-
.../src/agents/ce-project-standards-reviewer.md | 8 +-
.../src/agents/ce-repo-research-analyst.md | 6 +-
.../src/agents/ce-scope-guardian-reviewer.md | 6 +-
.../src/agents/ce-security-lens-reviewer.md | 2 +-
.../src/agents/ce-security-sentinel.md | 4 +
.../src/agents/ce-session-historian.md | 14 +-
.../src/agents/ce-slack-researcher.md | 25 +-
.../src/agents/ce-web-researcher.md | 13 +-
.../src/index.ts | 15 +-
.../src/skill-installation.ts | 69 +-
.../src/skills/ce-brainstorm/SKILL.md | 125 ++-
.../references/agents/slack-researcher.md | 127 +++
.../references/brainstorm-sections.md | 161 +++-
.../src/skills/ce-brainstorm/references/handoff.md | 114 ++-
.../ce-brainstorm/references/html-rendering.md | 253 ++++--
.../ce-brainstorm/references/markdown-rendering.md | 55 +-
.../ce-brainstorm/references/synthesis-summary.md | 30 +-
.../references/universal-brainstorming.md | 14 +-
.../ce-brainstorm/references/visual-probes.md | 128 +++
.../ce-brainstorm/scripts/visual-probe-server.js | 419 ++++++++++
.../src/skills/ce-code-review/SKILL.md | 921 ++++++++++-----------
.../references/action-class-rubric.md | 26 +
.../references/cross-model-review.md | 63 ++
.../skills/ce-code-review/references/diff-scope.md | 12 +-
.../ce-code-review/references/findings-schema.json | 26 +-
.../ce-code-review/references/persona-catalog.md | 54 +-
.../references/personas/adversarial-reviewer.md | 102 +++
.../references/personas/agent-native-reviewer.md | 173 ++++
.../references/personas/api-contract-reviewer.md | 43 +
.../references/personas/correctness-reviewer.md | 43 +
.../references/personas/data-migration-reviewer.md | 111 +++
.../personas/deployment-verification-agent.md | 157 ++++
.../personas/julik-frontend-races-reviewer.md | 44 +
.../references/personas/learnings-researcher.md | 247 ++++++
.../personas/maintainability-reviewer.md | 68 ++
.../references/personas/performance-reviewer.md | 45 +
.../personas/previous-comments-reviewer.md | 59 ++
.../personas/project-standards-reviewer.md | 75 ++
.../references/personas/reliability-reviewer.md | 43 +
.../references/personas/security-reviewer.md | 45 +
.../references/personas/swift-ios-reviewer.md | 99 +++
.../references/personas/testing-reviewer.md | 43 +
.../references/review-output-template.md | 117 +--
.../ce-code-review/references/subagent-template.md | 51 +-
.../references/validator-template.md | 6 +-
.../scripts/cross-model-adversarial-review.sh | 218 +++++
.../src/skills/ce-commit-push-pr/SKILL.md | 19 +-
.../references/pr-description-writing.md | 2 +-
.../src/skills/ce-commit/SKILL.md | 4 +-
.../src/skills/ce-compound/SKILL.md | 164 +++-
.../references/agents/best-practices-researcher.md | 115 +++
.../references/agents/data-integrity-guardian.md | 68 ++
.../references/agents/framework-docs-researcher.md | 93 +++
.../agents/pattern-recognition-specialist.md | 55 ++
.../references/agents/performance-oracle.md | 108 +++
.../references/agents/security-sentinel.md | 91 ++
.../references/agents/session-historian.md | 83 ++
.../scripts/session-history/discover-sessions.sh | 130 +++
.../scripts/session-history/extract-errors.py | 254 ++++++
.../scripts/session-history/extract-metadata.py | 456 ++++++++++
.../scripts/session-history/extract-skeleton.py | 570 +++++++++++++
.../src/skills/ce-debug/SKILL.md | 286 +++++--
.../skills/ce-debug/references/anti-patterns.md | 91 ++
.../skills/ce-debug/references/defense-in-depth.md | 35 +
.../references/investigation-techniques.md | 374 +++++++++
.../src/skills/ce-ideate/SKILL.md | 223 ++---
.../agents/issue-intelligence-analyst.md | 200 +++++
.../references/agents/learnings-researcher.md | 247 ++++++
.../references/agents/slack-researcher.md | 127 +++
.../ce-ideate/references/agents/web-researcher.md | 121 +++
.../ce-ideate/references/divergent-ideation.md | 89 ++
.../skills/ce-ideate/references/html-rendering.md | 631 ++++++++++++++
.../ce-ideate/references/ideation-sections.md | 191 +++++
.../ce-ideate/references/markdown-rendering.md | 236 ++++++
.../ce-ideate/references/post-ideation-workflow.md | 246 ++----
.../ce-ideate/references/universal-ideation.md | 24 +-
.../src/skills/ce-plan/SKILL.md | 171 ++--
.../agents/agent-native-planning-strategist.md | 62 ++
.../references/agents/architecture-strategist.md | 46 +
.../references/agents/best-practices-researcher.md | 114 +++
.../references/agents/data-integrity-guardian.md | 68 ++
.../references/agents/data-migration-reviewer.md | 103 +++
.../agents/deployment-verification-agent.md | 157 ++++
.../references/agents/framework-docs-researcher.md | 93 +++
.../references/agents/git-history-analyzer.md | 40 +
.../references/agents/learnings-researcher.md | 247 ++++++
.../agents/pattern-recognition-specialist.md | 55 ++
.../references/agents/performance-oracle.md | 108 +++
.../references/agents/repo-research-analyst.md | 256 ++++++
.../ce-plan/references/agents/security-sentinel.md | 91 ++
.../ce-plan/references/agents/slack-researcher.md | 127 +++
.../references/agents/spec-flow-analyzer.md | 80 ++
.../ce-plan/references/agents/web-researcher.md | 121 +++
.../skills/ce-plan/references/approach-altitude.md | 55 ++
.../ce-plan/references/deepening-workflow.md | 68 +-
.../skills/ce-plan/references/html-rendering.md | 253 ++++--
.../ce-plan/references/markdown-rendering.md | 55 +-
.../src/skills/ce-plan/references/plan-handoff.md | 81 +-
.../src/skills/ce-plan/references/plan-sections.md | 231 +++++-
.../skills/ce-plan/references/synthesis-summary.md | 28 +-
.../ce-plan/references/universal-planning.md | 9 +-
.../src/skills/ce-resolve-pr-feedback/SKILL.md | 12 +-
.../references/agents/pr-comment-resolver.md | 56 ++
.../references/evaluation-rubric.md | 106 +++
.../ce-resolve-pr-feedback/references/full-mode.md | 207 ++---
.../references/targeted-mode.md | 24 +-
.../ce-resolve-pr-feedback/scripts/get-pr-comments | 13 +-
.../scripts/get-thread-for-comment | 11 +-
.../src/skills/ce-strategy/SKILL.md | 4 +-
.../src/skills/ce-work/SKILL.md | 191 +++--
.../ce-work/references/agents/figma-design-sync.md | 165 ++++
.../skills/ce-work/references/execution-engines.md | 85 ++
.../ce-work/references/non-code-execution.md | 23 +
.../ce-work/references/review-findings-followup.md | 104 +++
.../skills/ce-work/references/shipping-workflow.md | 89 +-
.../src/skills/ce-work/references/tracker-defer.md | 16 +-
.../src/upstream-provenance.ts | 15 +
137 files changed, 12130 insertions(+), 1994 deletions(-)
Fusion-Task-Id: FN-7094
Fusion-Task-Lineage: 85df8f84-86f1-496a-953a-e4cf5a9da596
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-06-27 09:28:30 -07:00
gsxdsm
fa4ee607b7
chore(release): v0.49.0
...
Version bump via changesets.
2026-06-26 12:06:05 -07:00
gsxdsm
079c428af9
chore(release): v0.48.0
...
Version bump via changesets.
2026-06-24 23:56:23 -07:00
gsxdsm
2ba81c25b4
chore(release): v0.47.0
...
Version bump via changesets.
2026-06-24 19:32:59 -07:00
gsxdsm
bac7049822
chore(release): v0.46.0
...
Version bump via changesets.
2026-06-23 12:27:50 -07:00
gsxdsm
b599b6ab41
chore(release): v0.45.0
...
Version bump via changesets.
2026-06-23 01:07:59 -07:00
gsxdsm
f9043d733e
fix(dashboard): polish workflow and chrome defaults
2026-06-22 19:48:50 -07:00
gsxdsm
4fd8d444fb
fix(dashboard): polish app chrome and workflow defaults
2026-06-22 18:21:06 -07:00
gsxdsm
a1cac3a6a3
fix(dashboard): replace quick chat with modal chat
2026-06-22 15:23:43 -07:00
gsxdsm
ee9c8ab7d5
fix(dashboard): align view headers and pane spacing
2026-06-22 12:43:32 -07:00
gsxdsm
44257dd8ea
fix(dependency-graph): graph centers on first paint without a manual drag
...
Root cause: fitToGraph's clampPan clamped against graphBoundsRef, which a separate effect populated from NORMALIZED bounds — on first paint the ref was still {0,0,0,0}, so pan clamped to +/-viewport (off-center) and only a manual drag re-ran clampPan against the committed bounds. Fit now runs on normalizedPositions (fit-space == render-space == clamp-space), after the setGraphBounds effect, deferred a double-rAF so the committed bounds are live before clampPan; ResizeObserver still drives the hidden->visible 0->N fit. Manual-layout opt-out preserved.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 11:01:23 -07:00
gsxdsm
4626f8e7fe
feat(dashboard): list-view count/border cleanup, overview buttons match Stop AI Engine, center graph on load
...
- List view: remove the 'X of Y tasks' count from the desktop sidebar toolbar and the border between the controls row and the quick-add box (mobile count kept). Count-display tests now verify the filter via rendered rows.
- Command Center Overview: View Board / View Agents are btn btn-secondary (taller, centered) matching the Stop AI Engine button.
- Dependency graph: fit/center on load — the initial fit ran before the viewport was measured + before nodes were positioned (async), and never re-fit. Now fits only when fittable (nodes + measured viewport) and re-fits when the node set changes (covers async load + re-entering the view).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 09:59:26 -07:00
gsxdsm
4850e4309e
fix(dashboard): apply code-review fixes + live UI tweaks
...
Code review (8 reviewers) fixes:
- P1: embedded board task-detail now passes onRequestClose so delete/merge/retry dismiss the panel (no ghost task).
- P1: RightDock + TerminalModal drag handlers add pointercancel + unmount teardown (no leaked document listeners / rAF / stuck userSelect); remove dead onOpenChange prop.
- Planning slot DOM-poll interval now caps (self-cancels on mobile); heartbeat slider persist debounced + mounted-guarded.
- Cleanup: remove dead ViewHeader-migration CSS (Skills/Insights), extract shared GithubIcon, move Activity Log embedded CSS to ActivityLogModal.css, FNXC date-format fixes, AGENTS lazy-view note.
- Update stale RightDock roster tests + LeftSidebarNav 'Compound Eng' test to current behavior.
Live UI tweaks:
- Default load lands on board, never the Command Center Dashboard.
- View Board/View Agents moved to the Command Center Overview tab (under the live-activity strip).
- Heartbeat card full-width with spaced, wrapping controls.
- Dev Server panel scrolls in the dock; ChatView right-pane title takes the full line.
- Files pop-out renders deterministic left-right two-pane.
- Mailbox list pane narrower + narrow by default; Add Goal button height matches the Compound stage button; Memory Working-Memory tab no longer overlaps; Skills view fills full width.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 03:57:10 -07:00
gsxdsm
fe98a2a699
feat(compound-plugin): use shared ViewHeader for a consistent view header
...
Compound Engineering plugin view now renders the dashboard's shared ViewHeader (Sparkles icon + title) so it matches the other main-content views. Expose ViewHeader via the dashboard exports map; resolve it in the plugin via an ambient interop declaration (no host runtime dependency). Tests updated (plugin suite green).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-22 03:34:16 -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
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
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
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
68c4053a85
fix(droid): stop model-discovery process storm; read catalog from droid exec --help
...
discoverDroidModels ran `droid models`/`droid model list`, which aren't real
droid commands — they parse as a prompt and launch a persistent
`droid exec --stream-jsonrpc` agent session that never exits, leaking a process
per call. The dashboard reloads the droid extension on every chat-send, so these
piled into dozens of orphaned `droid` processes.
Switch discovery to parse `droid exec --help` (lists Available + Custom models,
exits cleanly) via new parseDroidModelsFromHelp, and add a SIGKILL-on-timeout
guard so a wedged spawn can never leak. Verified against the real binary: 46
models, 0 leaked processes.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-21 03:40:56 -07:00
gsxdsm
40cea655b8
Merge main into validator behavioral verification
...
Resolve conflicts from main's analytics schema additions (plugin
activations, per-model token buckets) against the PR's contract-assertion
type column:
- db.ts: renumber behavioral-verification migration 124 -> 126, bump
SCHEMA_VERSION to 126 so it follows main's migrations 124/125
- core/roadmap tests: adopt main's SCHEMA_VERSION-constant assertions
instead of stale literal 124
- test-quarantine.json: keep all four quarantine entries from both sides
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-21 00:22:19 -07:00
gsxdsm
37c4cfa56e
FN-6808: handle AI CLI probe spawn failures
...
Resolve synchronous AI CLI probe launch failures as unavailable auth states.
- Catch synchronous spawn failures in Claude and Droid probe helpers so fire-and-forget validation paths do not reject.
- Return unavailable/unauthenticated sentinels for Droid model discovery and CLI presence/auth checks.
- Add regression coverage for Claude and Droid presence/auth probes plus a patch changeset.
Files changed:
.../fn-6808-cli-probe-unhandled-rejection.md | 5 ++++
.../src/__tests__/process-manager.test.ts | 25 ++++++++++++++++++++
.../src/__tests__/process-manager.test.ts | 25 ++++++++++++++++++++
packages/pi-claude-cli/src/process-manager.ts | 12 +++++++++-
.../src/process-manager.ts | 27 +++++++++++++++++++---
5 files changed, 90 insertions(+), 4 deletions(-)
Fusion-Task-Id: FN-6808
Fusion-Task-Lineage: 79702ef2-e116-4313-a557-da17a6888c30
2026-06-20 21:32:43 -07:00