Commit Graph

4593 Commits

Author SHA1 Message Date
Matthew Greenberg
8570f955e8 test(engine): verify layer forwarding and cross-session cache invariant 2026-05-10 16:03:32 -04:00
Matthew Greenberg
9e5607b6c6 feat(engine): triage and heartbeat use prompt layers for caching 2026-05-10 16:03:32 -04:00
Matthew Greenberg
5d3531e0be feat(engine): executor uses prompt layers for cross-session caching 2026-05-10 16:03:32 -04:00
Matthew Greenberg
4cebf1dde0 feat(engine): add computeCacheHitRatio metric to token usage tracking 2026-05-10 16:03:32 -04:00
Matthew Greenberg
048a03b86b feat(engine): scope skill loading by session purpose to reduce token overhead 2026-05-10 16:03:32 -04:00
Matthew Greenberg
39e57cbb88 feat(engine): sort tools deterministically for prompt cache stability 2026-05-10 16:03:32 -04:00
Matthew Greenberg
00bc7cd442 feat(engine): reviewer uses prompt layers for cross-session caching 2026-05-10 16:03:32 -04:00
Matthew Greenberg
e7ea1257ff feat(engine): add systemPromptLayers to AgentRuntimeOptions and wire into DefaultResourceLoader
Extends AgentRuntimeOptions and AgentOptions with an optional
systemPromptLayers field (SystemPromptLayers) for cross-session prompt
caching. DefaultResourceLoader now uses the stable layer as
systemPromptOverride and the dynamic layer as appendSystemPromptOverride
when layers are provided, falling back to the flat systemPrompt string
for backward compatibility.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 16:03:32 -04:00
Matthew Greenberg
a53a9a0802 feat(engine): add SystemPromptLayers type and builder for cross-session caching 2026-05-10 16:03:31 -04:00
gsxdsm
4492fed361 Merge pull request #67 from Runfusion/copilot/fix-pr-66-checks
Stabilize dashboard TUI remote provider test by modeling real provider transition
2026-05-10 12:39:36 -07:00
gsxdsm
030671a5da Merge pull request #66 from Runfusion/copilot/fix-pr-check-failure
fix(FN-3737): skip PluginLoader test when dist artifacts are absent
2026-05-10 12:24:07 -07:00
copilot-swe-agent[bot]
586c4530a5 test(FN-66): stabilize remote provider activation assertion
Agent-Logs-Url: https://github.com/Runfusion/Fusion/sessions/7f615374-c19b-4ab4-8869-f9181ee6cb90

Co-authored-by: gsxdsm <602584+gsxdsm@users.noreply.github.com>
2026-05-10 18:49:46 +00:00
copilot-swe-agent[bot]
972a3cd440 Initial plan 2026-05-10 18:46:59 +00:00
copilot-swe-agent[bot]
6c0cf78a9a fix(FN-3737): skip PluginLoader test when dist/index.js is absent
Agent-Logs-Url: https://github.com/Runfusion/Fusion/sessions/988126eb-7e51-4b15-8d47-2ce0ce1aed99

Co-authored-by: gsxdsm <602584+gsxdsm@users.noreply.github.com>
2026-05-10 18:37:13 +00:00
copilot-swe-agent[bot]
1bc09c68bc Initial plan 2026-05-10 18:35:58 +00:00
gsxdsm
5f6d998cb2 Merge pull request #65 from bluk1020/fix/stuck-detector-workflow-timeout-fallback
fix: keep stuck detector active by default
2026-05-10 10:17:00 -07:00
Berlin Luk
572e7a8f69 fix: decouple stuck detector timeout 2026-05-11 00:11:23 +08:00
gsxdsm
08e04498f5 chore(release): v0.26.0
Version bump via changesets.
2026-05-10 08:55:51 -07:00
Berlin Luk
4205309114 fix: keep stuck detector active by default 2026-05-10 23:55:36 +08:00
gsxdsm
f1ece4b1d4 feat(FN-3916): finish cli printing press bundling 2026-05-10 08:43:24 -07:00
gsxdsm
3e1cb0603a fix(FN-3931): restore triage planning model defaults 2026-05-10 08:42:23 -07:00
Fusion
62e8f6cf1f feat(FN-3929): dedupe REPO_OVERRIDE_RE export from core
Cleaned up a duplicate export of `REPO_OVERRIDE_RE` from the core package index, removing the redundant declaration from `packages/core/src/index.ts` while keeping it defined in `github-tracking.ts` where it logically belongs.

Fusion-Task-Id: FN-3929
2026-05-10 08:28:07 -07:00
Fusion
d05a1a0fac feat(FN-3874): add GitHub tracking to task creation and detail views
Adds GitHub tracking to the task system across create, detail, and patch flows: the NewTaskModal gains GitHub tracking controls (Step 1), TaskDetailModal gets a new UI section for viewing and editing GitHub repo/issue links (Step 2), and the task workflow API routes gain a PATCH handler wired throug

Fusion-Task-Id: FN-3874
2026-05-10 08:07:34 -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
8e9cd1a531 feat(FN-3925): add task-level GitHub tracking controls to create-task and t
Adds GitHub tracking controls to the create-task flow and task detail modal, with wired patch transport to persist the setting. Includes a CLI extension alignment (FN-3921) and a post-merge typecheck fix (FN-3925).

Fusion-Task-Id: FN-3925
2026-05-10 07:34:38 -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
50fdea6ad0 feat(FN-3799): normalize empty and null assignment inputs to clear agent as
Fixes assignment clearing in the CLI extension by normalizing nullable inputs, ensuring empty strings and literal null values properly clear agent assignments rather than being passed through unchanged; adds comprehensive test coverage for the normalization behavior and a patch changeset.

Fusion-Task-Id: FN-3799
2026-05-10 06:42:04 -07:00
Fusion
0a55a4db4b feat(FN-3170): harden plugin bundling contract and fix verification regress
Hardened the roadmap plugin bundling contract with new output-validation tests and tsup config cleanup, then resolved regressions those changes introduced in the bundle and package-config test suites. A small dashboard UI tweak (TaskDetailModal) was also included.

Fusion-Task-Id: FN-3170
2026-05-10 06:14:19 -07:00
Fusion
42692b50de feat(FN-3876): add GitHub tracking test coverage across settings, issues, s
Adds comprehensive test coverage for GitHub tracking across four areas: settings inheritance, issue creation, status sync transitions, and unlink sync regression — spanning 280 lines of new tests across four test files with minimal store.ts adjustment.

Fusion-Task-Id: FN-3876
2026-05-10 06:06:26 -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
0fa5af3cfe feat(FN-3921): align dashboard githubTracking with core REPO_OVERRIDE_RE ex
Restored the `REPO_OVERRIDE_RE` regex export from core and aligned the dashboard's `githubTracking` component to consume it, fixing the export contract that was broken in FN-3921. Added tests in both core and dashboard packages to cover the regex behavior.

Fusion-Task-Id: FN-3921
2026-05-10 05:29:41 -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
752222c438 feat(FN-3920): export repo override regex from github-tracking module
Exported the repo override regex from `@fusion/core` for use across packages, replacing an internal import in the dashboard's GitHub tracking component with the public API from core. Tests were updated in both packages to cover the new export.

Fusion-Task-Id: FN-3920
2026-05-10 05:14:23 -07:00
Fusion
6a6d49814e feat(FN-3918): restore github tracking regex helper and tests
Restores a local GitHub tracking regex helper in the dashboard and adds regression tests to prevent future regressions. The feature restores functionality that was previously removed, with tests covering the helper's behavior.

Fusion-Task-Id: FN-3918
2026-05-10 04:26:53 -07:00
Fusion
955c0f202f test(FN-3915): revert unrelated dependency graph plugin test drift
- Restore the dependency-graph plugin index test to the intended assertions\n- Remove unintended test-only line changes introduced outside FN-3915 scope\n- Keep the branch focused on the Step 2 cleanup with no behavior changes

Fusion-Task-Id: FN-3915
2026-05-10 03:35:04 -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
4a20dc4ab2 feat(FN-3916): fix bundled Dependency Graph view load path
Fixed the bundled Dependency Graph view load path in the dashboard app, adding regression tests across the App and plugin registration test suites, and documenting the bundled loading contract in the plugin README.

Fusion-Task-Id: FN-3916
2026-05-10 01:25:27 -07:00
Fusion
0810827d36 feat(FN-3220): add regression tests for branch routing and merge-target beh
Adds regression tests for branch-mode behavior across CLI, core, and dashboard: CLI PR base branch inheritance (task-lifecycle), mission triage branch routing and merge-target trimming (task-merge), and subtask branch-mode UI coverage (SubtaskBreakdownModal, mission-e2e).

Fusion-Task-Id: FN-3220
2026-05-10 01:22:13 -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
ea6ef14b5e feat(FN-3910): strengthen QuickChatFAB initial-open scroll regression test
Strengthens the QuickChatFAB initial-open scroll regression test with additional assertions covering the scroll behavior that was previously fixed.

Fusion-Task-Id: FN-3910
2026-05-10 00:23:18 -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
Fusion
0a48ed8063 feat(FN-3915): move mission manager CTA to sidebar footer on desktop
Refactored the MissionManager CTA for desktop by moving it to the sidebar footer and aligning its sizing contract, with corresponding test updates and docs refresh.

Fusion-Task-Id: FN-3915
2026-05-10 00:12:22 -07:00
Fusion
72c50ae747 feat(FN-3913): align settings modal header action button sizing
Fixes header action button sizing in the SettingsModal to improve visual alignment across desktop and mobile, with regression tests added to prevent future regressions.

Fusion-Task-Id: FN-3913
2026-05-10 00:01:42 -07:00
Fusion
56c232a322 feat(FN-3871): add tracking issue title/body formatters
Added GitHub tracking issue title and body formatters to the dashboard (`packages/dashboard/src/github-tracking.ts`), with corresponding tests and documentation in the architecture docs. A changeset was included for this user-facing feature.

Fusion-Task-Id: FN-3871
2026-05-09 23:51:23 -07:00
Fusion
41c114add8 feat(FN-3912): make research view scrollable on mobile
Fixes the research view to scroll properly on mobile by adding the necessary CSS, accompanied by a regression test to prevent the issue from recurring.

Fusion-Task-Id: FN-3912
2026-05-09 23:41:42 -07:00
Fusion
b6d5032b31 feat(FN-3911): reserve chat session text space for delete button
Fixes a layout issue where chat session rows did not reserve space for the delete button, which could cause text to be obscured when the button appeared. Added a CSS rule to maintain consistent spacing and a test to assert the reservation behavior.

Fusion-Task-Id: FN-3911
2026-05-09 23:31:59 -07:00