Commit Graph

788 Commits

Author SHA1 Message Date
Aron Prins
10b75bd386 fix(FN-000): address startup review feedback 2026-05-11 13:36:51 +02:00
Aron Prins
12ae8f77fb fix(FN-000): improve local startup UX 2026-05-11 09:52:23 +02:00
gsxdsm
0e5bdf338a Readme update 2026-05-10 23:42:47 -07:00
Fusion
ccd899dab4 feat(FN-3972): recover in-review tasks with missing worktrees
- Add self-healing recovery to detect in-review tasks that lost their worktree and clear stale blockedBy state
- Extend restart recovery coordinator handling and tests for missing-worktree classification behavior
- Add focused self-healing and restart recovery test coverage for the new recovery path
- Document missing-worktree review recovery behavior in architecture docs

Fusion-Task-Id: FN-3972
2026-05-10 23:36:10 -07:00
Fusion
be404e5967 feat(FN-3958): add heartbeat timer reconciliation self-healing
Adds scheduler heartbeat timer reconciliation with automatic self-healing when timers drift, including tests for tracked-only monitor recovery and documentation in the agents reference.

Fusion-Task-Id: FN-3958
2026-05-10 23:36:10 -07:00
Fusion
baed1db0c7 feat(FN-3974): document reports view in dashboard guide
Added documentation for the dashboard's reports view to the dashboard guide, including a corresponding test assertion.

Fusion-Task-Id: FN-3974
2026-05-10 23:36:10 -07:00
Fusion
a39985cabf feat(FN-3791): add agent provisioning approval guards and policy enforcemen
Implements approval guards for agent provisioning (FN-3791), adding policy-gated create/delete flows with dedupe logic, CLI tool alignment, engine run-audit coverage, and corresponding test suites, plus documentation updates and a regression fix for verification/tool docs sync.

Fusion-Task-Id: FN-3791
2026-05-10 23:36:10 -07:00
Fusion
a4b268ce58 feat(FN-3975): keep interview-stage missions visible in mission list
Made interview-stage missions visible in the mission list (MissionManager) and documented the behavior in the missions reference. Tests added for the new visibility logic.

Fusion-Task-Id: FN-3975
2026-05-10 23:36:10 -07:00
Fusion
a3d67e088f feat(FN-3971): add aggregate mailbox view for all agents
Adds an "All Agents" unified mailbox view to the dashboard, including a new aggregate API endpoint in `@fusion/core`, updated MailboxView UI with selection controls, CSS styling, and comprehensive tests across core and dashboard packages, with documentation updates.

Fusion-Task-Id: FN-3971
2026-05-10 23:36:10 -07:00
Fusion
a4617beb03 feat(FN-3816): add merger self-healing for missing workspace and environmen
Implements merger self-healing with a missing workspace entry detector, bootstrap recovery path, and environment fault retry handling, plus supporting tests for merge error recovery and verification utilities, alongside documentation updates.

Fusion-Task-Id: FN-3816
2026-05-10 23:36:10 -07:00
Fusion
4d2f02906d feat(FN-3954): blocker staleness fanout and escalation for tasks
Merges FN-3954: adds a blocker fanout system where task staleness automatically escalates to upstream blocking tasks, with a new `blocker-fanout` core module, dashboard hooks wiring that surfaces escalation status on the board and executor status bar, and a new settings toggle to disable escalation.

Fusion-Task-Id: FN-3954
2026-05-10 23:36:10 -07:00
Fusion
c731987dff feat(FN-3963): clarify automation tracked-task creation semantics
Adds regression tests for automation tracked-task creation behavior across the dashboard automation and tasks routes, plus a documentation clarification on the semantics of how automation creates tracked tasks.

Fusion-Task-Id: FN-3963
2026-05-10 23:36:09 -07:00
Fusion
a04b3205b4 feat(FN-3767): add task runtime env injection into executor commands via pl
Adds executor runtime environment support to the plugin system, enabling plugins to contribute environment variables that get injected into executor commands. The implementation includes new plugin types (`ExecutorRuntimeEnvPlugin`), aggregation in the plugin runner, thread-through into executor com

Fusion-Task-Id: FN-3767
2026-05-10 23:36:09 -07:00
Fusion
a0c7c3315a feat(FN-3957): add delegate_task override flag to bypass executor role poli
Adds a `delegate_override` flag to the `delegate_task` tool that allows executor-role tasks to be assigned to non-executor agents. The override is persisted as metadata in the extension and honored by the heartbeat inbox guard, with test coverage across engine, core, and CLI packages plus updated do

Fusion-Task-Id: FN-3957
2026-05-10 23:36:09 -07:00
Fusion
a5a794d12e feat(FN-3960): add mesh replay outage contracts and runtime hooks
- Add core outage schema and mesh replay contract types, with CentralCore/CentralDB support for queue and snapshot persistence
- Expose runtime replay hooks in engine health monitoring and peer exchange paths to drive outage recovery flows
- Expand protocol and architecture docs for shared mesh replay behavior and finalized contract expectations
- Add regression tests across core and engine for queue sequencing, snapshot contracts, and replay integration

Fusion-Task-Id: FN-3960
2026-05-10 19:13:05 -07:00
Fusion
7d67dc3597 feat(FN-3956): execute provisioning on approval decisions
The merge completes Step 1 of agent provisioning approval followthrough, executing provisioning actions when approval decisions are made, with supporting documentation in AGENTS.md and docs/agents.md. Test coverage spans provisioning policy, approval routes, gating classifications, extension integra

Fusion-Task-Id: FN-3956
2026-05-10 19:13:05 -07:00
Fusion
294f98c0e0 feat(FN-3455): document outage tolerance contracts in mesh protocol docs
Documents outage tolerance contracts across three architecture docs, with the bulk of changes in `docs/shared-mesh-protocol.md` plus minor additions to the main architecture and multi-project guides.

Fusion-Task-Id: FN-3455
2026-05-10 19:13:05 -07:00
Fusion
7883a0f499 feat(FN-3955): align mesh state hook contract with topology consumers
- Change useMeshState to expose NodeMeshState[] and unwrap API snapshot nodes in refresh and polling flows
- Update NodesView mesh topology rendering to consume the flattened hook result directly
- Revise mesh-state and NodesView tests to validate array-based contract and topology behavior
- Document the Nodes UI mesh topology contract in architecture docs

Fusion-Task-Id: FN-3955
2026-05-10 18:04:43 -07:00
Fusion
48aea5001b feat(FN-3951): fix merge recovery re-enqueue guard to prevent auto-merge lo
Hardens merge recovery logic (FN-3951) with guards against invalid state transitions during terminal merge errors, backed by new tests in `merge-error-recovery.test.ts` and `self-healing.test.ts`, and documented in the task management docs.

Fusion-Task-Id: FN-3951
2026-05-10 17:01:41 -07:00
Fusion
32e76c8cc0 feat(FN-3454): add typed mesh snapshot API consumed by nodes view
Implements a typed mesh snapshot API in `@fusion/core` (`CentralCore.getMeshSnapshot`, `MeshSnapshot` type) and wires it through the dashboard nodes view via a new `useMeshState` hook, substantially simplifying `MeshTopology.tsx` by replacing internal state management with the centralized snapshot.

Fusion-Task-Id: FN-3454
2026-05-10 16:53:36 -07:00
Fusion
17ef50f820 feat(FN-3939): audit and patch PR #59 residual defects, add retry parity an
Completes FN-3939 audit work for PR #59 residual defects by refactoring the mission execution loop in the engine (halving its complexity), adding self-healing test coverage, and wiring in task workflow route improvements. Retry and validation behavior updates are documented in the changeset and skil

Fusion-Task-Id: FN-3939
2026-05-10 16:23:15 -07:00
Fusion
bad8234e52 feat(FN-3950): reorder task form sections and document github tracking plac
Reorganized the TaskForm to move the GitHub tracking section and locked the create-form section order, with tests verifying the new layout and documentation added for the tracking placement in the dashboard guide.

Fusion-Task-Id: FN-3950
2026-05-10 16:12:08 -07:00
Fusion
d7980d5a59 feat(FN-3942): surface high fan-out blockers in task cards and executor sta
Adds a "high fan-out" indicator that surfaces when a task blocks an unusually large number of downstream tasks, displayed as a warning badge on TaskCards and in the ExecutorStatusBar. The feature includes core type definitions, dashboard UI updates to render the warning with appropriate styling and

Fusion-Task-Id: FN-3942
2026-05-10 15:55:09 -07:00
Fusion
f6a1862f93 feat(FN-3953): wire agent provisioning approval policy into engine tools
Merged agent provisioning approval policies into the engine with guard controls that restrict which agents can be created and by whom, integrated through the CLI extension and core policy definitions.

Fusion-Task-Id: FN-3953
2026-05-10 15:34:58 -07:00
Fusion
6871c510a4 feat(FN-3953): enable tracking issue creation on task edit and document the
Implements GitHub tracking issue creation on PATCH operations for FN-3953, with accompanying test coverage and documentation updates for edit-time tracking.

Fusion-Task-Id: FN-3953
2026-05-10 15:34:09 -07:00
Fusion
05fe4208a7 feat(FN-3932): add orphaned finalize-reset autostash safeguard in merger
The merger gains a safeguard that automatically stashes work when a finalize-reset leaves orphaned records, preventing merge-state corruption. Core exports the new orphan record type, project-engine wires the safeguard, and documentation traces the provenance flow; tests were added for the recovery

Fusion-Task-Id: FN-3932
2026-05-10 15:34:09 -07:00
Fusion
0cdc291f44 feat(FN-3950): reuse keyboard-aware room thread container (+3 more)
Commits merged:
- fix(FN-3950): replace graph task rgba highlights with color tokens
- test(FN-3950): add room mobile keyboard anchoring regression coverage
- fix(FN-3950): enable mobile keyboard tracking for room threads
- feat(FN-3950): complete Step 1 — reuse keyboard-aware room thread container

Files changed:
docs/dashboard-guide.md                            |  1 +
 packages/dashboard/app/components/ChatView.tsx     | 11 ++-
 .../components/__tests__/ChatView.rooms.test.tsx   | 88 +++++++++++++++++++++-
 3 files changed, 93 insertions(+), 7 deletions(-)

Fusion-Task-Id: FN-3950
2026-05-10 15:33:25 -07:00
Fusion
4535db5419 feat(FN-3786): add reports dashboard view and comparison tooling
Adds a Reports dashboard view (`ReportsView`) to the reports plugin with a full supporting stack of components (`ReportComparisonDrawer`, `ReportDetailPanel`, `ReportFiltersBar`, `ReportListItem`, `ReportEmptyState`), hooks (`useReports`, `useReportPreview`, `useReportSectionDiff`, `useViewportMode`

Fusion-Task-Id: FN-3786
2026-05-10 15:33:25 -07:00
Fusion
2fa4ba940a feat(FN-3633): document plugin trust policy feature
Adds plugin trust policy documentation across the CLI reference, settings reference, and a new plugin authoring guide, along with a patch-level changeset for `@runfusion/fusion`.

Fusion-Task-Id: FN-3633
2026-05-10 15:33:25 -07:00
Fusion
337e287ced feat(FN-3943): align tracking resolution to honor task-level override seman
Aligned GitHub tracking resolution to resolve task-level overrides, with regression tests covering the create-flow path and documentation of the override semantics.

Fusion-Task-Id: FN-3943
2026-05-10 15:33:25 -07:00
Fusion
c238712a3f feat(FN-3946): add chat stream reattach recovery after tab suspension
Implements Step 1 of reattaching a regular chat stream when the browser tab resumes from a hidden/suspended state, with tests covering the recovery path and documentation added to the dashboard guide.

Fusion-Task-Id: FN-3946
2026-05-10 15:33:25 -07:00
Fusion
b046d70730 feat(FN-3940): expose github tracking controls in task detail modal
Adds GitHub tracking controls to the TaskDetailModal with corresponding test coverage, and documents the feature in the dashboard guide and task management docs.

Fusion-Task-Id: FN-3940
2026-05-10 15:33:25 -07:00
Fusion
6b55b26195 feat(FN-3811): add room mention popup to dashboard architecture docs and te
Added documentation for the room mention feature in the architecture docs and a changeset, alongside hardened tests for the `AgentMentionPopup` room variant.

Fusion-Task-Id: FN-3811
2026-05-10 15:33:25 -07:00
Fusion
ff4e7cad78 feat(FN-3937): document architecture recovery layers and lifecycle alignmen
Added documentation for Fusion's architecture recovery layers (deadlock self-healing, paused-aware in-review filtering) and aligned lifecycle docs, with a new test validating that the self-healing docs stay in sync with the source code.

Fusion-Task-Id: FN-3937
2026-05-10 15:33:25 -07:00
Fusion
ab85b99bef feat(FN-3933): coordinate temp dir cleanup to harden testing suite isolatio
Documents and tests a temp directory isolation fix in the core test suite, coordinating cleanup to prevent cross-test contamination.

Fusion-Task-Id: FN-3933
2026-05-10 15:33:25 -07:00
Fusion
140d5b97a5 feat(FN-3928): clear room composer after send
Completes the room composer clear-on-send behavior in `ChatView` with regression tests covering the reset flow, plus documentation updates for parity.

Fusion-Task-Id: FN-3928
2026-05-10 15:33:25 -07:00
Fusion
d0a2d90182 feat(FN-3785): add standalone HTML rendering and export routes for reports
Adds a complete HTML rendering and export pipeline to the fusion-plugin-reports plugin, including a standalone HTML renderer with template and stylesheet support, new export routes (`/api/reports/:id/export/html`) that persist rendered HTML to the store, and plugin-type support for non-JSON route re

Fusion-Task-Id: FN-3785
2026-05-10 15:33:24 -07:00
Fusion
f6f7d3f031 feat(FN-3927): persist and restore durable chat recovery state
- Persist in-flight chat generation snapshots in core chat store types and DB plumbing
- Restore durable recovery state through dashboard chat manager and chat hooks on reload
- Add coverage for chat store persistence and chat/useQuickChat recovery behavior
- Document durable chat recovery architecture and dashboard behavior

Fusion-Task-Id: FN-3927
2026-05-10 15:33:24 -07:00
gsxdsm
f1ece4b1d4 feat(FN-3916): finish cli printing press bundling 2026-05-10 08:43:24 -07:00
Fusion
b94fd232a6 feat(FN-3812): add rooms test scaffolds and coverage across core and dashbo
This branch establishes test scaffolding for rooms functionality across core and dashboard, adding test plans, room-specific test files for ChatView, AgentMentionPopup, QuickChatFAB, and core chat routes/stores, while also updating AgentMentionPopup with enhanced room-aware behavior and QuickChatFAB

Fusion-Task-Id: FN-3812
2026-05-10 07:59:40 -07:00
Fusion
5b15f45d44 feat(FN-3924): enforce blockedBy blocker invariants in scheduler and recove
Implements invariant enforcement for blocked-by relationships in the scheduler and self-healing recovery, preventing tasks from being blocked by stale or invalid dependencies. The feature adds tests for both scheduler and self-healing behavior, updates the CLI extension and architecture docs, and sh

Fusion-Task-Id: FN-3924
2026-05-10 07:44:31 -07:00
Fusion
29c8ef5ec4 feat(FN-3171): verify roadmap plugin migration, backend, and theme integrat
FN-3171 completed a multi-step verification of the roadmap plugin, covering migration artifact and record matrix validation, backend/API contract checks, and theme smoke tests for the RoadmapsView component, culminating in a verification documentation file.

Fusion-Task-Id: FN-3171
2026-05-10 06:51:38 -07:00
Fusion
246b2b403c feat(FN-3922): enforce task skip on credential-failure heartbeat
Credential-missing recovery is now documented and enforced in the agent heartbeat layer, with comprehensive test coverage for both timer-triggered and assignment-triggered credential failure scenarios.

Fusion-Task-Id: FN-3922
2026-05-10 05:58:46 -07:00
Fusion
860d18382d feat(FN-3875): add GitHub tracking auth resolver and forced client auth mod
Implements a tracking auth resolver with forced GitHub client authentication mode, wiring it across the GitHub tracking lifecycle and settings UI. The feature spans six steps: adding the resolver, forced auth mode, routing tracking issue creation through the resolver, and wiring into lifecycle and s

Fusion-Task-Id: FN-3875
2026-05-10 05:20:26 -07:00
Fusion
26af49a35e feat(FN-3914): add durable heartbeat model fallback
Adds durable heartbeat model fallback logic to the engine's heartbeat subsystem (`agent-heartbeat.ts`, `agent-session-helpers.ts`, `pi.ts`), allowing heartbeats to gracefully use alternative AI models when the primary model is unavailable, with documentation updates to `agents.md` and `settings-refe

Fusion-Task-Id: FN-3914
2026-05-10 02:54:30 -07:00
Fusion
44502572fc feat(FN-3873): add GitHub tracking state service for issue close/reopen lif
Added a GitHub tracking state service (`GitHubTrackingStateService`) and `setIssueState` client method to support closing and reopening tracked issues, with test coverage for both the client and the service, wired into the GitHub routes, and documented in the architecture docs.

Fusion-Task-Id: FN-3873
2026-05-10 02:43:38 -07:00
Fusion
ebab75ec53 feat(FN-3872): add GitHub tracking comments service
Added a GitHub tracking comments service that posts automated comments to GitHub PRs, with a full test suite and documentation. The service is wired into the GitHub registration flow and ships as a changeset patch.

Fusion-Task-Id: FN-3872
2026-05-10 02:04:42 -07:00
Fusion
9f3dc77840 feat(FN-3913): add GitHub tracking guide section to task-management docs
Adds a new GitHub tracking issues guide section to the task management documentation, with a contract test to validate the docs content.

Fusion-Task-Id: FN-3913
2026-05-10 01:28:43 -07:00
Fusion
ddf51d9b7b feat(FN-3917): update task detail control documentation
Documents task detail controls in the dashboard guide and task management docs, with a minor update to task-management.md.

Fusion-Task-Id: FN-3917
2026-05-10 01:00:23 -07:00
Fusion
8ee6dd9f84 feat(FN-3914): restore room reply verification path and add hybrid chat tes
Restored the room reply verification path and documented the room responder flow in the dashboard chat module, adding 168 lines of new chat logic, comprehensive tests for chat-manager and chat-room-routes, and updating architecture and dashboard documentation.

Fusion-Task-Id: FN-3914
2026-05-10 00:18:32 -07:00