Skip to content
Merged
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
10 changes: 10 additions & 0 deletions src/recipes/software-delivery/skills/github-pr-workflow/skill.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,16 @@ When a PR is opened during a session, retrieve the channel ID and thread timesta

If there was no Slack thread (the PR was opened from a Linear ticket alone, or it's a Sam-noticed self-maintenance PR), write `Discussion: none (Sam-noticed during <session_id> on <date>)` so the chain knows there's no thread to ack into and Sam can still attribute the work.

## Branch protection & auto-merge limits (GitHub Free)

Under GitHub's organization Free plan, branch protection rules (including required status checks and required reviews) are **silently and permanently deleted** when a repository's visibility is changed to private (which might occur temporarily to handle security incidents or credential rotations).

The consequence is that `gh pr merge --auto --squash` will see zero branch protection requirements and will **merge the PR instantly** upon creation, bypassing all human review and CI checks.

To guard against unreviewed merges:
- Before running or relying on `--auto` merge as a review gate on a newly privatized repository, verify if branch protection is actually active (e.g. by running `gh api repos/<owner>/<repo>/branches/main/protection`).
- If branch protection has been deleted, do NOT use auto-merge; instead, wait for explicit manual review and merge, or coordinate with the operator to restore the branch protection rules.

## Labels (sam repo only)

When opening a PR on `dembrane/sam`, attach a label per source area the diff touches. This is how reviewers see the tier at a glance without opening the file list.
Expand Down
Loading