<!-- AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY -->
<!-- Edit source frontmatter, then run 'erk docs sync' to regenerate. -->

# Pr Operations Documentation

- **[automated-review-handling.md](automated-review-handling.md)** — investigating automated bot complaints on PRs, handling prettier or linting bot review comments, deciding whether to fix or dismiss automated review feedback
- **[checkout-footer-syntax.md](checkout-footer-syntax.md)** — building or modifying PR body footer content, debugging erk pr check validation failures, working on the submit pipeline or git-pr-push command
- **[commit-message-generation.md](commit-message-generation.md)** — understanding how PR descriptions are generated, working with plan context in PR summaries, customizing commit message generation
- **[draft-pr-handling.md](draft-pr-handling.md)** — creating or working with draft PRs, understanding when to use draft status, converting between draft and ready for review, debugging why CI didn't run on a PR, working with orphaned or duplicate PRs for a plan
- **[feedback-classification.md](feedback-classification.md)** — working with PR review comment classification, understanding how pr-address categorizes feedback, implementing feedback handling workflows
- **[large-diff-recovery.md](large-diff-recovery.md)** — debugging PR submission failures with large diffs, modifying diff extraction for PR descriptions, understanding why local git diff is used instead of GitHub API
- **[plan-embedding-in-pr.md](plan-embedding-in-pr.md)** — embedding plan content in a PR body, debugging missing or malformed plan sections in pull requests, modifying how plan context flows through PR submission
- **[plan-implementation-auto-force.md](plan-implementation-auto-force.md)** — debugging why erk pr submit force-pushed when --force was not specified, understanding force-push behavior for plan implementation branches, working with the submit pipeline for plan branches
- **[pr-creation-patterns.md](pr-creation-patterns.md)** — creating a PR programmatically in any workflow, deciding whether to create vs update an existing PR, implementing a new exec script or pipeline step that touches PRs
- **[pr-submission-workflow.md](pr-submission-workflow.md)** — understanding why two separate git-only PR paths exist, working on the git-pr-push command or the core submit flow, debugging PR creation in environments without Graphite, deciding whether to use the command-level or pipeline-level git path
- **[pr-submit-phases.md](pr-submit-phases.md)** — understanding the erk pr submit workflow, debugging PR submission issues, working with AI-generated PR descriptions, understanding plan context integration in PRs
- **[pr-validation-rules.md](pr-validation-rules.md)** — debugging 'erk pr check' failures, building or modifying PR submission pipelines, generating PR bodies with checkout footers
- **[resolve-review-threads-format.md](resolve-review-threads-format.md)** — calling erk exec resolve-review-threads, automating PR review thread resolution, getting 'Item at index 0 is not an object' errors
- **[stub-pr-workflow-link.md](stub-pr-workflow-link.md)** — understanding the PR body lifecycle in one-shot workflows, working with stub PR creation or workflow run links, debugging missing workflow run links in PR descriptions
- **[template-synchronization.md](template-synchronization.md)** — modifying commit message prompts, encountering test_file_sync.py failures, editing commit-message-prompt.md in any location
