-
Notifications
You must be signed in to change notification settings - Fork 0
fix: close post-merge safety gaps #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
@@ -70,13 +70,21 @@ Follow this top to bottom, per ticket. | |||||||||||
| bot's last review rather than waiting indefinitely for a re-review that may not come. | ||||||||||||
| Fix real findings (commit + push → re-watch); reply-with-reason to nitpicks you keep. If | ||||||||||||
| every configured bot is unavailable (rate-limited, no credits, skipped the PR), run | ||||||||||||
| the current runtime's `review.fallback_commands` value as the substitute independent pass — a blocked bot is not a | ||||||||||||
| waiver on review. | ||||||||||||
| the current runtime's `review.fallback_commands` value as the substitute independent | ||||||||||||
| pass, handle its findings, then bind that evidence to the current head with | ||||||||||||
| `uv run <engine-dir>/pr_watch.py <PR#> --record-review "fallback:<runtime>" --head | ||||||||||||
| <polled-sha>` (use the `head` from the exact reviewed poll; a lane uses the | ||||||||||||
| scope-aware `dev_session.sh pr-watch` wrapper) — a blocked bot is not a waiver on | ||||||||||||
| review. | ||||||||||||
|
|
||||||||||||
| ### Merge + close out | ||||||||||||
|
|
||||||||||||
| - Merge only once checks are green, the PR is mergeable, and every finding has been fixed | ||||||||||||
| or explicitly addressed: | ||||||||||||
| or explicitly addressed. A lane created by `dev_session.sh` must honor its persisted | ||||||||||||
| merge class at act time: `self` lanes merge through | ||||||||||||
| `<engine-dir>/dev_session.sh merge <scope>` (which re-polls `pr-watch`); missing, | ||||||||||||
| unknown, or `operator` metadata refuses autonomous merge and requires operator | ||||||||||||
| sign-off. For non-lane/operator merges: | ||||||||||||
| ```sh | ||||||||||||
| gh pr merge <PR#> --squash --delete-branch | ||||||||||||
| git checkout <protected_branch> && git pull --ff-only origin <protected_branch> | ||||||||||||
|
Comment on lines
+87
to
90
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win Pin direct terminal merges to the validated head. This command can merge a push that lands after the final review poll. Require an immediate Proposed fix-gh pr merge <PR#> --squash --delete-branch
+gh pr merge <PR#> --squash --delete-branch --match-head-commit <validated-head>📝 Committable suggestion
Suggested change
🤖 Prompt for AI Agents |
||||||||||||
|
|
||||||||||||
Uh oh!
There was an error while loading. Please reload this page.