gsxdsm
c978cdbacf
FN-8687: close imported GitLab issues on task deletion
...
Add GitLab close-on-delete behavior for imported source issues.
- Close linked GitLab issues by default while honoring leave and delete action semantics.
- Preserve split-close ownership, skip merge requests, and limit malformed tracking fallback to deletion.
- Document the lifecycle contract and add dashboard coverage.
Files changed:
.changeset/fn-8687-gitlab-close-on-delete.md | 7 ++
docs/gitlab-parity-inventory.md | 20 +++-
docs/settings-reference.md | 1 +
docs/task-management.md | 5 +-
.../src/__tests__/gitlab-delete-close.test.ts | 101 +++++++++++++++++++++
.../src/__tests__/gitlab-lifecycle.test.ts | 35 +++++++
.../gitlab-parity-inventory-documentation.test.ts | 7 +-
.../__tests__/gitlab-source-issue-close.test.ts | 8 ++
.../src/__tests__/gitlab-split-close.test.ts | 12 +++
packages/dashboard/src/gitlab-delete-close.ts | 90 ++++++++++++++++++
packages/dashboard/src/gitlab-lifecycle.ts | 33 +++++--
packages/dashboard/src/gitlab-split-close.ts | 2 +-
packages/dashboard/src/index.ts | 1 +
.../dashboard/src/routes/register-git-github.ts | 7 ++
14 files changed, 313 insertions(+), 16 deletions(-)
Fusion-Task-Id: FN-8687
Fusion-Task-Lineage: 48bc9159-fc35-43cb-b72e-1b6260d9e3cb
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-08-01 04:08:57 -07:00
gsxdsm
23c9992e7b
FN-8682: add GitLab split-close issue comments
...
GitLab source issues now receive an explanatory split handoff before closure.
- Add a GitLab split-close service that posts normalized child-task notes before closing source issues.
- Wire split-close handling across project stores while preserving merge-request and failure safeguards.
- Document GitLab lifecycle parity and cover split-close behavior with tests.
Files changed:
.changeset/fn-8682-gitlab-split-close-comment.md | 7 ++
docs/gitlab-parity-inventory.md | 2 +-
docs/task-management.md | 1 +
.../gitlab-parity-inventory-documentation.test.ts | 2 +
.../src/__tests__/gitlab-split-close.test.ts | 113 +++++++++++++++++++++
packages/dashboard/src/gitlab-lifecycle.ts | 6 +-
packages/dashboard/src/gitlab-split-close.ts | 98 ++++++++++++++++++
packages/dashboard/src/gitlab-tracking-state.ts | 6 +-
packages/dashboard/src/index.ts | 1 +
.../dashboard/src/routes/register-git-github.ts | 6 ++
10 files changed, 237 insertions(+), 5 deletions(-)
Fusion-Task-Id: FN-8682
Fusion-Task-Lineage: 8eca9888-b10a-4ea9-b9d3-fc09a39022ab
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-08-01 03:19:00 -07:00
gsxdsm
10b80453c4
FN-7978: share GitHub import dedup via sourceIssue-first helper
...
Unify GitHub issue import deduplication so prior imports stay marked after description edits or owner/repo casing changes.
- Extract shared buildGitHubIssueSource and isGitHubIssueAlreadyImported helpers in dashboard github.ts (sourceIssue-first, case-insensitive repo, sourceMetadata + description URL fallbacks)
- Route CLI import paths, extension tools, and dashboard single/batch import through the shared helpers
- Drop local description-URL-regex-only importedUrls dedup; list existing tasks with slim:false for full provenance
- Add regression coverage and changeset for the operator-facing fix
Files changed:
.changeset/fn-7978-github-import-dedup.md | 7 ++
docs/gitlab-parity-inventory.md | 2 +-
packages/cli/src/__tests__/extension.test.ts | 12 ++--
.../task-command-github-import-tracking.test.ts | 6 ++
packages/cli/src/commands/__tests__/task.test.ts | 36 +++++++---
packages/cli/src/commands/task.ts | 82 +++++++++-------------
packages/cli/src/extension.ts | 35 ++-------
packages/dashboard/src/__tests__/github.test.ts | 22 +++++-
.../dashboard/src/__tests__/routes-github.test.ts | 8 +--
packages/dashboard/src/github.ts | 62 +++++++++++++++-
packages/dashboard/src/index.ts | 2 +-
.../dashboard/src/routes/register-git-github.ts | 33 +--------
12 files changed, 174 insertions(+), 133 deletions(-)
Fusion-Task-Id: FN-7978
Fusion-Task-Lineage: 44f3d555-49fb-41e2-87d0-0a722462f132
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-15 15:16:19 -07:00
gsxdsm
78d4db94d8
FN-7575: add release version lines to Fusion self-repo done comments
...
Extends GitHubIssueCommentService so task-close comments on issues in the runfusion/fusion repo itself append both a current-version and target-next-minor-release line, while comments on all other linked repos stay byte-for-byte unchanged.
- Add isFusionSelfRepo() and computeNextMinorVersion() helpers to github-issue-comment.ts
- Append "Current version: v{current}" and "Target release: v{next-minor}" lines only when the linked source issue's repo is runfusion/fusion (case-insensitive)
- Fall back silently (no version lines) when the resolved version is unparseable or the unresolved 0.0.0 sentinel
- Add changeset (minor) documenting the new behavior
- Update docs/settings-reference.md and docs/gitlab-parity-inventory.md
- Expand github-issue-comment.test.ts coverage for self-repo vs other-repo behavior and version edge cases
Files changed:
.changeset/fn-7575-release-version-comment.md | 7 +
docs/gitlab-parity-inventory.md | 2 +-
docs/settings-reference.md | 2 +-
packages/dashboard/src/__tests__/github-issue-comment.test.ts | 142 ++++++++++++++++++++-
packages/dashboard/src/github-issue-comment.ts | 69 +++++++++-
5 files changed, 212 insertions(+), 10 deletions(-)
Fusion-Task-Id: FN-7575
Fusion-Task-Lineage: b7cf7e6f-8d96-4442-8595-5d54ea911481
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-05 11:31:48 -07:00
gsxdsm
f9733341b5
FN-7453: add GitLab enablement controls
...
Add a settings-controlled GitLab enablement path while preserving saved GitLab configuration.
- Add project and global GitLab enable settings with collapsible Settings UI for URL and token controls.
- Gate GitLab auth, import loading, and import actions when GitLab integration is disabled.
- Preserve global GitLab values separately during global settings saves and document the new behavior.
- Cover enablement resolution, settings save behavior, disabled import UI, and GitLab route/auth gating with tests.
Files changed:
.changeset/fn-7453-gitlab-enable-disclosure.md | 7 ++
docs/dashboard-guide.md | 7 ++
docs/gitlab-parity-inventory.md | 1 +
docs/settings-reference.md | 4 ++
docs/task-management.md | 6 +-
packages/core/src/__tests__/gitlab-config.test.ts | 17 ++++-
.../core/src/__tests__/settings-parity.test.ts | 18 +++--
packages/core/src/gitlab-config.ts | 15 ++++-
packages/core/src/index.ts | 2 +-
packages/core/src/settings-schema.ts | 2 +
packages/core/src/types.ts | 5 ++
.../app/__tests__/settings-save-split.test.ts | 20 +++---
.../dashboard/app/components/GitHubImportModal.tsx | 43 +++++++++---
.../dashboard/app/components/SettingsModal.css | 77 +++++++++++++++++++++
.../dashboard/app/components/SettingsModal.tsx | 34 ++++++++-
.../__tests__/GitHubImportModal.test.tsx | 19 ++++++
.../__tests__/SettingsModal.general.test.tsx | 78 ++++++++++++++++++++++
.../SettingsModal.scheduling-merge.test.tsx | 7 +-
.../app/components/settings/save-split.ts | 5 +-
.../settings/sections/GeneralSection.tsx | 36 ++++++----
.../settings/sections/GlobalGeneralSection.tsx | 71 ++++++++++++--------
.../components/settings/sections/MergeSection.tsx | 44 +++++++-----
.../dashboard/src/__tests__/gitlab-auth.test.ts | 20 ++++++
.../dashboard/src/__tests__/routes-gitlab.test.ts | 11 +++
packages/dashboard/src/gitlab-auth.ts | 11 ++-
25 files changed, 458 insertions(+), 102 deletions(-)
Fusion-Task-Id: FN-7453
Fusion-Task-Lineage: 81fbd39d-675f-49d6-8d13-b7fcb4d25658
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 19:01:09 -07:00
gsxdsm
865dec235b
FN-7424: add GitLab task imports
...
Adds GitLab-backed task import flows across the CLI, extension, API, and dashboard.
- Add GitLab client normalization, provenance, duplicate detection, and import routes for project issues, group issues, and merge requests.
- Extend the dashboard import modal with a GitLab provider, resource tabs, previews, imported-state detection, and import actions.
- Add CLI and extension task import commands plus usage event/gating classifications and operator documentation.
- Cover GitLab fetch/import behavior with dashboard, CLI, and gating tests.
Files changed:
.changeset/fn-7424-gitlab-imports.md | 7 +
docs/cli-reference.md | 11 +-
docs/gitlab-parity-inventory.md | 10 +-
docs/task-management.md | 6 +-
packages/cli/skill/fusion/SKILL.md | 2 +-
.../cli/skill/fusion/references/extension-tools.md | 60 ++++
.../skill/fusion/references/fusion-capabilities.md | 6 +
packages/cli/src/__tests__/extension.test.ts | 6 +
.../__tests__/task-command-gitlab-import.test.ts | 97 ++++++
packages/cli/src/bin.ts | 25 +-
packages/cli/src/commands/task.ts | 58 ++++
packages/cli/src/extension.ts | 106 +++++++
packages/core/src/__tests__/usage-events.test.ts | 2 +
packages/core/src/types.ts | 7 +
packages/core/src/usage-events.ts | 3 +
packages/dashboard/app/api/legacy.ts | 52 ++++
.../dashboard/app/components/GitHubImportModal.css | 41 +++
.../dashboard/app/components/GitHubImportModal.tsx | 143 ++++++++-
.../__tests__/GitHubImportModal.test.tsx | 33 ++
packages/dashboard/src/__tests__/gitlab.test.ts | 56 ++++
.../dashboard/src/__tests__/routes-gitlab.test.ts | 99 ++++++
packages/dashboard/src/gitlab.ts | 334 +++++++++++++++++++++
packages/dashboard/src/index.ts | 15 +
packages/dashboard/src/routes.ts | 2 +
packages/dashboard/src/routes/register-gitlab.ts | 192 ++++++++++++
.../engine/src/__tests__/agent-action-gate.test.ts | 4 +
.../gating-classifications-provisioning.test.ts | 13 +-
.../src/__tests__/gating-classifications.test.ts | 6 +
packages/engine/src/gating-classifications.ts | 9 +
29 files changed, 1388 insertions(+), 17 deletions(-)
Fusion-Task-Id: FN-7424
Fusion-Task-Lineage: 8012425c-21d5-4b20-adb7-07d2e5aa1cef
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 11:38:34 -07:00
gsxdsm
fafe4c9d9f
FN-7423: add GitLab access token settings
...
Add GitLab access-token configuration and auth resolution for future HTTP API integrations.
- Add personal, project, and group GitLab token settings at project and global scope.
- Resolve configured tokens with GITLAB_TOKEN fallback and PRIVATE-TOKEN metadata without requiring glab.
- Document required GitLab scopes and update parity handoff notes.
- Cover settings save splitting, parity, modal rendering, and auth resolution with tests.
Files changed:
.changeset/fn-7423-gitlab-access-tokens.md | 7 ++
docs/gitlab-parity-inventory.md | 10 +-
docs/settings-reference.md | 6 +-
docs/task-management.md | 2 +-
.../core/src/__tests__/settings-parity.test.ts | 28 +++--
packages/core/src/index.ts | 2 +-
packages/core/src/settings-schema.ts | 4 +
packages/core/src/types.ts | 17 ++-
.../app/__tests__/settings-save-split.test.ts | 69 ++++++++++++
.../dashboard/app/components/SettingsModal.tsx | 2 +
.../SettingsModal.scheduling-merge.test.tsx | 57 ++++++++++
.../app/components/settings/save-split.ts | 6 +-
.../settings/sections/GlobalGeneralSection.tsx | 18 ++-
.../components/settings/sections/MergeSection.tsx | 22 ++++
.../dashboard/src/__tests__/gitlab-auth.test.ts | 99 +++++++++++++++++
packages/dashboard/src/gitlab-auth.ts | 123 +++++++++++++++++++++
16 files changed, 449 insertions(+), 23 deletions(-)
Fusion-Task-Id: FN-7423
Fusion-Task-Lineage: f14ae52b-b730-44b0-8bad-54945c61d009
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 11:38:33 -07:00
gsxdsm
7302d22b9d
FN-7421: document GitLab parity inventory
...
Document the GitLab parity implementation inventory and guardrails for downstream work.
- Add a GitLab parity inventory covering import, tracking, comments, auto-close, auth, CLI/tools, Command Center, and signals surfaces.
- Link the inventory from existing settings, signals, and task-management documentation.
- Add a documentation contract test for required GitLab assumptions and explicit exclusions.
Files changed:
docs/gitlab-parity-inventory.md | 106 +++++++++++++++++++++
docs/settings-reference.md | 3 +
docs/signals-connectors.md | 2 +
docs/task-management.md | 2 +
.../gitlab-parity-inventory-documentation.test.ts | 70 ++++++++++++++
5 files changed, 183 insertions(+)
Fusion-Task-Id: FN-7421
Fusion-Task-Lineage: 3b16cb60-11d6-4dc5-a374-23e515dc8b31
Co-authored-by: Fusion (runfusion.ai) <noreply@runfusion.ai >
2026-07-02 11:38:32 -07:00