Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,12 @@ numeric next development line is tracked in `DEVELOPMENT_VERSION`.
automation can distinguish trust-blocked and not-run projects from tests
that actually executed.

### Added

- Stability compatibility: enroll the new `basectl gh review fetch` and
`basectl gh review prune` command contracts, including the migration path
from ordinary local `pr-*` branches to namespaced detached review refs.

## [1.10.5] - 2026-10-14

### Added
Expand Down
4 changes: 4 additions & 0 deletions cli/bash/commands/basectl/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,10 @@ such command directories exist. Optional utility CLIs such as `caff` and
is set, it takes precedence and must be unset or rotated at its source.
Prefer this command for Base repository GitHub workflows when it supports the
task.
`basectl gh review fetch <number> --name <slug>` creates a detached,
namespaced review checkout without a local `pr-*` branch, and
`basectl gh review prune` previews or removes only verified safe review
checkouts. Legacy local `pr-*` branches remain a separate one-time cleanup.
- `basectl onboard` guides first-run setup around existing setup, check,
doctor, profile, and project-discovery primitives. See
`docs/basectl-onboard.md`.
Expand Down
8 changes: 7 additions & 1 deletion cli/bash/commands/basectl/subcommands/gh.sh
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ source "$BASE_HOME/cli/bash/commands/basectl/subcommands/github_policy.sh"
# shellcheck source=cli/bash/commands/basectl/subcommands/inspection_json.sh
source "$BASE_HOME/cli/bash/commands/basectl/subcommands/inspection_json.sh"
source "$BASE_HOME/cli/bash/commands/basectl/subcommands/gh_branch_worktree.sh"
# shellcheck source=cli/bash/commands/basectl/subcommands/gh_review.sh
source "$BASE_HOME/cli/bash/commands/basectl/subcommands/gh_review.sh"

base_gh_load_module() {
local function_name="$1"
Expand Down Expand Up @@ -66,6 +68,8 @@ Usage:
basectl gh branch stale [--days <days>] [--format <text|json>]
basectl gh branch prune [--dry-run] [--yes] [--remote] [--closed-unmerged]
basectl gh worktree prune [--dry-run] [--yes] [--closed-unmerged]
basectl gh review fetch <number> --name <slug> [--repo <owner/name>] [--root <path>] [--refresh]
basectl gh review prune [--dry-run] [--yes] [--closed-unmerged] [--pr <number>] [--root <path>]

Purpose:
Manage GitHub issues, pull requests, Project metadata, branch naming, and
Expand Down Expand Up @@ -105,7 +109,8 @@ Notes:
body also follows that project policy. Pass --no-fixes to suppress body
injection.
- Pull request implementation work should happen in a dedicated worktree.
- Branch and worktree pruning are dry-run by default and apply only when --yes is passed.
- Review worktrees are detached and use refs/base-review/pr/<number>/<slug>.
- Branch, worktree, and review pruning are dry-run by default and apply only when --yes is passed.
EOF
}

Expand Down Expand Up @@ -1033,6 +1038,7 @@ base_gh_subcommand_main() {
project) base_gh_do_project "$@" ;;
branch) base_gh_do_branch "$@" ;;
worktree) base_gh_do_worktree "$@" ;;
review) base_gh_review_main "$@" ;;
-h|--help|help|"") base_gh_usage ;;
*)
base_gh_usage_error base_gh_usage "Unknown gh area '$area'."
Expand Down
Loading
Loading