gsxdsm
fb6b441fbe
FN-5960: add unlinked mission advisory reporting
...
Add explicit visibility for active missions that remain intentionally unlinked to goals.
- document the no-backfill decision with an engine-emitted unlinked mission advisory
- add a scheduler reporter that emits one deduped workflow insight for active missions without goal links and falls back to task logs when insight storage is unavailable
- cover the advisory reporter and scheduler integration with focused tests
- clear PR remediation errors when changing the Create Pull Request base branch
Files changed:
docs/missions.md | 2 +
.../dashboard/app/components/PrCreateModal.tsx | 2 +
packages/engine/src/__tests__/scheduler.test.ts | 8 +
.../unlinked-missions-advisory-reporter.test.ts | 170 +++++++++++++++++++++
packages/engine/src/scheduler.ts | 18 +++
.../src/unlinked-missions-advisory-reporter.ts | 117 ++++++++++++++
6 files changed, 317 insertions(+)
Fusion-Task-Id: FN-5960
Fusion-Task-Lineage: efdbb4f5-fbd5-4ed7-9b9e-58706041d993
2026-06-07 18:51:46 -07:00
gsxdsm
afc72b6bb0
fix(core): widen Task.column to ColumnId across packages; v1-preserving IR persistence for rollback safety ( #1403 #1405 )
2026-06-04 08:00:33 -07:00
gsxdsm
30e2fd7b09
fix(review): apply autofix feedback
2026-06-04 02:50:54 -07:00
gsxdsm
6a15a13917
feat(engine): in-txn capacity enforcement + generalized hold/release sweep with reservation-first ordering (U6)
2026-06-04 01:22:56 -07:00
gsxdsm
c82cdb281c
FN-5944: stop redundant run-audit re-emission
...
Deduplicate unchanged scheduler and self-healing audit emissions while preserving transition visibility.
- suppress repeated queued-concurrency audits until the limiting gate signature changes or clears
- suppress repeated overlap-priority inversion audits until the blocker changes or overlap returns
- suppress repeated meta auto-archive skip and integrity-warning audits until their persisted reasons change
- update reliability tests and architecture/settings docs for the new transition-only audit cadence
Files changed:
docs/architecture.md | 12 +--
docs/settings-reference.md | 2 +-
.../integrity-warning-persisted-dedup.test.ts | 12 ++-
.../scheduler-overlap-priority-inversion.test.ts | 60 +++++++++++++-
packages/engine/src/__tests__/scheduler.test.ts | 13 ++-
.../self-healing-meta-archive-guards.test.ts | 45 +++++++++++
packages/engine/src/scheduler.ts | 59 +++++++++++---
packages/engine/src/self-healing.ts | 94 +++++++++++++++++-----
8 files changed, 243 insertions(+), 54 deletions(-)
Fusion-Task-Id: FN-5944
Fusion-Task-Lineage: f8fe6adf-1501-49b7-b04c-ff38376957f0
2026-06-03 22:31:23 -07:00
gsxdsm
327f0a9a4f
FN-5818: fix shared-branch-group execution to use per-task working branches
...
Ensure shared branch-group flows consistently derive and acquire per-task working branches.
- update engine merge/executor/scheduler/self-healing paths to resolve task-scoped working branch names instead of shared branch-group names
- adjust worktree acquisition and already-merged detection logic to use the corrected branch resolution
- add regression coverage for shared-branch-group working-branch behavior, worktree acquisition, and worktree name derivation
- add a patch changeset for @runfusion/fusion
Files changed:
.changeset/fn-5818-shared-branch-working-branch.md | 5 ++
.../shared-branch-group-working-branch.test.ts | 53 ++++++++++++++++++++++
.../src/__tests__/worktree-acquisition.test.ts | 52 +++++++++++++++++++++
.../engine/src/__tests__/worktree-names.test.ts | 20 +++++++-
packages/engine/src/already-merged-detector.ts | 6 +--
packages/engine/src/executor.ts | 10 ++--
packages/engine/src/merger-ai.ts | 4 +-
packages/engine/src/merger.ts | 16 +++----
packages/engine/src/scheduler.ts | 6 +--
packages/engine/src/self-healing.ts | 12 ++---
packages/engine/src/worktree-acquisition.ts | 4 +-
packages/engine/src/worktree-names.ts | 9 +++-
12 files changed, 166 insertions(+), 31 deletions(-)
Fusion-Task-Id: FN-5818
Fusion-Task-Lineage: c7eb1ec4-971a-49ad-9156-5c0349c629aa
2026-06-01 01:37:25 -07:00
gsxdsm
4b8650cac2
Merge pull request #1205 from plarson/fix/incomplete-stuck-loop-parking
...
fix: park incomplete stuck-loop exhaustions
2026-05-30 23:01:37 -07:00
Phil Larson
ce6ebb7b8e
fix(engine): preserve parked progress through stale-spec checks
2026-05-30 21:53:00 -07:00
gsxdsm
c9b159f4e5
FN-5743: cut over merge dequeue authority to merge-request queue
...
Shift merge dequeue enforcement to merge-request queue/marker authority with reliability coverage updates.
- Enforce merge eligibility and dequeue ownership via merge-request queue/marker checks in engine and scheduler paths.
- Add hard-cancel behavior coverage to ensure queued merge requests are canceled when tasks are user-canceled.
- Extend core merge-request record/store tests and reliability interaction suites for dual-observe and cancel-on-hard-cancel seams.
- Document the FN-5741/FN-5743 reliability backstop updates in AGENTS.md and architecture docs.
Files changed:
AGENTS.md | 2 +
docs/architecture.md | 2 +
packages/core/src/__tests__/merge-request-record.test.ts | 18 ++++
packages/core/src/store.ts | 13 +++
packages/engine/src/__tests__/reliability-interactions/dual-observe-merge-seam.test.ts | 57 +++++++++++++
packages/engine/src/__tests__/reliability-interactions/merge-request-cancel-on-hard-cancel.test.ts | 87 +++++++++++++++++++
packages/engine/src/project-engine.ts | 98 +++++++++++++++++++++-
packages/engine/src/scheduler.ts | 12 ++-
8 files changed, 284 insertions(+), 5 deletions(-)
Fusion-Task-Id: FN-5743
Fusion-Task-Lineage: b9a49aeb-ed73-42fe-924d-25c7097d1bb9
2026-05-30 20:48:16 -07:00
gsxdsm
8609669a56
FN-5742: add dual-observe merge-request parity seam
...
Add a dual-observe merge-request seam that preserves legacy authority while emitting parity signals.
- Add scheduler parity helpers for dependency satisfaction and shadow lease state, keeping legacy scheduling decisions authoritative.
- Extend ProjectEngine/run-audit merge dequeue flow with shadow-candidate selection and parity audit emission.
- Add reliability interaction coverage for dual-observe dependency parity, shadow dequeue parity, lease parity, and runnable guard behavior.
- Document FN-5742 reliability backstop coverage in architecture docs.
Files changed:
docs/architecture.md | 2 +
packages/engine/src/__tests__/reliability-interactions/dual-observe-merge-seam.test.ts | 193 +++++++++++++++++++++
packages/engine/src/__tests__/scheduler.test.ts | 64 +++++++
packages/engine/src/project-engine.ts | 42 +++++
packages/engine/src/run-audit.ts | 3 +
packages/engine/src/scheduler.ts | 158 +++++++++++++++--
6 files changed, 448 insertions(+), 14 deletions(-)
Fusion-Task-Id: FN-5742
Fusion-Task-Lineage: dc4c0212-fe75-4860-bf06-2765a0b18d38
2026-05-30 18:52:19 -07:00
gsxdsm
0e0b17f3c4
FN-5754: re-triage stranded features in active mission slices
...
Ensure active mission slices recover stranded features by linking or auto-triaging them during scheduler and self-healing reconciliation.
- Extend mission feature reconciliation to auto-triage defined features in active slices when mission autopilot/auto-advance is enabled and no linked task can be found.
- Emit a new mission:stranded-feature-triaged audit event whenever stranded features are linked or triaged, and wire reconciliation into self-healing maintenance runs.
- Add regression coverage for scheduler and reliability interactions, and document the new backstop in AGENTS and mission docs.
Files changed:
AGENTS.md | 1 +
docs/missions-completion-contract.md | 1 +
docs/missions.md | 1 +
.../mission-stranded-feature-retriage.test.ts | 160 +++++++++++++++++++++
packages/engine/src/__tests__/scheduler.test.ts | 155 ++++++++++++++++++++
packages/engine/src/run-audit.ts | 1 +
packages/engine/src/runtimes/in-process-runtime.ts | 1 +
packages/engine/src/scheduler.ts | 64 ++++++++-
packages/engine/src/self-healing.ts | 11 ++
9 files changed, 394 insertions(+), 1 deletion(-)
Fusion-Task-Id: FN-5754
Fusion-Task-Lineage: 6b29754a-2fdf-4528-aa43-af294c4210df
2026-05-30 16:47:15 -07:00
gsxdsm
3255965ad5
FN-5715: gate mission feature completion on assertion validation
...
Prevent mission-linked done tasks from bypassing assertion validation and recover stalled validation triggers after restart.
- require assertion-linked done features to have a passed validator result before slice/milestone completion
- keep assertion-linked features in progress when linked tasks move to done/archived until validation passes
- restart mission loop recovery when needed and re-trigger done/archived implementing features that still need validation
- add regression coverage for scheduler, mission loop recovery, mission store completion gating, and reliability trigger continuity
- document the new FN-5715 reliability backstop and recovery behavior
Files changed:
.changeset/fn-5715-mission-validation-trigger.md | 7 +
AGENTS.md | 1 +
docs/architecture.md | 1 +
docs/missions.md | 11 +-
packages/core/src/__tests__/mission-integration.test.ts | 2 +-
packages/core/src/__tests__/mission-store.test.ts | 30 +++-
packages/core/src/mission-store.ts | 19 ++-
packages/engine/src/__tests__/mission-execution-loop.test.ts | 95 +++++++++++++
packages/engine/src/__tests__/reliability-interactions/mission-validation-trigger-gap.test.ts | 151 +++++++++++++++++++++
packages/engine/src/__tests__/scheduler.test.ts | 54 ++++++++
packages/engine/src/mission-autopilot.ts | 7 +-
packages/engine/src/mission-execution-loop.ts | 25 ++++
packages/engine/src/mission-feature-sync.ts | 32 ++++-
packages/engine/src/scheduler.ts | 12 +-
14 files changed, 431 insertions(+), 16 deletions(-)
Fusion-Task-Id: FN-5715
Fusion-Task-Lineage: 98b1cbd6-6b68-40a0-b4b3-c512183adf8b
2026-05-30 09:43:02 -07:00
Phil Larson
f8bda56716
fix(FN-166): bypass coordination-only overlap leases
...
Fusion-Task-Id: FN-166
2026-05-30 06:47:02 -07:00
Phil Larson
9112b7dc08
fix(FN-080): ignore non-runnable queued overlap blockers
...
Fusion-Task-Id: FN-080
2026-05-29 12:57:56 -07:00
gsxdsm
c722451a1c
Recovery: re-land onto main
2026-05-28 19:48:41 -07:00
Fusion (runfusion.ai)
c3890a9b43
feat(FN-5496): reconcile soft-deleted tasks with active blockers
...
Added soft-delete blocker recovery logic to the scheduler and self-healing systems, enabling reconciliation of stale blocker reasons when tasks are archived or restored. The changes include corresponding tests for the completion guard behavior, scheduler recovery paths, and self-healing integration,
Fusion-Task-Id: FN-5496
2026-05-22 10:58:44 -07:00
Fusion (runfusion.ai)
59bebf0806
feat(FN-5430): gate task update invalidation in scheduler
...
Scheduler now gates task update invalidation, preventing spurious invalidations when engine lifecycle changes (soft-delete, lease recovery) touch task metadata, with coverage via new scheduler invalidation tests and a small dashboard server test adjustment.
Fusion-Task-Id: FN-5430
2026-05-20 23:48:57 -07:00
Fusion (runfusion.ai)
62f11e69d3
feat(FN-5325): priority-aware overlap deferral and merge integration worktr
...
The merge delivers several meaningful features and fixes: a **priority-aware overlap deferral fix** (FN-5325) in the scheduler that aligns the queued-overlap helper with the priority-sortable type, preventing inversion; a **merge integration worktree feature** (FN-5279) with settings UI, reusable wo
Fusion-Task-Id: FN-5325
2026-05-20 14:28:45 -07:00
Fusion (runfusion.ai)
cee2c1385a
feat(FN-5319): tighten scheduler queued-concurrency memo key to reduce fals
...
Add regression tests for queued concurrency in the scheduler and tighten the memo key used to track queued tasks, improving correctness of scheduler dispatch decisions.
Fusion-Task-Id: FN-5319
2026-05-20 06:52:11 -07:00
Fusion (runfusion.ai)
69c77fa3bf
feat(FN-5257): restore visible action icons in SecretsView
...
Restores visibility of action icons in SecretsView (CSS styling and component adjustments), accompanied by updated test coverage. A test stabilization commit for the process supervisor fallback rounds out the merge.
Fusion-Task-Id: FN-5257
2026-05-20 06:27:44 -07:00
Fusion (runfusion.ai)
4eccbe2fb5
feat(FN-5137): complete Step 1 — invalidate on task deleted
...
Fusion-Task-Id: FN-5137
Fusion-Task-Lineage: bb2e2e56-d64c-46ca-a6c8-abda13029fc2
2026-05-19 07:45:11 -07:00
Fusion (runfusion.ai)
c56e0cf814
feat(FN-5083): complete Step 3 — canonicalize fusion branch naming
2026-05-18 18:26:52 -07:00
gsxdsm
a8a413cc91
feat(FN-5009): merge fusion/fn-5009
2026-05-18 12:31:21 -07:00
Fusion (runfusion.ai)
4f75dca020
feat(FN-5008): complete Step 1 — compute concurrency gate attribution
...
Fusion-Task-Id: FN-5008
Fusion-Task-Lineage: a5f8c651-c3a3-49b9-911f-51c1cd493b4c
2026-05-17 23:54:38 -07:00
gsxdsm
02ba659dd8
feat(FN-4969): merge fusion/fn-4969
2026-05-17 22:57:15 -07:00
Fusion (runfusion.ai)
01f0bf625a
fix(FN-4826): complete Step 6 — stabilize audit emission and tests
...
Fusion-Task-Id: FN-4826
Fusion-Task-Lineage: b08a58c8-66ab-43d4-bdf9-69d2b56b7bcc
2026-05-16 23:45:17 -07:00
Fusion (runfusion.ai)
1553f1dd0d
test(FN-4826): complete Step 4 — cover handoff telemetry paths
...
Fusion-Task-Id: FN-4826
Fusion-Task-Lineage: b08a58c8-66ab-43d4-bdf9-69d2b56b7bcc
2026-05-16 23:45:17 -07:00
Fusion (runfusion.ai)
56aca02250
feat(FN-4826): complete Step 2 — emit scheduler handoff events
...
Fusion-Task-Id: FN-4826
Fusion-Task-Lineage: b08a58c8-66ab-43d4-bdf9-69d2b56b7bcc
2026-05-16 23:45:17 -07:00
Fusion (runfusion.ai)
8c3c0206f1
feat(FN-4836): consolidate settings round-trip/default tests with it.each m
...
Refactors the settings store tests in `packages/core` by consolidating round-trip and default value coverage into structured `it.each` matrices, trimming the test file by roughly 60 lines while maintaining equivalent coverage.
Fusion-Task-Id: FN-4836
2026-05-16 22:47:24 -07:00
Fusion (runfusion.ai)
6fa9aef630
feat(FN-4823): complete lease recovery central-claim reconciliation
...
Fusion-Task-Id: FN-4823
Fusion-Task-Lineage: 0034c04f-df82-4a1b-9f25-b93643a2c157
2026-05-16 21:26:04 -07:00
Fusion (runfusion.ai)
14cf263bc6
feat(FN-4825): complete Step 3 — add scheduler unreachable-owner audits
...
Fusion-Task-Id: FN-4825
Fusion-Task-Lineage: dc4e633e-fe46-47a8-9ecc-f032073caee9
2026-05-16 19:58:44 -07:00
Fusion (runfusion.ai)
c3dd34f070
feat(FN-4816): add integration tests for node settings sync API routes
...
Adds integration tests for node settings sync API routes (`routes-nodes-sync.test.ts`), covering the settings push/pull and sync-status endpoints across the dashboard node management API.
Fusion-Task-Id: FN-4816
Fusion-Task-Lineage: 01f1bec6-f1c3-43bc-8854-5c4739f0e736
2026-05-16 17:44:25 -07:00
Fusion (runfusion.ai)
ae22b3e632
feat(FN-4813): complete Step 5 — add isolation transition runtime restart path
...
Fusion-Task-Id: FN-4813
Fusion-Task-Lineage: 846893a5-2afa-4817-8f64-8c444d2fd713
2026-05-16 17:34:14 -07:00
Fusion (runfusion.ai)
92b4899ee0
feat(FN-4813): complete Step 4 — wire handoff into scheduler and lease recovery
...
Fusion-Task-Id: FN-4813
Fusion-Task-Lineage: 846893a5-2afa-4817-8f64-8c444d2fd713
2026-05-16 17:34:12 -07:00
Fusion (runfusion.ai)
b2ca02f743
feat(FN-4813): complete docs, settings, and verification updates
...
Fusion-Task-Id: FN-4813
Fusion-Task-Lineage: 846893a5-2afa-4817-8f64-8c444d2fd713
2026-05-16 17:31:10 -07:00
Fusion (runfusion.ai)
63adddadf9
feat(FN-4813): complete Step 5 — add isolation transition runtime restart path
...
Fusion-Task-Id: FN-4813
Fusion-Task-Lineage: 846893a5-2afa-4817-8f64-8c444d2fd713
2026-05-16 17:31:09 -07:00
Fusion (runfusion.ai)
2ca18e983a
feat(FN-4813): complete Step 4 — wire handoff into scheduler and lease recovery
...
Fusion-Task-Id: FN-4813
Fusion-Task-Lineage: 846893a5-2afa-4817-8f64-8c444d2fd713
2026-05-16 17:31:09 -07:00
Fusion
a8bde08d26
fix(FN-4606): stabilize resolver callsites and test expectations
...
Ref: Runfusion/Fusion#321
Fusion-Task-Id: FN-4606
Fusion-Task-Lineage: 94b23f37-944e-4bcd-bfa1-67d0a8c0a267
2026-05-15 09:19:59 -07:00
Fusion
2799c101ac
feat(FN-4606): complete Step 3 — route engine call sites
...
Ref: Runfusion/Fusion#321
Fusion-Task-Id: FN-4606
Fusion-Task-Lineage: 94b23f37-944e-4bcd-bfa1-67d0a8c0a267
2026-05-15 09:19:58 -07:00
Fusion
a9eca52670
feat(FN-4538): complete Step 2 — preserve overlap blockers in scheduler
...
Fusion-Task-Id: FN-4538
Fusion-Task-Lineage: 332b4c78-b67f-45d0-9181-0bb539b662c1
2026-05-14 22:24:50 -07:00
Fusion
22dd272247
feat(FN-3977): complete Step 2 — scheduler overlap bottleneck warnings
...
Fusion-Task-Id: FN-3977
Fusion-Task-Lineage: c84f2ce0-3726-49b2-ad84-6703edbfecf1
2026-05-14 15:49:55 -07:00
Fusion
00bb1a508a
test(FN-4429): complete Step 3 — userPaused scheduler dispatch guard
...
Fusion-Task-Id: FN-4429
Fusion-Task-Lineage: b010437b-0e58-43f6-81b3-40dcebbf0873
2026-05-14 10:31:49 -07:00
Fusion
3577a8babd
feat(FN-4465): complete Step 3 — scheduler stale task reporter
...
Fusion-Task-Id: FN-4465
Fusion-Task-Lineage: 4365d4cb-ab93-4ed5-add9-3e14b26237ad
2026-05-14 05:55:16 -07:00
Fusion
f860618657
feat(FN-4401): complete remaining auto-claim snapshot integration
...
Fusion-Task-Id: FN-4401
Fusion-Task-Lineage: c1b6c497-b22c-48d5-b1c8-299877bf09ac
2026-05-14 01:10:47 -07:00
Fusion
efd5a8a4aa
feat(FN-4153): complete Step 3 — wire scheduler permanent-agent assignment toggle
...
Fusion-Task-Id: FN-4153
Fusion-Task-Lineage: 6ec09467-c7a0-4a9d-9a09-16d5ef6f7a86
2026-05-13 06:29:34 -07:00
Fusion
b536d92d9c
fix(FN-4249): align running-agent reconciliation with taskId linkage
...
Fusion-Task-Id: FN-4249
Fusion-Task-Lineage: e0052fae-38e1-4d66-8240-43d26f5790bb
2026-05-13 06:29:33 -07:00
Fusion
09637bee8f
feat(FN-4249): complete Step 3 — add running-agent mismatch self-healing
...
Fusion-Task-Id: FN-4249
Fusion-Task-Lineage: e0052fae-38e1-4d66-8240-43d26f5790bb
2026-05-13 06:29:33 -07:00
Fusion
7006a083d0
fix(FN-4249): complete Step 2 — rollback running agents on overlap requeue
...
Fusion-Task-Id: FN-4249
Fusion-Task-Lineage: e0052fae-38e1-4d66-8240-43d26f5790bb
2026-05-13 06:29:33 -07:00
Fusion
61b670acce
feat(FN-4200): prevent failed tasks from blocking overlap dispatch in sched
...
The scheduler now excludes failed review tasks from blocking overlap dispatch, preventing stuck tasks from stalling downstream work. A CSS fix prevents the failed badge from incorrectly overriding the in-review status in the list view, with tests covering both the scheduler logic and the badge displ
Fusion-Task-Id: FN-4200
2026-05-12 17:04:33 -07:00
Fusion
1772572191
feat(FN-4027): memoize startup slim list reads to avoid redundant fresh fet
...
Added memoization for startup slim task list reads (`store.ts`), with dashboard server routing startup reads through the memo window and tests covering the store watcher consumers in scheduler and worktree-pool, plus performance documentation.
Fusion-Task-Id: FN-4027
2026-05-11 21:48:26 -07:00