Fusion Agent
7563fcfe1b
FN-037: configure AI-authored task output language
...
Configure a persisted output-language setting and apply it across AI-authored task text and workflow summaries.
- Add project/global output-language settings with defaults, validation, UI controls, translations, and documentation.
- Propagate the selected language through planning, execution, review, summaries, and task creation.
- Add focused coverage for language resolution and update affected dashboard, engine, and localization tests.
Files changed:
.changeset/fn-037-task-output-language.md | 7 ++
docs/settings-reference.md | 4 +
docs/task-management.md | 4 +
.../core/src/__tests__/ai-output-language.test.ts | 21 +++++
packages/core/src/ai/ai-output-language.ts | 42 +++++++++
packages/core/src/ai/ai-summarize.ts | 16 +++-
packages/core/src/config/settings-schema.ts | 2 +
packages/core/src/index.gate.ts | 2 +
packages/core/src/index.ts | 2 +
packages/core/src/task-store/settings-ops.ts | 7 ++
packages/core/src/task-store/task-creation.ts | 4 +
packages/core/src/types/settings/settings-scope.ts | 2 +
.../app/__tests__/settings-sections.test.tsx | 21 +++--
.../__tests__/SettingsModal.models-auth.test.tsx | 10 +-
.../app/components/settings/section-keys.ts | 2 +-
.../sections/ProjectModelsSection.search.ts | 13 ++-
.../settings/sections/ProjectModelsSection.tsx | 28 ++++--
.../settings-default-descriptions.test.tsx | 4 +-
.../src/__tests__/github-tracking.test.ts | 4 +-
.../__tests__/planning-prompt-resolution.test.ts | 29 ++++--
.../src/__tests__/routes-planning.test.ts | 32 ++++++-
packages/dashboard/src/ai-session-store.ts | 15 ++-
packages/dashboard/src/github-tracking.ts | 3 +
packages/dashboard/src/planning.ts | 75 +++++++++++++--
.../routes/register-ai-text-assistant-routes.ts | 11 ++-
.../src/routes/register-planning-subtask-routes.ts | 6 +-
.../src/routes/register-task-workflow-routes.ts | 9 +-
packages/dashboard/src/shared/settings-sections.ts | 2 +-
.../__tests__/ce-workflow-step-executor.test.ts | 45 ++++++++-
.../__tests__/executor-review-artifacts.test.ts | 65 +++++++++++++
packages/engine/src/__tests__/triage.test.ts | 7 +-
.../src/__tests__/workflow-task-runtime.test.ts | 23 +++++
.../create-authoritative-workflow-primitives.ts | 14 ++-
.../create-authoritative-workflow-seams.ts | 17 +++-
.../engine/src/executor/execute-workflow-graph.ts | 19 +++-
.../engine/src/executor/execute-workflow-step.ts | 13 ++-
packages/engine/src/executor/execution-prompt.ts | 10 +-
.../engine/src/executor/handoff-task-to-review.ts | 10 +-
.../engine/src/executor/run-graph-custom-node.ts | 6 +-
.../src/executor/task-executor-graph-facades.ts | 8 +-
packages/engine/src/triage.ts | 35 ++-----
.../src/workflows/workflow-completion-summary.ts | 101 ++++++++++++++++++---
.../engine/src/workflows/workflow-task-runtime.ts | 12 +++
packages/i18n/locales/en/app.json | 7 +-
packages/i18n/locales/es/app.json | 7 +-
packages/i18n/locales/fr/app.json | 7 +-
packages/i18n/locales/ko/app.json | 7 +-
packages/i18n/locales/pt-BR/app.json | 14 ++-
packages/i18n/locales/zh-CN/app.json | 7 +-
packages/i18n/locales/zh-TW/app.json | 7 +-
packages/i18n/src/resources.d.ts | 13 ++-
51 files changed, 680 insertions(+), 151 deletions(-)
Fusion-Task-Id: FN-037
Fusion-Task-Lineage: 968a707e-7ffe-43ba-b983-d679b031f7a5
Co-authored-by: Fusion <noreply@runfusion.ai >
2026-08-20 03:57:23 +00:00
Fusion Agent
a81c9b80d9
FN-036: make task title summarization project-controlled
...
Make generated task titles project-controlled while preserving useful summaries at any length.
- Add project-level title summarization settings and UI controls.
- Make summarization length-independent across task creation, planning, GitHub, and agent flows.
- Update localization, documentation, and regression coverage.
Files changed:
.../fn-036-systematic-title-summarization.md | 7 +
docs/settings-reference.md | 2 +-
docs/storage.md | 2 +-
docs/task-management.md | 4 +-
packages/core/src/__tests__/ai-summarize.test.ts | 34 ++--
.../__tests__/store-create-intake-column.test.ts | 186 +++++++++++++++++++++
packages/core/src/ai/ai-summarize.ts | 32 ++--
packages/core/src/task-store/task-creation.ts | 83 +++++++--
packages/core/src/types/settings/settings-scope.ts | 9 +-
packages/core/src/types/task/task-core.ts | 2 +-
.../dashboard/app/__tests__/api-projects.test.ts | 4 +-
.../app/__tests__/settings-sections.test.tsx | 2 +-
.../dashboard/app/api/planning/ai-summarize.ts | 2 +-
.../__tests__/SettingsModal.search.test.ts | 5 +-
.../search/__tests__/settings-search-index.test.ts | 2 +-
.../sections/ProjectModelsSection.search.ts | 4 +-
.../settings/sections/ProjectModelsSection.tsx | 11 +-
.../src/__tests__/github-tracking.test.ts | 12 +-
.../src/__tests__/routes-planning.test.ts | 28 +++-
.../dashboard/src/__tests__/routes-tasks.test.ts | 19 +++
packages/dashboard/src/github-tracking.ts | 9 +-
.../routes/register-ai-text-assistant-routes.ts | 7 +-
.../src/__tests__/agent-tools-delegation.test.ts | 1 +
.../src/__tests__/heartbeat-executor.test.ts | 1 -
packages/engine/src/__tests__/triage.test.ts | 7 +-
packages/engine/src/agent-tools.ts | 7 +-
packages/engine/src/triage.ts | 12 +-
packages/i18n/locales/en/app.json | 6 +-
packages/i18n/locales/pt-BR/app.json | 8 +-
packages/i18n/src/resources.d.ts | 6 +-
30 files changed, 418 insertions(+), 96 deletions(-)
Fusion-Task-Id: FN-036
Fusion-Task-Lineage: df603386-e63e-4be8-a8e5-bae9aa1d4a80
Co-authored-by: Fusion <noreply@runfusion.ai >
2026-08-20 03:57:23 +00:00
gsxdsm
987878bd17
fix: close Fusion tracking issues created after a task is already done
...
Late-created GitHub tracking issues never got a task:moved close, and the
reconcile sweep only scanned the oldest 200 terminal rows.
2026-08-15 15:33:40 -07:00
gsxdsm
d09e3e5554
FN-8861: preserve GitHub issue context in planning
...
Preserve imported GitHub issue provenance through Planning Mode and source tracking.
- Pass structured GitHub issue context from import through planning task creation.
- Append source-issue metadata to planned tasks and safely link each source issue once.
- Cover provenance persistence, duplicate suppression, and planning UI handoff.
Files changed:
.changeset/fn-8861-planning-source-issue.md | 7 ++
docs/dashboard-guide.md | 8 +-
docs/settings-reference.md | 2 +-
packages/dashboard/app/App.tsx | 4 +-
packages/dashboard/app/api/planning/planning.ts | 3 +-
packages/dashboard/app/components/AppModals.tsx | 2 +-
.../dashboard/app/components/GitHubImportModal.tsx | 13 +--
.../dashboard/app/components/PlanningModeModal.tsx | 5 +-
.../__tests__/GitHubImportModal.test.tsx | 34 ++++++
.../app/components/dashboard/PlanningKeepAlive.tsx | 1 +
.../dashboard/app/components/dashboard/types.ts | 2 +-
.../app/hooks/__tests__/useModalManager.test.ts | 26 ++++-
packages/dashboard/app/hooks/useModalManager.ts | 17 ++-
.../src/__tests__/github-tracking.test.ts | 125 ++++++++++++++++++++-
packages/dashboard/src/__tests__/github.test.ts | 78 ++++++++++++-
.../__tests__/planning-e2e-plan-creation.test.ts | 49 +++++++-
.../src/__tests__/planning-source-issue.test.ts | 61 ++++++++++
.../src/__tests__/routes-planning-tracking.test.ts | 118 ++++++++++++++++++-
packages/dashboard/src/github-tracking.ts | 112 ++++++++++++++++--
packages/dashboard/src/github.ts | 50 +++++++++
packages/dashboard/src/planning.ts | 48 +++++++-
.../dashboard/src/routes/register-git-github.ts | 31 +----
.../src/routes/register-planning-subtask-routes.ts | 69 +++++++++++-
23 files changed, 785 insertions(+), 80 deletions(-)
Fusion-Task-Id: FN-8861
Fusion-Task-Lineage: b2433f70-9c1b-47ef-bafa-0434861cd0a8
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-08-09 07:06:06 -07:00
gsxdsm
45e5a269e8
fix(FN-7579): stop tracking-issue dedup from linking new tasks to stale issues
...
GitHub tracking-issue creation reused old/closed issues via dedup:
- searched state:"all", so a resolved issue from an unrelated task could be reused
- accepted keyword-only matches (generic shared identifiers) with no file overlap
Dedup now only reuses OPEN issues and requires a File-Scope path overlap;
without an open path-overlapping issue a fresh tracking issue is always created.
Adds two regression tests asserting closed and keyword-only matches are not reused.
Fusion-Task-Id: FN-7579
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-07-05 11:31:48 -07:00
gsxdsm
b4230c06b1
FN-5835: reuse imported GitHub source issue tracking
...
Reuse the existing imported source issue record when tracking GitHub work instead of creating duplicate entries.
- update GitHub tracking logic to detect and reuse previously imported source issues
- add/expand dashboard tracking tests to cover duplicate-import and reuse behavior
- add a changeset documenting the FN-5835 tracking fix for @runfusion/fusion
Files changed:
.changeset/fn-5835-source-issue-tracking.md | 5 ++
.../src/__tests__/github-tracking.test.ts | 100 ++++++++++++++++++---
packages/dashboard/src/github-tracking.ts | 32 +++++++
3 files changed, 126 insertions(+), 11 deletions(-)
Fusion-Task-Id: FN-5835
Fusion-Task-Lineage: d0827711-8bfb-471c-b2c4-69324da33373
2026-06-01 08:13:36 -07:00
gsxdsm
e33159e91b
feat(FN-4919): merge fusion/fn-4919
2026-05-18 04:01:51 -07:00
Fusion (runfusion.ai)
f60dde01fe
feat(FN-4777): complete Step 3 — wire GitHub tracking dedup pre-check
...
Fusion-Task-Id: FN-4777
Fusion-Task-Lineage: ed00f639-c928-4c14-be1f-2b43db6022c7
2026-05-16 12:56:31 -07:00
Fusion (runfusion.ai)
b1209b1859
feat(FN-4740): persist github tracking enabled state in dashboard
...
Adds persistence for the GitHub tracking enabled state with test coverage in the dashboard hook, and includes a changeset for the `@runfusion/fusion` package.
Fusion-Task-Id: FN-4740
2026-05-16 09:36:19 -07:00
Fusion (runfusion.ai)
caec731cc6
fix(FN-4725): make maybeCreateTrackingIssue idempotent via store re-read
...
Fusion-Task-Id: FN-4725
Fusion-Task-Lineage: 91058db5-9a5b-4506-89f4-8abf89b28862
2026-05-16 07:41:47 -07:00
Fusion
991776b80c
feat(FN-4271): create tracking issue for github-imported tasks
...
Adds a tracking issue mechanism for GitHub-imported tasks, creating an internal Fusion task to track the import lifecycle. The TaskCard component gains visibility into tracking status, backed by new tests in both TaskCard and GitHub tracking modules.
Fusion-Task-Id: FN-4271
2026-05-13 06:29:34 -07:00
Fusion
a159e9772d
feat(FN-4184): defer untitled issues in github-tracking until they receive
...
Add changeset and implementation to defer untitled GitHub tracking issues, with corresponding tests covering the no-title case.
Fusion-Task-Id: FN-4184
2026-05-12 17:04:33 -07:00
Fusion
9a114c14fb
feat(FN-4148): derive GitHub tracking titles from task descriptions
...
Adds GitHub tracking title derivation so tasks can display meaningful titles when PR/issue tracking data is incomplete, falling back to the task description. The core implementation lives in `github-tracking.ts` with expanded test coverage across the tracking suite, and the feature is wired into pla
Fusion-Task-Id: FN-4148
Fusion-Task-Lineage: d57c6279-1b4f-4ade-9c3f-e20ac391ea45
2026-05-12 17:03:10 -07:00
Fusion
8f2b370b9d
feat(FN-4116): fix github tracking issue creation
...
Fixes GitHub CLI issue creation by repairing the `gh issue create` call in the dashboard and adds logging for tracking failures, with tests covering both the core GitHub module and the tracking layer.
Fusion-Task-Id: FN-4116
2026-05-12 08:28:44 -07:00
Fusion
2535de9f0f
feat(FN-4032): add tracking retry with actionable create issue error in tas
...
The merge adds a GitHub integration retry lifecycle to the task tracking system, including an actionable retry mechanism for failed issue creation, fixes to tracking and auth retry flow, and corresponding tests in the dashboard and engine packages. Documentation is updated in `docs/architecture.md`
Fusion-Task-Id: FN-4032
2026-05-11 16:33:16 -07:00
Fusion
48f0353b7f
feat(FN-3943): align tracking resolution to honor task-level override seman
...
Aligned GitHub tracking resolution to resolve task-level overrides, with regression tests covering the create-flow path and documentation of the override semantics.
Fusion-Task-Id: FN-3943
2026-05-10 15:33:25 -07:00
Fusion
95f6cd8457
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
a9ecc8ae2f
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
647fbf6f82
feat(FN-3870): wire GitHub tracking issue creation
...
Implements GitHub tracking issue creation (FN-3870) for the dashboard, wiring new routes for planning subtasks and task workflows, adding a dedicated `github-tracking` module with issue creation and auth fallback logic, and updating the main `github.ts` with enhanced capabilities — backed by compreh
Fusion-Task-Id: FN-3870
2026-05-09 23:22:24 -07:00