Skip to content

Auto-assign on fork PRs via pull_request_target#112

Open
bharvey88 wants to merge 1 commit into
mainfrom
fix/autoassign-fork-prs
Open

Auto-assign on fork PRs via pull_request_target#112
bharvey88 wants to merge 1 commit into
mainfrom
fix/autoassign-fork-prs

Conversation

@bharvey88

@bharvey88 bharvey88 commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Standardize auto-assign so it runs on PRs opened from forks.

The auto-assign workflow triggers on pull_request (or skips forks via an if: guard), so fork-submitted PRs never get auto-assigned — fork pull_request runs only receive a read-only GITHUB_TOKEN. This switches to pull_request_target, drops the fork-skip guard, and pins the assignee to bharvey88.

pull_request_target runs in the base-repo context with a write token. Safe here because the workflow never checks out or executes PR code — it only assigns.

Targeting the default branch (main) because GitHub runs the auto-assign workflow from the default branch for issues / pull_request_target events; a fix only on beta would stay inert. Matches ApolloAutomation/MSR-2#84.

🤖 Generated with Claude Code

Summary by CodeRabbit

  • Chores
    • Auto-assignment now runs for pull requests submitted from forks.
    • Existing issue-triggered auto-assignment behavior remains unchanged.

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Review Change Stack

Walkthrough

The auto-assign workflow now runs for fork-submitted pull requests through pull_request_target, while retaining issue-opened handling and removing the prior fork exclusion.

Changes

Auto-assign workflow

Layer / File(s) Summary
Enable fork pull-request assignment
.github/workflows/autoassign.yml
The workflow switches to pull_request_target, keeps the issues trigger, and removes the condition that skipped fork pull requests.

Estimated code review effort: 1 (Trivial) | ~5 minutes

Possibly related PRs

Suggested reviewers: dependabot[bot], trevorschirmer

Poem

I’m a rabbit in the workflow lane,
Pulling forked requests through the rain.
Issues still open, assignments take flight,
One trigger now makes the path right.
Hop, hop—automation’s bright!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the main change: enabling auto-assignment for fork PRs using pull_request_target.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/autoassign-fork-prs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In @.github/workflows/autoassign.yml:
- Around line 3-9: Update the reusable workflow reference in autoassign.yml from
the mutable main branch to a specific immutable commit SHA, preserving the
existing workflow path and permissions configuration.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: dac3febc-b731-4670-bdea-8f06f4cbf5ba

📥 Commits

Reviewing files that changed from the base of the PR and between a62f50e and b134014.

📒 Files selected for processing (1)
  • .github/workflows/autoassign.yml

Comment on lines +3 to +9
# pull_request_target (not pull_request) so auto-assign works on
# fork-submitted PRs; fork pull_request runs only get a read-only token.
# Safe because this workflow never checks out or executes PR code.
on:
issues:
types: [opened]
pull_request:
pull_request_target:

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔒 Security & Privacy | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

printf '\n== autoassign workflow ==\n'
cat -n .github/workflows/autoassign.yml

printf '\n== ApolloAutomation references ==\n'
rg -n "ApolloAutomation/Workflows|uses:" .github/workflows -S

Repository: ApolloAutomation/AIR-1

Length of output: 1409


🏁 Script executed:

#!/bin/bash
set -euo pipefail
cat -n .github/workflows/autoassign.yml
rg -n "ApolloAutomation/Workflows|uses:" .github/workflows -S

Repository: ApolloAutomation/AIR-1

Length of output: 1347


Pin the reusable workflow to a commit SHA.
.github/workflows/autoassign.yml still calls ApolloAutomation/Workflows/.github/workflows/autoassign.yml@main with issues: write and pull-requests: write (line 18). A change on that branch would run here with repository write access.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/autoassign.yml around lines 3 - 9, Update the reusable
workflow reference in autoassign.yml from the mutable main branch to a specific
immutable commit SHA, preserving the existing workflow path and permissions
configuration.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant