Commit Graph

23 Commits

Author SHA1 Message Date
Fusion (runfusion.ai)
c491dac28f test(FN-4850): add active worktree rename and copy diff coverage
Fusion-Task-Id: FN-4850
Fusion-Task-Lineage: 903d8e4e-eba7-413e-86d8-94eae7318952
2026-05-17 00:06:26 -07:00
Fusion (runfusion.ai)
ef1343f658 feat(FN-4741): prefer rebase range for done task diffs
Fixed diff calculation for done tasks to prefer the rebase range over a stale base commit, resolving incorrect diff output when a task branch has been rebased (FN-4741). Added test coverage for the session diff routes.

Fusion-Task-Id: FN-4741
2026-05-16 09:05:27 -07:00
Fusion (runfusion.ai)
653f2b45fb test(FN-4726): cover rebase-range precedence for partial lineage aggregation
Fusion-Task-Id: FN-4726
Fusion-Task-Lineage: 9fa3bfd7-f277-4c03-8d1e-6162eb7771b2
2026-05-16 07:48:09 -07:00
Fusion
abb7838d3c feat(FN-4518): complete Step 3 — use rebase range in done-task diff fallback
Fusion-Task-Id: FN-4518
Fusion-Task-Lineage: 48749dec-b2c9-484b-a13e-ffacc1fa9014
2026-05-14 17:04:17 -07:00
Fusion
23bb578ae4 test(FN-4528): add fallback rename/copy diff coverage
Fusion-Task-Id: FN-4528
Fusion-Task-Lineage: 40f587b4-6bf3-4ebd-8870-359ac57b42ea
2026-05-14 14:26:25 -07:00
Fusion
c72dc6f3fc feat(FN-4521): complete Step 2 — fix done lineage aggregation
Fusion-Task-Id: FN-4521
Fusion-Task-Lineage: 675472a2-480d-4b9e-8861-98d2d82680db
2026-05-14 14:04:32 -07:00
Fusion
5690139750 test(FN-4436): complete Step 4 — add unreachable and rename diff coverage
Fusion-Task-Id: FN-4436
Fusion-Task-Lineage: df683800-0108-4415-a496-81481082284d
2026-05-13 23:30:32 -07:00
Fusion
1d278ffa19 fix(FN-4436): complete Step 3 — harden aggregation and in-progress patches
Fusion-Task-Id: FN-4436
Fusion-Task-Lineage: df683800-0108-4415-a496-81481082284d
2026-05-13 23:30:32 -07:00
Fusion
cb3519500d feat(FN-4436): complete Step 2 — restore done fallback enumeration
Fusion-Task-Id: FN-4436
Fusion-Task-Lineage: df683800-0108-4415-a496-81481082284d
2026-05-13 23:30:32 -07:00
Fusion
9639311ac2 test(FN-4308): complete Step 5 — cover revision and fallback lineage edges
Fusion-Task-Id: FN-4308
Fusion-Task-Lineage: d0a46a8f-2245-4ddc-99b4-06d78e87db16
2026-05-13 09:28:08 -07:00
Fusion
bd1069c4e6 feat(FN-4308): complete Step 2 — aggregate done-task diffs by lineage commits
Fusion-Task-Id: FN-4308
Fusion-Task-Lineage: d0a46a8f-2245-4ddc-99b4-06d78e87db16
2026-05-13 09:28:08 -07:00
gsxdsm
3f061460b9 fix(FN-2662): honor project model overrides and stabilize tests 2026-04-28 18:21:17 -07:00
Fusion
d6c8f1118b fix(FN-2444): polish node dashboard UX and discovery core handling
- Update node management UI components to use shared form/button classes, semantic color tokens, and accessible interactions
- Refine mesh topology rendering and related dashboard tests for improved readability and behavior coverage
- Adjust discovery routes to reuse injected centralCore instances without unnecessary init/close cycles
- Add/extend tests for shared CentralCore discovery flows and model settings scope save behavior
2026-04-24 09:38:16 -07:00
gsxdsm
98bc656a6b fix(FN-1554): return empty diff when worktree is missing or nonexistent
- Return empty diff instead of 500 error when worktree path is null, undefined, or doesn't exist on disk
- Add 9 tests covering null worktree, undefined worktree, nonexistent paths, and valid paths
- Fixes dashboard crash on diff tab for in-progress tasks with missing worktrees
2026-04-14 08:00:47 -07:00
gsxdsm
d2e9aafff9 feat(FN-1465): merge fusion/fn-1465 2026-04-12 07:00:49 -07:00
gsxdsm
b3f057a281 fix: improve merge verification and dashboard behavior 2026-04-10 18:30:23 -07:00
gsxdsm
2892ae192a feat(FN-1193): use sha^ base for done-task diff endpoints
- Update done-task /diff and /file-diffs routes to always resolve merge base from commitSha^ for squash merges
- Remove baseCommitSha ancestor/merge-base fallback logic that could include unrelated merged task changes
- Expand routes-diff regression tests to assert sha^ behavior and ensure baseCommitSha/baseBranch are ignored for done tasks
- Add done-task coverage in routes-file-diffs tests for sha^ success, missing commitSha, and rev-parse failure paths
2026-04-08 09:35:24 -07:00
gsxdsm
81e4eb002b feat(FN-943): add file browser context menu with copy, move, delete, rename, and download operations
- Add backend file operations (copy, move, delete, rename, download) in file-service.ts with workspace root protection
- Add API routes for file operations including directory download as zip via archiver
- Add client API functions in api.ts for all file operation endpoints
- Add context menu UI in FileBrowser component with operations dialog for confirming destructive actions
- Add CSS styles for context menu including danger items and dividers
- Add 33 FileBrowser context menu tests and 485+ file-service tests
- Fix pre-existing test failures in routes-diff, mission-e2e, and theme sync tests
2026-04-05 20:54:11 -07:00
gsxdsm
8ba4c9a54a test: update done-task diff comment 2026-04-05 18:06:53 -07:00
gsxdsm
bc34001910 fix(FN-951): use baseCommitSha for done task diff base calculation
- Fix diff base resolution for done/merged tasks to use task.baseCommitSha as priority
- Add 3-tier fallback: baseCommitSha → merge-base with base branch → first parent
- Validate baseCommitSha is a valid ancestor before using it
- Use task.baseBranch (defaulting to main) for merge-base computation
- Update and expand test cases to cover new priority resolution logic
2026-04-04 23:21:39 -07:00
gsxdsm
a67bd31f3c fix(FN-895): compute diff from merge base for done tasks
- Replace git show with git diff from merge base to isolate only task-specific changes in done task diffs
- Find merge base between merge commit and its first parent to avoid showing unrelated main-branch changes
- Add fallback logic: try merge-base, then parent commit, then return empty diff
- Apply fix to both file list and individual file diff endpoints
- Add comprehensive tests for merge-base computation with various git scenarios
2026-04-04 17:58:38 -07:00
gsxdsm
dd8acb76b4 fix: resolve all 41 pre-existing dashboard test failures
- AgentsView: add missing fetchModels/fetchAgentStats mocks, update tests
  for new multi-step NewAgentDialog and ActiveAgentsPanel dual rendering
- routes-diff: rewrite tests to match new resolveDiffBase() two-dot syntax
- routes.test: fix spec/revise test — done→triage is valid per VALID_TRANSITIONS
- activity-feed CSS: replace hardcoded rgba(88,166,255) with color-mix token,
  fix var(--error) → var(--color-error)
- server/webhook/websocket tests: add getDatabase() mock for AiSessionStore

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-04 13:17:03 -07:00
gsxdsm
f779d8285e fix(FN-679): use merge-base diff in modal changes tab
- Updated /tasks/:id/diff endpoint to use merge-base comparison
- Changed from HEAD~1..HEAD to ...HEAD syntax
- Added fallback to HEAD when merge-base fails
- Verified fix matches /tasks/:id/file-diffs endpoint pattern
2026-04-02 10:25:57 -07:00