← ClaudeAtlas

sync-statuslisted

Diagnostic that suggests when an active phase is ready for /phase-gate, and lists orphan tracker issues missing from plans/phases.yaml. Read-only — does not mutate phases.yaml.
firatcand/forge · ★ 9 · AI & Automation · score 75
Install: claude install-skill firatcand/forge
# /sync-status > **Status queries always hit the tracker. `plans/phases.yaml` is a stale cache.** See your project `CLAUDE.md` §Source of truth. Read-only diagnostic that answers two questions: 1. **Is any active phase ready for `/phase-gate`?** For each `status: active` phase in `plans/phases.yaml`, check whether every task's `tracker_issue_id` is absent from the tracker's active set. If so, suggest running `/phase-gate <phase-id>` — never auto-advance. 2. **Are there orphan tracker issues?** List tracker issues that are active in the tracker but have no matching `tracker_issue_id` line anywhere in `plans/phases.yaml`. These are usually out-of-band hot-fixes the operator may want to backfill. The skill never writes to `phases.yaml`. Per-task status drift detection is not possible because `phases.yaml` has no per-task `status` field — that's intentional; the tracker is the per-task status authority. See `spec/ORCHESTRATOR.md §CLI surface` (FORGE-20 readiness algorithm) for the underlying design constraint. ## Preflight 1. Read `.forge/settings.yaml`. Abort if `tracker.type` is unset with: "No tracker configured. Run `forge init` first." 2. Per-tracker reachability probe (Linear MCP / `gh auth status` / Notion MCP) — same matrix as `/push-to-tracker` Step 1. Abort with the setup hint if unavailable. There is no offline fallback. ## Steps 1. **Verify `plans/phases.yaml` exists.** If not, abort with: "No `plans/phases.yaml` found. Run `/decompose` to generate one." 2. *