gsxdsm
294209f64b
FN-5943: maintain tasks FTS5 indexes automatically
...
Keep the tasks FTS5 index compact and self-healing during routine maintenance.
- add FTS5 trigger helpers, index sizing utilities, and a schema migration that skips no-op searchable-field rewrites
- run merge/optimize/rebuild maintenance from self-healing with thresholds, cadence, and run-audit logging
- add focused FTS maintenance coverage and update storage/architecture docs for the new behavior
Files changed:
docs/architecture.md | 1 +
docs/storage.md | 14 ++
packages/core/src/__tests__/db-migrate.test.ts | 50 ++--
packages/core/src/__tests__/db.test.ts | 84 +++----
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
.../src/__tests__/merge-request-record.test.ts | 2 +-
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
.../src/__tests__/store-archive-search.test.ts | 33 +++
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/archive-db.ts | 6 +-
packages/core/src/db.ts | 162 ++++++++++---
packages/core/src/store.ts | 16 ++
.../engine/src/__tests__/fts-maintenance.test.ts | 268 +++++++++++++++++++++
packages/engine/src/self-healing.ts | 70 ++++++
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
18 files changed, 622 insertions(+), 108 deletions(-)
Fusion-Task-Id: FN-5943
Fusion-Task-Lineage: 9a851ede-95ee-4b76-bc34-737912f0e3fc
2026-06-07 18:51:46 -07:00
gsxdsm
1f68348441
merge: main (CLI agent interface #1446 ) — renumber workflow_settings migration to 112 behind main's cli_sessions(110)/adapter(111), full-workspace literal sweep, i18n union
2026-06-05 16:18:39 -07:00
gsxdsm
693ed6290a
Merge remote-tracking branch 'origin/main' into gsxdsm/cli-agent-interface
...
# Conflicts:
# CONCEPTS.md
# packages/core/src/__tests__/db-migrate.test.ts
# packages/core/src/__tests__/db.test.ts
# packages/core/src/__tests__/goals-schema.test.ts
# packages/core/src/__tests__/insight-store.test.ts
# packages/core/src/__tests__/merge-request-record.test.ts
# packages/core/src/__tests__/mission-store.test.ts
# packages/core/src/__tests__/run-audit.test.ts
# packages/core/src/__tests__/store-merge-queue.test.ts
# packages/core/src/__tests__/task-documents.test.ts
# packages/core/src/db.ts
# packages/dashboard/src/__tests__/agent-onboarding.test.ts
# packages/dashboard/src/__tests__/ai-refine.test.ts
# packages/dashboard/src/__tests__/chat-attachment-routes.test.ts
# packages/dashboard/src/__tests__/experiment-routes.finalize.test.ts
# packages/dashboard/src/__tests__/milestone-slice-interview.test.ts
# packages/dashboard/src/__tests__/mission-interview.test.ts
# packages/dashboard/src/__tests__/pr-metadata-generator.test.ts
# packages/dashboard/src/__tests__/project-pause-resume-routes.test.ts
# packages/dashboard/src/__tests__/routes-approval-sandbox-provisioning.test.ts
# packages/dashboard/src/__tests__/routes-approval-secrets.test.ts
# packages/dashboard/src/__tests__/routes-approval.test.ts
# packages/dashboard/src/__tests__/routes-worktrunk.test.ts
# packages/dashboard/src/__tests__/session-error-recovery.test.ts
# packages/dashboard/src/__tests__/session-persistence-roundtrip.test.ts
# packages/dashboard/src/__tests__/session-reconnect.test.ts
# packages/dashboard/src/__tests__/session-resume-history.test.ts
# packages/dashboard/src/__tests__/setup-routes.test.ts
# packages/dashboard/src/__tests__/subtask-breakdown.test.ts
# packages/dashboard/src/routes/__tests__/agent-avatar-routes.test.ts
# packages/dashboard/src/routes/__tests__/custom-providers.test.ts
# packages/dashboard/src/routes/__tests__/docker-node-routes.test.ts
# packages/i18n/locales/en/app.json
# plugins/fusion-plugin-roadmap/src/store/__tests__/roadmap-store.test.ts
2026-06-05 15:30:59 -07:00
gsxdsm
6d16c07197
merge: main (editor consolidation #1433 , fast-tests, learnings) — renumber workflow_settings migration to 110, settings panel joins the sidebar disclosures, full-workspace literal sweep
2026-06-05 15:23:15 -07:00
gsxdsm
5d4733e054
fix(ci): align engine/schema test stubs with cli-agent surface
...
The cli-agent executor feature added engine.getCliAgentRuntime() (called by
the CLI dashboard command at load) and bumped @fusion/core SCHEMA_VERSION
108→110. Update the stale test stubs:
- cli dashboard.test.ts: add getCliAgentRuntime() to the mock FnAgent class
(returns undefined; runDashboard handles the no-runtime path). Fixes 52
failures all rooted at `cwdEngine?.getCliAgentRuntime is not a function`.
- roadmap-store.test.ts: the roadmap store layers on core's Database, so its
schema version tracks core; assert 110 instead of 108.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-05 04:19:21 -07:00
gsxdsm
06f6a0aa28
fix(ci): update roadmap-plugin schema-version literal missed by the v109 sweep (plugins/ not covered by packages/ grep)
2026-06-05 02:23:36 -07:00
gsxdsm
dfe8dfd70a
fix(ci): add createWorkflowAuthoringTools to partial engine mocks; bump roadmap schema assertion to 109
2026-06-05 01:45:48 -07:00
gsxdsm
0451172bfa
fix(ci): theme-token conventions in field badges (white keyword, --text-muted) + roadmap plugin schema literal 107→108
...
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-04 14:43:54 -07:00
gsxdsm
e711e6e0fd
fix(ci): schema-version literal, CLI core-mock spreads, plugin-sdk type-only exports, restore pruned i18n keys
2026-06-04 03:38:05 -07:00
gsxdsm
05f2d49bf6
test: bump hardcoded schema-version assertions 102 → 105
...
This PR advanced @fusion/core's SCHEMA_VERSION 102 → 105 (migrations 103
workflows, 104 task_workflow_selection, 105 orphaned-selection cleanup) but
the "reaches current version after init/migrate" assertions across the core
test suite — and the roadmap plugin's mirror test — still hardcoded 102. The
dashboard build break was masking this: the test shards never ran until the
build was fixed, then all four failed on `expected 105 to be 102`.
Updated every getSchemaVersion()).toBe(102) current-version assertion to 105
(db, db-migrate, goals-schema, insight-store, mission-store, run-audit,
store-merge-queue, merge-request-record, task-documents) plus the roadmap
plugin. agent-log-migration already asserts against the imported SCHEMA_VERSION
constant (the robust pattern); central-db asserts its own version 13 and is
unaffected.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-03 18:10:53 -07:00
gsxdsm
d72cb2ab2b
FN-5911: move agent logs to per-task JSONL storage
...
Store agent logs in per-task JSONL files instead of the legacy SQLite table.
- add a file-backed agent log store with JSONL append/read/prune helpers and task-scoped source refs
- migrate legacy SQLite agentLogEntries data into task files, rewrite goal citation references, and preserve soft-deleted logs for forensics
- update task store, settings, docs, dashboard route coverage, and add regression tests for migration, retention, and log access
Files changed:
.changeset/fn-5911-agent-log-jsonl.md | 5 +
AGENTS.md | 2 +-
docs/diagnostics.md | 2 +-
docs/settings-reference.md | 2 +
docs/soft-delete-verification-matrix.md | 7 +-
docs/storage.md | 8 +-
.../src/__tests__/agent-log-file-store.test.ts | 123 ++++++
.../core/src/__tests__/agent-log-migration.test.ts | 186 +++++++++
.../core/src/__tests__/agent-log-retention.test.ts | 208 ++++++++++
packages/core/src/__tests__/db-migrate.test.ts | 14 +-
packages/core/src/__tests__/db.test.ts | 39 +-
.../src/__tests__/goal-citations-store.test.ts | 38 +-
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
.../src/__tests__/merge-request-record.test.ts | 2 +-
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../src/__tests__/soft-delete-agent-logs.test.ts | 71 ++--
.../src/__tests__/store-agent-log-file.test.ts | 91 +++++
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/store-test-helpers.ts | 43 +-
packages/core/src/__tests__/store-upsert.test.ts | 37 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/agent-log-constants.ts | 25 ++
packages/core/src/agent-log-file-store.ts | 267 ++++++++++++
packages/core/src/db.ts | 51 ++-
packages/core/src/settings-schema.ts | 1 +
packages/core/src/store.ts | 453 ++++++++++++---------
packages/core/src/types.ts | 10 +-
.../__tests__/agent-log-routes.integration.test.ts | 48 +++
.../src/__tests__/evaluator-evidence.test.ts | 47 ++-
packages/engine/src/self-healing.ts | 12 +
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
34 files changed, 1477 insertions(+), 345 deletions(-)
Fusion-Task-Id: FN-5911
Fusion-Task-Lineage: 07c42f3a-87cf-4558-8f01-ac8460b5558b
2026-06-03 01:10:18 -07:00
gsxdsm
7be377da0c
FN-5926: break bundled plugin dashboard dependency cycle
...
Remove direct dashboard package dependencies from bundled plugins while preserving typed dashboard interop.
- add a workspace acyclic dependency regression test for all packages and dashboard-bundled plugins
- expose dashboard app aliases in dashboard TS/Vite/Vitest configs for plugin interop imports
- replace bundled plugin @fusion/dashboard dependencies with local dashboard interop declarations and updated tsconfig path mappings
Files changed:
.../workspace-dependency-acyclicity.test.ts | 174 +++++++++++++++++++++
packages/dashboard/tsconfig.app.json | 6 +-
packages/dashboard/tsconfig.test-check.json | 6 +-
packages/dashboard/vite.config.ts | 4 +
packages/dashboard/vitest.config.ts | 4 +
.../fusion-plugin-cli-printing-press/package.json | 1 -
.../src/dashboard-interop.d.ts | 19 +++
.../fusion-plugin-cli-printing-press/tsconfig.json | 7 +-
.../fusion-plugin-dependency-graph/package.json | 1 -
.../src/dashboard-interop.d.ts | 6 +
.../fusion-plugin-dependency-graph/tsconfig.json | 3 +-
plugins/fusion-plugin-roadmap/package.json | 1 -
.../src/dashboard-interop.d.ts | 19 +++
plugins/fusion-plugin-roadmap/tsconfig.json | 7 +-
pnpm-lock.yaml | 9 --
15 files changed, 248 insertions(+), 19 deletions(-)
Fusion-Task-Id: FN-5926
Fusion-Task-Lineage: 1b39c08a-1415-407d-90cc-b3de89af0316
2026-06-03 00:12:13 -07:00
gsxdsm
30a09e3422
FN-5896: persist mission-goal linkage in schema
...
Persist mission↔goal relationships through the core mission schema and store APIs.
- add the mission_goals join table, schema migration coverage, and schema version bump to 101
- add MissionStore goal link/unlink/list helpers plus a MissionGoalLink type and emitted linkage events
- add regression tests for persistence, idempotency, ordering, and cascade behavior, and document the new linkage model with a published changeset
Files changed:
.changeset/fn-5896-mission-goal-linkage.md | 5 +
docs/missions.md | 19 +++
docs/storage.md | 1 +
packages/core/src/__tests__/db-migrate.test.ts | 49 ++++++-
packages/core/src/__tests__/db.test.ts | 34 ++---
packages/core/src/__tests__/goals-schema.test.ts | 4 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
.../src/__tests__/merge-request-record.test.ts | 2 +-
.../core/src/__tests__/mission-goals-link.test.ts | 142 +++++++++++++++++++++
packages/core/src/__tests__/mission-store.test.ts | 4 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 31 ++++-
packages/core/src/mission-store.ts | 111 ++++++++++++++++
packages/core/src/mission-types.ts | 6 +
.../src/store/__tests__/roadmap-store.test.ts | 2 +-
18 files changed, 391 insertions(+), 41 deletions(-)
Fusion-Task-Id: FN-5896
Fusion-Task-Lineage: a4c7c495-b20a-454b-9605-782671cdd8c8
2026-06-02 14:41:41 -07:00
gsxdsm
a8c920daf9
chore(release): v0.39.0
...
Version bump via changesets.
2026-05-31 20:05:32 -07:00
gsxdsm
20c1c3261e
FN-5741: persist merge-request handoff shadow contract
...
Introduce Phase 1 write-only persistence for merge-request handoff acceptance across core and engine paths.
- add persisted merge-request record types, schema/settings plumbing, and store write-path support
- update merger/executor/self-healing/run-audit flows to emit and consume the handoff-accepted shadow marker
- expand core/engine/roadmap tests and docs to cover the new merge-request shadow contract
- add a patch changeset for @runfusion/fusion for this bundled package update
Files changed:
.changeset/fn-5741-merge-request-shadow.md | 5 +
AGENTS.md | 1 +
docs/architecture.md | 2 +
docs/settings-reference.md | 1 +
packages/core/src/__tests__/db-migrate.test.ts | 12 +-
packages/core/src/__tests__/db.test.ts | 34 ++--
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
.../src/__tests__/merge-request-record.test.ts | 97 +++++++++++
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../core/src/__tests__/settings-parity.test.ts | 3 +
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 49 +++++-
packages/core/src/index.ts | 4 +-
packages/core/src/settings-schema.ts | 30 ++++
packages/core/src/store.ts | 189 ++++++++++++++++++++-
packages/core/src/types.ts | 37 ++++
.../src/__tests__/merger-merge-lifecycle.test.ts | 54 ++++++
.../merge-request-shadow-handoff.test.ts | 74 ++++++++
packages/engine/src/executor.ts | 15 +-
packages/engine/src/merger.ts | 37 ++++
packages/engine/src/run-audit.ts | 1 +
packages/engine/src/self-healing.ts | 16 +-
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
27 files changed, 646 insertions(+), 45 deletions(-)
Fusion-Task-Id: FN-5741
Fusion-Task-Lineage: 3fec14c3-47ff-4f14-bc02-24021518c992
2026-05-30 14:42:50 -07:00
gsxdsm
f659a07a25
chore(release): v0.38.1
...
Version bump via changesets.
2026-05-30 00:18:41 -07:00
gsxdsm
45d22586dc
chore(release): v0.38.0
...
Version bump via changesets.
2026-05-29 23:17:31 -07:00
gsxdsm
0dbb1cd6f9
FN-5704: escalate self-owned execution limbo instead of endless resume
...
Escalate reclaimable in-progress resume limbo into an explicit failure path to stop infinite self-healing loops.
- add resume-limbo escalation handling in self-healing/executor flow so self-owned stuck execution is failed and surfaced
- extend core task/run-audit types and retry-reset/store behavior to persist and expose the new escalation state
- add reliability interaction coverage for reclaim self-owned resume limbo escalation and update related schema/store/CLI/plugin tests and docs
Files changed:
AGENTS.md | 1 +
docs/architecture.md | 2 +
packages/cli/src/commands/__tests__/task.test.ts | 2 +
packages/core/src/__tests__/db-migrate.test.ts | 12 +-
packages/core/src/__tests__/db.test.ts | 34 ++---
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 13 +-
packages/core/src/manual-retry-reset.ts | 1 +
packages/core/src/store.ts | 37 ++++-
packages/core/src/types.ts | 11 ++
...laim-self-owned-resume-limbo-escalation.test.ts | 168 +++++++++++++++++++++
packages/engine/src/executor.ts | 5 +
packages/engine/src/run-audit.ts | 1 +
packages/engine/src/self-healing.ts | 72 +++++++++
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
21 files changed, 345 insertions(+), 44 deletions(-)
Fusion-Task-Id: FN-5704
Fusion-Task-Lineage: c8f73d16-d95b-450f-a514-e7d3c2f7aebe
2026-05-29 20:05:14 -07:00
gsxdsm
0605d13ab5
FN-5675: add mission branch strategy and planning breakdown controls
...
Add mission-level branch strategy support and expose planning breakdown controls across mission flows.
- Extend mission/core data models and store logic to track and persist base-branch strategy metadata.
- Update mission API routes and legacy adapters to read/write new mission branch strategy fields.
- Enhance MissionManager and PlanningModeModal UX to configure branch strategy and planning breakdown behavior.
- Add/adjust coverage across core, dashboard, and roadmap plugin tests for mission branch and planning flow behavior.
- Add a changeset and mission docs updates for the new mission branch strategy behavior.
Files changed:
.changeset/fn-5675-mission-branch-strategy.md | 9 +
docs/missions.md | 13 ++
packages/core/src/__tests__/db-migrate.test.ts | 12 +-
.../src/__tests__/db-mission-base-branch.test.ts | 14 +-
packages/core/src/__tests__/db.test.ts | 34 ++--
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
packages/core/src/__tests__/mission-store.test.ts | 148 +++++++++++++-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 9 +-
packages/core/src/index.ts | 1 +
packages/core/src/mission-store.ts | 64 ++++--
packages/core/src/mission-types.ts | 9 +
packages/dashboard/app/api/legacy.ts | 23 ++-
.../dashboard/app/components/MissionManager.tsx | 226 +++++++++++++++++++--
.../dashboard/app/components/PlanningModeModal.tsx | 9 +-
.../components/__tests__/MissionManager.test.tsx | 100 +++++++++
.../PlanningModeModal.planning-flow.test.tsx | 91 +++++++++
packages/dashboard/app/components/mission-types.ts | 4 +
.../dashboard/src/__tests__/mission-e2e.test.ts | 49 ++++-
packages/dashboard/src/mission-routes.ts | 41 +++-
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
25 files changed, 808 insertions(+), 76 deletions(-)
Fusion-Task-Id: FN-5675
Fusion-Task-Lineage: cfd13c13-9eff-4b82-90c3-88505d51bfb2
2026-05-29 15:25:47 -07:00
gsxdsm
bac12d1e28
FN-5695: sync feature assertions for late-added mission features
...
Close the assertion-graph gap by making mission feature assertions store-managed and automatically synchronized.
- add `sourceFeatureId` to contract assertions (types, schema migration, persistence, snapshot restore)
- auto-create/update/delete managed assertions when features are added, edited, or removed in `MissionStore`
- remove duplicate/manual assertion creation from mission routes and rely on centralized store behavior
- expand core, dashboard, engine, and plugin tests plus docs to cover validator behavior for later-added features
Files changed:
docs/missions.md | 11 ++-
docs/storage.md | 2 +-
packages/core/src/__tests__/db-migrate.test.ts | 12 ++--
packages/core/src/__tests__/db.test.ts | 34 ++++-----
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +--
packages/core/src/__tests__/mission-store.test.ts | 82 +++++++++++++++++++---
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 11 ++-
packages/core/src/mission-store.ts | 69 ++++++++++++++++--
packages/core/src/mission-types.ts | 4 ++
.../dashboard/src/__tests__/mission-e2e.test.ts | 70 ++++++++++++------
packages/dashboard/src/mission-routes.ts | 16 +----
.../src/__tests__/mission-execution-loop.test.ts | 46 +++++++++++-
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
18 files changed, 288 insertions(+), 97 deletions(-)
Fusion-Task-Id: FN-5695
Fusion-Task-Lineage: 337f030c-e883-41aa-b982-13ebe45bd5ee
2026-05-29 13:35:13 -07:00
gsxdsm
b265d6b395
FN-5700: remove duplicate task autoMerge declarations
...
Clean up duplicate task autoMerge declarations across core schema, store mapping, and tests.
- Remove the redundant task-level autoMerge field from core Task types and DB schema expectations.
- Keep task hydration autoMerge mapping in a single path and normalize boolean conversion to explicit integer checks.
- Update affected core and roadmap store tests to match the deduplicated autoMerge surface.
Files changed:
packages/core/src/__tests__/db-migrate.test.ts | 12 ++++----
packages/core/src/__tests__/db.test.ts | 34 +++++++++++-----------
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +++----
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 ++--
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 1 -
packages/core/src/store.ts | 4 +--
packages/core/src/types.ts | 5 ----
.../src/store/__tests__/roadmap-store.test.ts | 4 +--
13 files changed, 39 insertions(+), 47 deletions(-)
Fusion-Task-Id: FN-5700
Fusion-Task-Lineage: d2d4d41e-31b1-44a0-9594-9d75056c59a2
2026-05-29 12:25:17 -07:00
gsxdsm
0044c23c64
FN-5699: fix github-copilot device-code login callback handling
...
Prevent dashboard auth initiation from crashing when Copilot emits device-code callbacks.
- wire optional auth callbacks (`onDeviceCode`, `onSelect`) through dashboard auth route typing
- capture and return device-code payload from either `onDeviceCode` or parsed Copilot instructions when `/api/auth/login` starts
- guard auth-init promise settlement to avoid double resolve/reject races and normalize async login errors
- add regression coverage for Copilot device-code callback handling in auth route tests
- sync roadmap plugin schema-version test expectation from 94 to 95 to keep suite assertions aligned
Files changed:
.changeset/fn-5699-copilot-device-code-callback.md | 5 ++
packages/dashboard/src/__tests__/routes-auth.test.ts | 21 ++++++++
packages/dashboard/src/routes.ts | 7 +++
packages/dashboard/src/routes/register-auth-routes.ts | 62 +++++++++++++++++-----
plugins/fusion-plugin-roadmap/src/store/__tests__/roadmap-store.test.ts | 4 +-
5 files changed, 83 insertions(+), 16 deletions(-)
Fusion-Task-Id: FN-5699
Fusion-Task-Lineage: 24bf59f2-3b22-4087-96ca-35409fe00895
2026-05-29 11:22:27 -07:00
gsxdsm
a312da63e4
FN-5674: add per-task auto-merge persistence and resolver
...
Add per-task auto-merge overrides to the core task model and persist/snapshot them through review transitions.
- add Task.autoMerge typing, storage row mapping, updateTask support, and DB schema migration to persist per-task auto-merge state
- snapshot settings.autoMerge onto tasks when moving into in-review when no explicit task override is set
- export resolveEffectiveAutoMerge to consistently resolve task-level override vs global settings precedence
- expand core tests for migration, persistence, movement, and merge behavior; update roadmap schema-version expectation to match the new schema version
Files changed:
packages/core/src/__tests__/db-migrate.test.ts | 10 +++----
packages/core/src/__tests__/db.test.ts | 34 +++++++++++-----------
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +++----
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 ++--
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/store-movement.test.ts | 33 +++++++++++++++++++++
.../core/src/__tests__/store-persistence.test.ts | 18 ++++++++++++
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/__tests__/task-merge.test.ts | 19 ++++++++++++
packages/core/src/db.ts | 9 +++++-
packages/core/src/index.ts | 1 +
packages/core/src/store.ts | 23 +++++++++++++--
packages/core/src/task-merge.ts | 15 +++++++++-
packages/core/src/types.ts | 7 +++++
.../src/store/__tests__/roadmap-store.test.ts | 4 +--
18 files changed, 157 insertions(+), 42 deletions(-)
Fusion-Task-Id: FN-5674
Fusion-Task-Lineage: 8e1e3988-2e41-4d7a-9653-e88c36ec272c
2026-05-29 09:56:28 -07:00
gsxdsm
71e2aec5b7
FN-5663: add goal-citation audit trail to agent reasoning
...
Record goal citation evidence so agent reasoning can be traced end-to-end.
- add core goal citation types, extraction helper, persistence schema, and store APIs for citation create/list workflows
- add CLI support and tests for goal citation flows, including command wiring and regression coverage
- update docs and add a published changeset for @runfusion/fusion describing the new audit-trail capability
Files changed:
.changeset/fn-5663-goal-citation-audit-trail.md | 10 +
docs/agents.md | 15 ++
docs/cli-reference.md | 6 +-
packages/cli/src/__tests__/bin.test.ts | 2 +
.../cli/src/__tests__/goals-citations-cli.test.ts | 82 ++++++++
packages/cli/src/bin.ts | 19 +-
packages/cli/src/commands/goals.ts | 43 +++++
packages/core/src/__tests__/db-migrate.test.ts | 10 +-
packages/core/src/__tests__/db.test.ts | 34 ++--
.../src/__tests__/goal-citation-extractor.test.ts | 56 ++++++
.../src/__tests__/goal-citations-store.test.ts | 175 +++++++++++++++++
packages/core/src/__tests__/goals-schema.test.ts | 2 +-
packages/core/src/__tests__/insight-store.test.ts | 10 +-
packages/core/src/__tests__/mission-store.test.ts | 2 +-
packages/core/src/__tests__/run-audit.test.ts | 2 +-
packages/core/src/__tests__/secrets-schema.test.ts | 6 +-
.../core/src/__tests__/store-merge-queue.test.ts | 2 +-
packages/core/src/__tests__/task-documents.test.ts | 2 +-
packages/core/src/db.ts | 51 ++++-
packages/core/src/goal-citation-extractor.ts | 56 ++++++
packages/core/src/index.ts | 13 ++
packages/core/src/store.ts | 210 ++++++++++++++++++++-
packages/core/src/types.ts | 51 ++++-
.../src/store/__tests__/roadmap-store.test.ts | 4 +-
24 files changed, 817 insertions(+), 46 deletions(-)
Fusion-Task-Id: FN-5663
Fusion-Task-Lineage: 720f2c4b-4363-464a-a76f-472ec6aca136
2026-05-29 08:25:38 -07:00
gsxdsm
a960bb1031
chore(release): v0.37.0
...
Version bump via changesets.
2026-05-29 08:09:33 -07:00
gsxdsm
6c44ed16e7
chore(release): v0.36.0
...
Version bump via changesets.
2026-05-28 23:40:25 -07:00
gsxdsm
2a3535893b
feat(FN-5622): add goals REST API with store accessor and route handlers
...
Introduces a Goals REST API (`GET/POST/PUT /api/goals` and `GET/PUT /api/goals/:id`) backed by a new `@fusion/core` goal store and typed goal types, including comprehensive route and store test coverage. Documentation on architecture and storage is updated to reflect the new domain, and a changeset
Fusion-Task-Id: FN-5622
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
Fusion-Task-Id: FN-5622
2026-05-28 10:32:16 -07:00
gsxdsm
0a04837e7a
chore(release): v0.35.0
...
Version bump via changesets.
2026-05-28 08:20:50 -07:00
gsxdsm
2f80c6ea7b
chore(release): v0.34.0
...
Version bump via changesets.
2026-05-26 23:45:59 -07:00
gsxdsm
5eacd79b43
feat(FN-5584): merge fusion/fn-5584
2026-05-25 15:27:06 -07:00
gsxdsm
2d04cbe09d
chore(release): v0.33.0
...
Version bump via changesets.
2026-05-23 23:12:21 -07:00
Fusion (runfusion.ai)
f6f38676b4
feat(FN-5226): add scope auto-widen layer 2.5 to merger for attribution-bas
...
Merges the Layer 2.5 scope-auto-widen feature (FN-5226) into the merger: a new evaluator module that automatically widens a task's declared file scope based on git attribution prior to the existing scope partition gate, wired into `merger.ts` with full audit taxonomy, persisted task metadata, and re
Fusion-Task-Id: FN-5226
2026-05-21 16:30:31 -07:00
gsxdsm
959f7cd4eb
chore(release): v0.32.0
...
Version bump via changesets.
2026-05-19 22:09:26 -07:00
Fusion (runfusion.ai)
6b24b56b81
feat(FN-5242): add merge queue storage and lease API to task store
...
- docs(FN-5242): complete Step 7 — document merge queue storage
- docs(FN-5242): complete Step 5 — add changeset and exports
- fix(FN-5242): order merge queue audit assertions chronologically
- test(FN-5242): complete Step 4 — cover merge queue leasing
- feat(FN-5242): complete Step 2 — add merge queue lease API
- feat(FN-5242): complete Step 1 — add mergeQueue schema v89
Fusion-Task-Id: FN-5242
2026-05-19 21:14:49 -07:00
Fusion (runfusion.ai)
97f46dbad8
test(FN-5115): complete Step 7 — stabilize migrations and verification
...
Fusion-Task-Id: FN-5115
Fusion-Task-Lineage: 5c3d9d42-9dcd-4ebb-ba10-8a4b14d541dd
2026-05-19 06:51:26 -07:00
Fusion (runfusion.ai)
7380adc7b6
fix(FN-5105): complete Step 6 — stabilize verification gates
...
Fusion-Task-Id: FN-5105
Fusion-Task-Lineage: a876d5eb-d828-415e-b6f0-07bbc8713417
2026-05-19 05:16:37 -07:00
gsxdsm
aad1219037
feat(FN-4967): merge fusion/fn-4967
2026-05-18 15:50:48 -07:00
Fusion (runfusion.ai)
b692656510
feat(FN-4999): recover completion handoff limbo safely
...
- Add completion handoff limbo recovery state to task storage and audit events for bounded self-healing retries
- Requeue eligible in-review tasks stuck after "Task marked done by agent" with grace-period, active-task, and merge-blocker safeguards
- Isolate executor run mutation context per task to prevent cross-task runId attribution leaks in scope-leak and completion logs
- Add reliability and executor regression tests covering limbo recovery, run-context isolation, and updated persistence behavior
Fusion-Task-Id: FN-4999
2026-05-18 05:29:10 -07:00
gsxdsm
f3f4a0b46b
fix(test-isolation): apply central vitest guard to roadmap-dashboard sub-project
...
The roadmap-dashboard Vitest sub-project overrode setupFiles with only
its jsdom helper. Vitest replaces (does not merge) setupFiles in child
projects, so the central isolation guard at
packages/core/src/__test-utils__/vitest-setup.ts was silently bypassed
for the 94 roadmap-dashboard tests, leaving them able to touch the real
project .fusion / $HOME / child processes without the leak-detection
and AI-CLI block.
Prepend the central guard so it loads before the dashboard jsdom setup.
All 94 roadmap-dashboard tests still pass.
2026-05-17 12:33:09 -07:00
Fusion (runfusion.ai)
10455b7992
feat(FN-4898): reconcile task title-id drift in storage migrations
...
Adds a title-id drift detection and reconciliation system to prevent duplicate tasks when task titles change after initial creation. Core adds the `task-title-id-drift.ts` module with `markTitleIdStable` and `resolveTitleIdDrift` logic, wired through `db.ts`, `store.ts`, and `archive-db.ts`, with co
Fusion-Task-Id: FN-4898
2026-05-17 09:51:10 -07:00
gsxdsm
2f2fdd5e42
feat(FN-4803): merge fusion/fn-4803
2026-05-16 16:02:43 -07:00
Fusion
ef1ce1071b
test(FN-4651): complete Step 4/5 verification and docs updates
...
Fusion-Task-Id: FN-4651
Fusion-Task-Lineage: 14d15555-468d-4690-8efd-a09b31b5d407
2026-05-15 12:51:41 -07:00
gsxdsm
6ab2c3430d
chore(release): v0.31.0
...
Version bump via changesets.
2026-05-15 08:41:59 -07:00
Fusion
3648d1e1df
feat(FN-4595): implement cumulative execution timing semantics
...
Fusion-Task-Id: FN-4595
Fusion-Task-Lineage: 73a3d0ad-5c10-4560-aec5-f9d138deeefd
2026-05-15 07:50:34 -07:00
Fusion
6f6850668c
test(FN-4578): complete Step 3 — bump schema version assertions
...
Fusion-Task-Id: FN-4578
Fusion-Task-Lineage: 1be0fa08-4d83-4988-a218-326225dfe4b5
2026-05-15 03:07:36 -07:00
gsxdsm
ed5269d2a2
chore(release): v0.30.0
...
Version bump via changesets.
2026-05-15 01:50:08 -07:00
Fusion
1583eb0023
test(FN-4538): align roadmap schema version assertion
...
Fusion-Task-Id: FN-4538
Fusion-Task-Lineage: 332b4c78-b67f-45d0-9181-0bb539b662c1
2026-05-14 22:24:51 -07:00
Fusion
652e820f7d
feat(FN-4398): complete remaining dashboard visibility and docs
...
Fusion-Task-Id: FN-4398
Fusion-Task-Lineage: 8b898b2e-3468-4fa7-8546-b8f6ba52cf46
2026-05-14 15:25:08 -07:00
Fusion
c39f3cda22
feat(FN-4486): complete Step 3 — add plugin typecheck scripts
...
Fusion-Task-Id: FN-4486
Fusion-Task-Lineage: 7d3b40b2-883f-450c-96ec-796f8af4fa45
2026-05-14 10:23:02 -07:00
Fusion
2cff885d9f
feat(FN-4486): complete Step 2 — type roadmap suggestions option bag
...
Fusion-Task-Id: FN-4486
Fusion-Task-Lineage: 7d3b40b2-883f-450c-96ec-796f8af4fa45
2026-05-14 10:23:02 -07:00