a3dda8eaffc8cc33f21b6c1927fbbd3089978975
11 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
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> |
||
|
|
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> |
||
|
|
05fe6e5e0c |
FN-6575: make CE stage gating opt-out
Make Compound Engineering stage launch gating opt-out so registered stages like debug remain launchable by default. - Replace enabledStages settings schema with disabledStages defaults and docs. - Derive launchable stages from the live registry minus explicit disabled opt-outs. - Update orchestrator gating, exports, tests, and plugin docs for the new setting. - Add a patch changeset for the Compound Engineering plugin behavior fix. Files changed: .changeset/fn-6575-ce-stage-optout.md | 5 ++++ docs/plugins/compound-engineering.md | 4 +-- .../fusion-plugin-compound-engineering/README.md | 9 ++++-- .../manifest.json | 8 +++--- .../src/__tests__/manifest.test.ts | 2 +- .../src/__tests__/settings.test.ts | 33 +++++++++++++--------- .../src/__tests__/skill-wiring.test.ts | 21 +++++++++++++- .../src/index.ts | 1 + .../src/session/orchestrator.ts | 9 ++++-- .../src/settings.ts | 33 ++++++++++++++-------- 10 files changed, 87 insertions(+), 38 deletions(-) Fusion-Task-Id: FN-6575 Fusion-Task-Lineage: 903732d7-4ffb-4c8f-ba3e-e517d88bc644 |
||
|
|
e353079829 |
FN-6506: add Compound Engineering debug sessions
Add a bundled CE debug stage and skill so operators can launch root-cause investigation sessions from Compound Engineering. - Register the debug stage with stage metadata, default enabled settings, and dashboard coverage. - Bundle the ce-debug skill and expose its trigger patterns with reachability and wiring tests. - Document the new debug flow and add registry coverage for the stage catalog. Files changed: .../fusion-plugin-compound-engineering/README.md | 7 +- .../manifest.json | 4 +- .../src/__tests__/manifest.test.ts | 1 + .../src/__tests__/skill-reachability.test.ts | 31 +++-- .../src/__tests__/skill-wiring.test.ts | 65 ++++++---- .../src/__tests__/stage-registry.test.ts | 30 +++++ .../src/dashboard/__tests__/StageLauncher.test.tsx | 7 +- .../src/session/stage-registry.ts | 13 ++ .../src/skills.ts | 13 ++ .../src/skills/ce-debug/SKILL.md | 144 +++++++++++++++++++++ 10 files changed, 273 insertions(+), 42 deletions(-) Fusion-Task-Id: FN-6506 Fusion-Task-Lineage: d65a238e-83a2-4664-9e97-01244c9df087 |
||
|
|
4c587d6a80 |
FN-6285: replace CE cancel buttons with trash icons
Update Compound Engineering cancellation controls to use compact icon-only affordances while preserving accessible labels. - Render session-list and flow cancel actions as red trash-can icon buttons. - Add hover, focus, disabled, and inline layout styling for the compact cancel controls. - Update README wording and tests to assert icon-only accessible cancel buttons. Files changed: .../fusion-plugin-compound-engineering/README.md | 2 +- .../src/dashboard/CeFlow.tsx | 7 +++- .../src/dashboard/CompoundEngineeringView.css | 46 ++++++++++++++++++++-- .../src/dashboard/CompoundEngineeringView.tsx | 6 ++- .../src/dashboard/__tests__/CeFlow.test.tsx | 8 +++- .../__tests__/CompoundEngineeringView.test.tsx | 9 ++++- 6 files changed, 68 insertions(+), 10 deletions(-) Fusion-Task-Id: FN-6285 Fusion-Task-Lineage: 307d96e0-a234-4a3b-a13f-98342374eb38 |
||
|
|
2efa833357 |
FN-6250: add Compound Engineering session cancellation
Add cancel controls and backend support for preserving interrupted Compound Engineering sessions. - Add an orchestrator cancel path and POST route that stops live work without deleting session history. - Wire dashboard APIs, hooks, and UI buttons to cancel active, launching, or awaiting-input sessions. - Cover cancellation behavior across orchestrator, routes, hooks, flow controls, and session panel tests. - Document the cancel versus discard workflow in plugin docs and README. Files changed: docs/plugins/compound-engineering.md | 13 ++- .../fusion-plugin-compound-engineering/README.md | 11 ++- .../src/__tests__/orchestrator-cancel.test.ts | 101 +++++++++++++++++++++ .../src/__tests__/session-routes.test.ts | 35 +++++++ .../src/dashboard/CeFlow.tsx | 16 +++- .../src/dashboard/CompoundEngineeringView.css | 20 ++++ .../src/dashboard/CompoundEngineeringView.tsx | 40 +++++++- .../src/dashboard/__tests__/CeFlow.test.tsx | 20 ++++ .../__tests__/CompoundEngineeringView.test.tsx | 53 ++++++++++- .../hooks/__tests__/useCeSessions.test.tsx | 44 ++++++++- .../src/dashboard/hooks/api.ts | 10 ++ .../src/dashboard/hooks/useCeSessions.ts | 23 ++++- .../src/routes/session-routes.ts | 11 +++ .../src/session/orchestrator.ts | 20 ++++ 14 files changed, 404 insertions(+), 13 deletions(-) Fusion-Task-Id: FN-6250 Fusion-Task-Lineage: e9997056-364c-44e1-b846-00b08a1ff8fc |
||
|
|
4fc00b6e1f |
FN-6251: rehydrate compound answers before resuming
Allow interrupted compound engineering sessions to answer pending questions after the live handle is lost. - Rehydrate missing live session handles before sending answer turns. - Keep detached answer resumes active while background rehydration completes. - Cover route and orchestrator resume paths for old interrupted sessions. - Document the resume behavior and add a patch changeset. Files changed: .changeset/fn-6251-ce-answer-rehydrate.md | 5 + .../fusion-plugin-compound-engineering/README.md | 5 +- .../orchestrator-interrupt-resume.test.ts | 156 ++++++++++++++++++++- .../src/__tests__/session-routes.test.ts | 72 +++++++++- .../src/session/orchestrator.ts | 52 +++++-- 5 files changed, 276 insertions(+), 14 deletions(-) Fusion-Task-Id: FN-6251 Fusion-Task-Lineage: b6930c72-6106-4da9-a0c3-4bcf882f20da |
||
|
|
0106eee4ff |
feat(compound-engineering): live agent output, steering, and a real Q&A surface
Users can now watch everything the agent does while a CE stage works, steer
it mid-stage, and read the whole conversation as a proper chat surface.
Live output:
- New host capability: CreateInteractiveAiSessionOptions.onProgress — the
engine adapter streams thinking/text deltas + tool start/end markers from
the pi agent hooks (any plugin can use this).
- Orchestrator buffers per-session live activity (merged deltas, discrete
tool lines, capped), emits throttled progress events over SSE, and
GET /sessions/:id attaches it as liveActivity for the polling fallback.
- Routes detach turn execution: start/answer/resume return immediately
(status active) and clients converge via push/poll — the turn is watchable
instead of hidden inside a blocking POST.
- Turn timeout is now INACTIVITY-based: an actively-working long turn is
never killed; a quiet one interrupts with its working trace preserved.
- On settle the trace persists into history as a condensed record.
Steering:
- Stage protocol: responses may be a direct answer, {value, comment}
(answer + guidance), or {feedback} (guidance without answering); the
system prompt instructs agents to treat steering as first-class input.
- CeFlow: guidance textarea alongside selectable questions — attach to the
clicked answer, or "Send guidance" on its own.
Q&A UI:
- Transcript no longer hides control records: past questions/answers render
as chat bubbles (option ids → labels), steering turns marked, working
traces as collapsible "Agent work" blocks, completion marker.
- Live working pane (pulse + streaming thinking/tool lines) while a turn runs.
Tests: 130 plugin tests green (14 new: live buffer/flush ordering, inactivity
watchdog survives active work, detached convergence, steering payload shapes,
transcript rendering, live pane). Engine seam tests green; plugin/core/
engine/dashboard tsc clean. Core full suite OOMs locally (known orchestrator-
shell issue) — covered by CI shards.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|
|
7f8db9f892 |
feat(compound-engineering): manage and work across multiple CE sessions
The store/orchestrator were already multi-session (independent rows + live
handles per session); this surfaces it end to end:
- Sessions panel in the dashboard view: lists every session with stage,
status badge ("needs your input" for awaiting_input), and last activity;
stays visible while a flow is open so switching is one click. Closing a
flow returns to the overview without stopping the session.
- useCeSession.open(): adopt an existing session (pins its projectId for
answer/resume/poll); useCeSessions list hook with push-event refresh and
poll fallback while any session is mid-turn.
- DELETE /sessions/:id + orchestrator.discard(): dispose the live handle
before deleting the row (pipeline-link rows kept for task provenance);
Discard affordance on settled sessions.
- Tests: cross-session independence through one orchestrator, store delete,
route list/delete, hook open/list/remove/push/poll, view panel
open/switch/discard. 116 tests green; plugin + dashboard tsc clean.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
||
|
|
504308422d | docs: update CE transport docs for SSE push + projectId session identity | ||
|
|
f6c8aeeb04 |
feat(compound-engineering): settings schema, getters, docs (U9)
Add settingsSchema (default session provider/model, enabled stages, sync reconcile-on-hooks toggle, reconcile cadence hint) aligned across manifest.json and the runtime manifest, with typed getters. Wire the consumed getters: orchestrator passes defaultProvider/defaultModelId into sessions and rejects disabled stages; hooks gate their reconcile drain on reconcileOnHooks. Add the plugin README and docs/plugins/compound-engineering.md documenting the hub, interactive sessions, work bridge, and the sync ownership model. reconcileIntervalMinutes is exposed as an operator cadence hint but not yet consumed (no host scheduler; reconcile is on-demand by design). |