Skip to content
Open
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
16 changes: 14 additions & 2 deletions CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -33,11 +33,19 @@ The repository-owned configuration that defines how Pushgate should evaluate pus
_Avoid_: settings file, config blob

**Target Branch**:
The branch or ref a push is reviewed against when Pushgate determines changed files.
The configured default branch or ref Pushgate starts from when selecting a review target.
_Avoid_: base branch, main branch

**Review Target**:
The branch, ref, or commit selected for this push before Pushgate determines changed files.
_Avoid_: base branch, comparison branch

**Review Target Selection**:
The explicit local choice Pushgate asks for when several review targets could be correct.
_Avoid_: automatic base switching, branch guessing

**Changed File**:
A repository file whose path or content differs from the target branch for the push being evaluated.
A repository file whose path or content differs from the selected review target for the push being evaluated.
_Avoid_: staged file, touched file

**Changed-File Resolution**:
Expand Down Expand Up @@ -100,6 +108,10 @@ _Avoid_: validation rule, safety check
A one-push instruction that bypasses all Pushgate work or only local AI review.
_Avoid_: bypass flag, disable switch

**Review Target Override**:
A one-push instruction that selects the review target without terminal interaction.
_Avoid_: persisted target, saved branch choice

**Warning Confirmation**:
The explicit developer acknowledgement required before Pushgate allows a push to continue after warning results.
_Avoid_: prompt, approval, confirmation dialog
Expand Down
14 changes: 12 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ git push
┌─────────────────────────────────────┐
│ Changed files vs target branch
│ Changed files vs review target
│ (ignore_paths filtering applied) │
└──────────────┬──────────────────────┘
Expand Down Expand Up @@ -137,7 +137,7 @@ ai:
# model: auto

review:
target_branch: main # local ref used to resolve changed files
target_branch: main # configured default review target
context_lines: 10 # surrounding context lines included in the diff
max_lines_for_full_file: 300 # below this threshold, full file contents are sent
# instead of just the diff for richer context
Expand Down Expand Up @@ -228,6 +228,16 @@ git -c pushgate.skip-ai-check=true push
git -c pushgate.skip-all-checks=true push
```

When several review targets could be correct, Pushgate asks before resolving
changed files. This can happen when local `main` is behind `origin/main`, the
destination branch already exists and an incremental review is possible, or a
likely stacked remote branch is found. To select a target for one push without
using the terminal prompt:

```bash
git -c pushgate.review-target=origin/part-1-of-feature-A push
```

## Runner overrides

The installed hook resolves the Pushgate runner in this order:
Expand Down
Loading
Loading