feat: add clean, pr, doctor commands + parallel sync#12
Merged
Conversation
- Process repos concurrently (semaphore of 5) within each sync file, buffering output per repo and printing in order after all complete. Uses sync.WaitGroup + semaphore pattern matching cmd/settings.go. - When --dry-run is set and a missing file has skip_if_exists = true, show the first 5 lines of the scaffolded content as a dimmed preview. Closes #9 Closes #11 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Implements issue #8. Adds the 'gh fleet pr' command that: - Lists all open PRs with fleet/sync-* head branches across managed repos - Groups output by synced file - Supports --merge (with --admin) to squash-merge all listed PRs - Supports --close to close all listed PRs with a comment - Supports --file filter and --dry-run preview - Uses concurrent fetching with semaphore (limit 10) New files: - cmd/pr.go: command implementation - internal/github/pr.go: FleetPR type, ListFleetPRs, FetchFleetPRs, MergePR, and ClosePR helpers Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Implements issue #10. The doctor command validates fleet.toml by checking: - owner is non-empty - catalog.output is set and header file exists - all canon files exist on disk - template files contain extension-template placeholder - template_vars keys are used in template files - no undefined variables referenced in templates Supports --config flag. Prints ✅/❌ checklist and exits 1 on failure. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Closes #7 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
New Commands
fleet clean— Delete stalefleet/sync-*branches across repos. Skips branches with open PRs. Supports--dry-run. Closes feat: addfleet cleancommand to delete stale sync branches #7fleet pr— List, merge, or close all open fleet PRs across repos. Groups by file, supports--filefilter,--merge,--close,--admin. Closes feat: addfleet prcommand to list/manage open fleet PRs #8fleet doctor— Validate fleet.toml configuration: canon files exist, template vars match placeholders, catalog config is complete. Closes feat: addfleet doctorcommand for config validation #10Improvements
sync --dry-runnow previews scaffolded copilot-instructions content for repos missing the file. Closes feat: dry-run should preview scaffolded content for skip_if_exists files #11