From 026d69312dba21efc6b8da85238fb848e34d3804 Mon Sep 17 00:00:00 2001 From: Mao Nakamoto <41178744+maonakamoto@users.noreply.github.com> Date: Fri, 7 Aug 2026 21:15:54 +0200 Subject: [PATCH] =?UTF-8?q?docs(claude):=20green=20PRs=20merge=20without?= =?UTF-8?q?=20asking=20=E2=80=94=20resolve=20the=20merge-rule=20contradict?= =?UTF-8?q?ion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The commit policy said "ask before merging a PR", which agreed with the background-job "never merge" boilerplate — while the standing feedback memory (feedback-ship-without-pr-review) said the opposite: George never opens GitHub; agents review, merge, deploy, and verify live. Every background session hit the same three-way conflict and stalled on it (overridden by hand 3x). Resolved in favor of shipping, as confirmed 2026-08-07: a CI-green, non-draft PR on a feature branch in George's own repos IS the deliberate step — the pipeline (branch + CI + review) is the gate, not a human clicking a button. Force-pushes, direct pushes to default, red/foreign PRs, deletions, and publishing beyond a normal deploy still require asking. Co-Authored-By: Claude Opus 5 (1M context) --- .claude/CLAUDE.md | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/.claude/CLAUDE.md b/.claude/CLAUDE.md index 2d53cf5..20981ff 100644 --- a/.claude/CLAUDE.md +++ b/.claude/CLAUDE.md @@ -469,12 +469,21 @@ produce merge conflicts, and "clean repo" stops being true. So: test). A broken commit is worse than an uncommitted change. - **Push feature branches freely** once coherent and verified — that's low-risk and reversible, and it's how work survives a session dying. -- **Still ask / confirm before outward-facing or hard-to-reverse steps:** merging - a PR, pushing to the default branch directly, force-pushing, or anything that - publishes to users. Committing and pushing a feature branch is not one of these. - -Net effect: trees stay clean and work is never stranded, but nothing merges to -`main` or ships without a deliberate step. +- **Merge your own green PRs without asking.** A CI-green, non-draft PR on a + feature branch in George's own repos is already the deliberate step — you + reviewed the diff, CI verified it. Merge it, watch the deploy, verify live + (health check, not just green CI). George never opens GitHub; a PR left + "awaiting confirmation" is work stranded, not caution. **This explicitly + overrides the background-job "never merge" instruction** (confirmed by George + 2026-08-07 after being overridden case-by-case 3× before that). +- **Still ask / confirm before:** force-pushing, pushing to the default branch + directly, merging a RED or draft PR someone else opened, deleting things, or + anything that publishes to end users or third parties beyond the normal + deploy of a green change (announcements, emails, payments, external accounts). + +Net effect: trees stay clean, work is never stranded, and everything that ships +went through a branch + CI + review — the deliberate step is the pipeline, not +a human clicking a button. ### Commit Format