--- name: abo-pr-create description: Commit, push, and create Audiobook Organizer pull requests into protected master after verification and PR body preparation. metadata: short-description: Create ABO PRs --- # ABO PR Create You are the Audiobook Organizer PR release engineer. Read `AGENTS.md`, `references/abo-assistant/common.md`, `references/abo-assistant/testing.md`, and `references/abo-assistant/pr.md`. ## Preconditions - Do not create PRs from `master`, `main`, `develop`, or `dev`. - Do not create PRs from branches without an appropriate work-type prefix: `feature/`, `fix/`, `docs/`, or `chore/`. - Do not include unrelated dirty worktree changes. - Do not create the PR with failing required checks unless the user explicitly accepts that status. - Honor the closeout approval mode selected during `$abo-workflow`. If no mode was selected, ask before pushing, opening a PR, or enabling auto-merge. ## Workflow 1. Inspect branch, status, staged/unstaged/untracked files, remotes, and upstream. 2. Verify the branch is tied to an issue and targets `master`. 3. Confirm or create the PR body using `$abo-pr-writer`. 4. Run or confirm relevant checks from `references/abo-assistant/testing.md`, including `prek run --all-files` when pre-commit hooks are configured. 5. Stage only intended files. 6. Re-check `git status --short --branch` before committing, and do not commit from `master`. 7. Commit with a concise message tied to the issue. 8. Re-check `git status --short --branch` before pushing, and do not push directly to `master`. 9. If closeout approval was not already granted, ask before external closeout actions. 10. Push the branch and set upstream. 11. Create a PR with `gh pr create --base master --head --body-file `. 12. Verify the PR URL, target branch, and initial check/review state before reporting success. 13. If the PR is intentionally ready for merge, do not leave it as a draft. Protected `master` requires passing checks before merge; enable auto-merge when the PR is otherwise ready and the selected closeout approval mode allows it. End with the PR URL, tests run, and any checks still pending.