landing-the-plane
Checklist for finishing work, pushing a branch, and opening a ready-for-review PR with tests and tracker updates.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Checklist for finishing work, pushing a branch, and opening a ready-for-review PR with tests and tracker updates.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use the local pr-watch CLI/daemon to watch GitHub pull request activity, wait for PR changes, and fetch normalized event deltas without manually managing webhook forwarding or event subscriptions.
One lifecycle for Lambda repos: choose a bd task, start work, land the PR, and watch GitHub via Dumbwaiter MCP until it merges.
Default Python stack for Lambda: uv + Astral tools, typed code, schemas, and Hypothesis.
How to use bd (beads) for issue tracking, ready work, status updates, and comments in this repo.
Zero Framework Cognition Principles
Provider-agnostic wait-for-change skill that uses the Dumbwaiter MCP server to wait on PR events (GitHub first) via wait.start/status/cancel/await, with progress notifications and durable state.
| name | landing-the-plane |
| description | Checklist for finishing work, pushing a branch, and opening a ready-for-review PR with tests and tracker updates. |
When someone asks you to "land the plane", they want you to wrap up the current body of work cleanly—no loose ends, no hidden surprises. Use this checklist any time that phrase shows up.
Non-negotiable: landing the plane always ends with a pushed branch and an open (non-draft) pull request. Even if the work started on
main, cut a feature branch, push it, create the PR, and flip it out of draft before you check this box.
proptest! so the failing input can shrink and be re-run later.@codex review (or ping the human reviewer) to kick off the next review once the fix is in place.If the work touches any multi-item “apply/upgrade” loop, add property/integration tests that prove these invariants:
Reject “done” until these tests exist and pass on CI across all OS targets in the matrix.
.gitignore is correct.git status -sb, git stash list, and git branch --merged to ensure there are no forgotten stashes or half-merged branches related to the work.main (or git pull --rebase) so the PR is merge-ready.gh pr create with an informative title/body summarizing the change, testing, and linked bd issues. Landing the plane is not complete until a ready-for-review PR exists (even if you iterated on main, create a branch at the end and push that history), but usually we will have created a draft PR already.scripts/pr-ready.sh
Or via GitHub CLI directly: gh pr ready.@codex review to trigger the automated review. If Codex leaves feedback, address every comment, push the fixes, reply directly on each feedback thread with the commit hash (or summary) that resolves it, and comment @codex review again until Codex reports no remaining issues.scripts/codex-unreplied.sh [<pr-number>]
Reply inline or resolve threads, then re-run to ensure it prints nothing.@codex review.bd update calls (notes/status changes) before your final commit/push so .beads/issues.jsonl in the PR matches the tracker state.GH_WAIT_INTERVAL=15 ./scripts/gh-wait-for-merge.py --interval 15 (or similar) at the end. Let it surface any failing checks, fixing issues one-by-one until it exits cleanly. Only stop the script early if you have approval to hand off unresolved failures.gh when you think you're done; it's not fully done until the reviewer reports no issues found.#123.Working through this list ensures the feature is truly finished, both trackers agree, and reviewers have a clear, reproducible artifact to look at.