Commit Graph

14 Commits

Author SHA1 Message Date
gsxdsm
88c465cfc0 fix(ci,engine): repair test sharding, case-variant ambiguity detection, post-merge CI
Test shards 3 and 4 were silently failing on every open PR because vitest's
CLI parser was treating `--shard X/Y` as positional file filters whenever the
arg arrived after a `--` separator. Removing the `--` in ci-test-shard.mjs
restores per-shard slicing; verified locally that shard 1/4 and 2/4 now run
distinct subsets.

The two consistently-failing engine tests:

1. self-healing in-review-branch-rebind ambiguous case-variant detection:
   dedup keyed on lowercase branch name collapsed two physically distinct
   refs (allowed on Linux ext4) into one candidate, so the "applied" path
   ran instead of "ambiguous-candidates". Dedup now keys on the resolved
   SHA — macOS APFS still collapses (same ref, same SHA), Linux keeps both
   (distinct SHAs) and the ambiguity skip path fires as designed.

2. worktree-acquisition resume-misbinding spy: the production
   verifyResumeBranchNotMisbound returns early when `git merge-base HEAD main`
   fails, which is exactly what happens on shallow checkouts. Bumping the
   test-shards checkout to fetch-depth: 0 makes CI mirror the local git
   state these engine tests rely on.

Also adds `push: branches: [main]` to PR Checks so regressions like this
(which slipped into v0.33.0 with no post-merge run) go red immediately
on landing instead of being discovered on the next PR.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-25 10:24:21 -07:00
Fusion (runfusion.ai)
1233113c47 feat(FN-5033): complete Step 2 — add balance-aware secondary split pass
Fusion-Task-Id: FN-5033
Fusion-Task-Lineage: f1a04b65-6161-4001-b01c-3036905cb2ab
2026-05-18 06:39:52 -07:00
Fusion (runfusion.ai)
1c649884b9 feat(FN-4989): complete Step 1 — enforce minimum two-way splits above threshold
Fusion-Task-Id: FN-4989
Fusion-Task-Lineage: 7dc15ef5-3318-4611-9e3c-aebe3cb15952
2026-05-18 05:07:29 -07:00
Fusion (runfusion.ai)
1b53400a91 feat(FN-5036): complete Step 1 — unify split-entry best-fit placement
Fusion-Task-Id: FN-5036
Fusion-Task-Lineage: 8df4174c-27f1-4d95-aded-bb2769384bc1
2026-05-18 04:40:32 -07:00
Fusion (runfusion.ai)
6d48098417 feat(FN-5002): complete Step 4 — implement best-fit shard planning and tests
Fusion-Task-Id: FN-5002
Fusion-Task-Lineage: 76c054fc-dbca-40dd-bd59-dd795946472b
2026-05-18 01:36:36 -07:00
gsxdsm
02adf013f8 fix(FN-4423): add missing weight property to planShardAssignments output
Both ternary branches in planShardAssignments() omitted weight from the
pushed entry objects despite using entry.weight for bin-packing. Downstream
consumers that relied on shard entry weight (e.g., balance verification)
had to reconstruct it from computeSplitPlan output.
2026-05-13 22:18:01 -07:00
gsxdsm
35a6d3a81d fix(ci): exclude dist/ test files from shard count 2026-05-13 17:58:28 -07:00
Fusion
de8a5a3b6f feat(FN-4126): complete Step 1 — define shard entry model
Fusion-Task-Id: FN-4126
Fusion-Task-Lineage: ed1e7e10-43d3-4347-933b-0dc9e8cd345a
2026-05-13 06:29:35 -07:00
Fusion
b7e6146880 feat(FN-4134): stabilize research view layout
Stabilized the ResearchView layout by refactoring CSS and component structure, with 175 lines of fixes spanning the CSS module, component TSX, and new regression tests. Also includes a patch changeset for the release note.

Fusion-Task-Id: FN-4134

Fusion-Task-Lineage: ca3ad67b-766b-4da6-be7f-c3927d718acd
2026-05-12 17:04:32 -07:00
Fusion
52f62f1494 feat(FN-4043): implement weighted CI shard balancing
Implements weighted shard planning for the CI test sharding script, with deterministic test coverage and documentation updates to `contributing.md`.

Fusion-Task-Id: FN-4043
2026-05-11 21:48:26 -07:00
Aron Prins
1ed390052c test(FN-000): address PR review feedback 2026-05-07 17:32:21 +02:00
Fusion
f6394cc22b test(FN-3607): harden test workflow verification and isolation checks
- Expand test-changed coverage and shard selection assertions for CI workflows
- Improve vitest worker temp-directory utilities and related core/CLI tests
- Refine test isolation guardrails and runtime ignore handling for live .fusion noise
- Update contributing guidance and root test script usage for the verified workflow

Fusion-Task-Id: FN-3607
2026-05-06 11:51:48 -07:00
Fusion
61bf81d6b8 feat(FN-3470): prefer source aliases for runtime plugins and add test artif
Merges FN-3470 in two steps: first, runtime plugins now prefer source path aliases over build artifacts, with hardening tests for vitest alias resolution and plugin view registry updates; second, a new `ensure-test-artifacts.mjs` bootstrap script guarantees required test files exist before test runs

Fusion-Task-Id: FN-3470
2026-05-05 13:25:02 -07:00
Fusion
3b9f0d55c1 feat(FN-3366): document CI shard contract in contributing guide
Documentation update to `docs/contributing.md` adding details on the CI shard contract (FN-3366 Step 3).

Fusion-Task-Id: FN-3366
2026-05-04 09:20:07 -07:00