Skip to content

ci: Claude PR automation never merges; skip drafts; enforce statically - #1827

Merged
magic-peach merged 3 commits into
mainfrom
ci/pr-automation-safety
Nov 3, 2026
Merged

magic-peach merged 3 commits into
mainfrom
ci/pr-automation-safety

Conversation

@magic-peach

@magic-peach magic-peach commented Nov 3, 2026 •

Copy link
Copy Markdown
Collaborator

Stack 1 of 3. Merge this first. Then #1828 (lockfile) and #1829 (telemetry), in that order, using merge commits.

What this changes

The claude-manager workflow's PR review step could merge PRs. This makes it comment-only:

  • claude-pr-review skips draft PRs (github.event.pull_request.draft == false). Its prompt now says never to merge, approve, push or enable auto-merge, and its permissions stay contents: read.
  • CLAUDE.md no longer tells the bot to merge PRs or push conflict resolutions. It says a human maintainer does every merge.
  • scripts/ci/check-pr-automation.mjs runs in lint.yml and fails if any workflow or instruction file starts merging or pushing on its own. src/lib/tests/prAutomationSafety.test.ts covers it (15 tests).

origin/main is merged in (4db46ec); no history was rewritten.

Checks run locally

Tests, the safety check and actionlint pass. Expected CI failures not caused by this PR: claude-review (the Claude GitHub App isn't installed) and Dependency scan (snyk.yml on main uses npm 10, which crashes; it needs npm 11).

Open owner PRs #1819, #1805, #1804 and #1801 still run main's old workflow until this merges.

magic-peach and others added 3 commits October 23, 2026 23:38
- claude-manager.yml (claude-pr-review): skip draft PRs
  (`github.event.pull_request.draft == false`), keep the event and author
  restrictions, rename the step, and replace "squash-merge the PR" with a
  comment that the PR is ready for a maintainer. The prompt now forbids
  merging, approving, enabling auto-merge, pushing and marking drafts
  ready. Permissions unchanged (contents: read).
- CLAUDE.md: PR Automation no longer merges; automatic conflict resolution
  (git merge + push to the PR branch) becomes guidance in a comment;
  General Rules no longer list "merge PRs".
- scripts/ci/check-pr-automation.mjs: fails on merge commands/APIs in any
  workflow, contents: write / write-all in a Claude job, a PR-writing
  Claude job without a draft guard, and affirmative merge/push
  instructions in prompts or CLAUDE.md. Run in lint.yml; unit-tested with
  passing and failing fixtures (it flags all six items on main today).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The previous commit rewrote the file with LF; the net change against main is
now only the two added lines.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Brings in #1810, #1822, #1823 and #1825 so this PR applies to current main.
No conflicts.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@netlify

netlify Bot commented Nov 3, 2026 •

Copy link
Copy Markdown

✅ Deploy Preview for reframe-os ready!

Name Link
🔨 Latest commit 4db46ec
🔍 Latest deploy log https://app.netlify.com/projects/reframe-os/deploys/6ae96ea62d97e7a570fe24fc
😎 Deploy Preview https://deploy-preview-1827--reframe-os.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@github-actions github-actions Bot added level:advanced Advanced level - 55 pts type:testing Testing labels Nov 3, 2026
@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

👋 Thanks for your PR, @magic-peach!

Welcome to Reframe — a browser-based video editor built for everyone 🎬

What happens next

  1. 🤖 Automated checks — build & TypeScript typecheck will run automatically
  2. ✅ Vercel preview — a preview deployment will be created (requires maintainer authorization for fork PRs)
  3. 👀 Code review — a maintainer will review your changes
  4. 🚀 Merge — once approved, your PR will be merged!

Quick checklist

  • PR title follows Conventional Commits (e.g. feat: add dark mode)
  • Linked the issue this PR closes (e.g. Closes #123)
  • Tested the changes locally (bun run dev)
  • Build passes (bun run build)

Useful links

Happy coding! 🎉

@github-actions

github-actions Bot commented Nov 3, 2026

Copy link
Copy Markdown
Contributor

⚠️ PR Format Issues — @magic-peach

Please fix the following before your PR can be reviewed:

  • ⚠️ No linked issue found. Add Closes #<issue-number> to your PR description.

Push new commits after fixing — this comment will update automatically.

📖 CONTRIBUTING.md

magic-peach added a commit that referenced this pull request Nov 3, 2026
Includes #1827 (PR automation never merges) and #1828 (bun.lock sync).
@magic-peach
magic-peach merged commit 4db46ec into main Nov 3, 2026
20 of 22 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

level:advanced Advanced level - 55 pts type:testing Testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant