kookr-pr-lifecyclelisted
Install: claude install-skill kookr-ai/kookr
# PR Lifecycle
End-to-end workflow for managing a pull request from creation through merge. Consolidates all known patterns and workarounds.
## 1. Pre-Creation Checks
Before creating a PR, run these checks (see also [[pre-pr-review]] and [[kookr-pre-push]]):
```bash
pnpm build:server # must be clean
pnpm check:e2e # must be clean
pnpm test # must be green
git diff --stat # review — no accidental files, no secrets
```
### Pre-`gh pr create` duplicate-guard (mandatory)
Run this **immediately before every `gh pr create`** below. It aborts with a
non-zero exit (no PR is created) if the issue was already auto-closed by an
earlier merge, or the head branch already has an open PR or one merged in the
last 24h — the exact 2026-07-26 race that produced duplicate PRs
(task dd1fbcec, a downstream repo — PRs #1672/#1673/#1674). This gives agents and
rehearsals a mechanical stop, not just prose.
```bash
# --- Pre-`gh pr create` duplicate-guard (issue #1569) ----------------------
# Fails CLOSED: if a gh probe errors (auth / network / rate-limit) the guard
# aborts rather than green-lighting an unverified PR — a rate-limited parallel
# batch is exactly when the duplicate race bites.
pr_create_guard() {
local branch abort n state dupes
branch="$1"; shift # head branch of the PR about to be created
abort=0
for n in "$@"; do # issue number(s) this PR would close
if ! state=$(gh issue view "$n" --json state -q .state 2>/dev/null);