Merge PR
Overview
Merge a prepared PR only after deterministic validation.
Inputs
- •Ask for PR number or URL.
- •If missing, use
.local/prep.envfrom the PR worktree.
Safety
- •Never use
gh pr merge --autoin this flow. - •Never run
git pushdirectly. - •Require
--match-head-commitduring merge.
Execution Contract
- •Validate merge readiness:
sh
scripts/pr-merge verify <PR>
- •Run one-shot deterministic merge:
sh
scripts/pr-merge run <PR>
- •Ensure output reports:
- •
merge_sha=<sha> - •
merge_author_email=<email> - •
comment_url=<url>
Steps
- •Validate artifacts
sh
require=(.local/review.md .local/review.json .local/prep.md .local/prep.env)
for f in "${require[@]}"; do
[ -s "$f" ] || { echo "Missing artifact: $f"; exit 1; }
done
- •Validate checks and branch status
sh
scripts/pr-merge verify <PR> source .local/prep.env
- •Merge deterministically
sh
scripts/pr-merge run <PR>
This performs:
- •deterministic squash merge pinned to
PREP_HEAD_SHA - •co-author trailers for PR author and reviewer
- •post-merge verification of co-author trailers
- •PR comment retry (3 attempts)
- •cleanup after confirmed
MERGED
Go/No-Go Checklist Before Merge
- •All BLOCKER and IMPORTANT findings are resolved.
- •Changelog is updated (mandatory).
- •Required CI checks are green.
- •Branch is not behind
main.
Guardrails
- •End in
MERGED, neverCLOSED. - •Cleanup only after confirmed merge.
Workflow completo
Ver PR_WORKFLOW.md para el flujo completo review → prepare → merge.