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
This commit is contained in:
Fusion
2026-05-09 23:16:29 -07:00
committed by gsxdsm
parent 48e6c1e494
commit 647fbf6f82
11 changed files with 467 additions and 6 deletions

View File

@@ -1234,6 +1234,10 @@ Git dashboard routes are registered in `register-git-github.ts`.
| POST | `/api/git/commit` | Create a commit from staged changes with a required message. |
| POST | `/api/git/discard` | Discard working-tree changes for specified files. |
### GitHub tracking lifecycle (task creation)
When a task is created, Fusion only attempts GitHub issue creation if per-task tracking is explicitly enabled (`task.githubTracking.enabled === true`). The lifecycle then resolves the repo in priority order: task override (`repoOverride`) → project `githubTrackingDefaultRepo` → global `githubTrackingDefaultRepo`. If no repo resolves, task creation still succeeds and an activity entry records the skip reason. GitHub API/CLI failures are best-effort only (swallowed with warning), so task creation is never blocked by GitHub availability.
### Worktree model
- Each active task runs in isolated worktree under `.worktrees/*`
- Executor creates branches like `fusion/{task-id}` (`executor.ts`)