Skip to content

Conversation

@BagToad
Copy link
Member

@BagToad BagToad commented May 14, 2025

Description

This introduces support for handling "Actor" assignees (e.g., bots) in addition to user assignees for pull requests. The changes include updates to GraphQL queries and associated tests to accommodate this new functionality.

These changes cover both interactive and non-interactive (flags) flows.

Note

This intentionally does not merge into trunk, as part of a stacked PR workflow.
Please only merge once #10960 has merged

Acceptance Criteria

Given I have a PR where an Actor is assignable
Given I am authenticated with a GitHub host that supports the Actor type.
When I run gh pr edit <issuenum> and select to edit Assignees
Then I receive a list of assignees that includes assignable Actors, and the Actors already assigned to the PR are pre-selected.
When I select one or more Actors from the list, and proceed
Then I see those selected Actors assigned to the pr

❯ gh pr edit 2
? What would you like to edit? Assignees
? Assignees  [Use arrows to move, space to select, <right> to all, <left> to none, type to filter]
> [x]  ActorToad
  [x]  BagToad

Given I have a PR where an Actor is assignable and
Given I am authenticated with a GitHub host that supports the Actor type.
When I run gh pr edit <issuenum> --add-assignee <actorname>...
Then I see the specified Actor(s) are assigned to the PR

❯ gh pr edit 2 --add-assignee ActorToad
https://github.com/BagToad/reponame/pull/2

Given I have a pr where an Actor is assigned already
Given I am authenticated with a GitHub host that supports the Actor type.
When I run gh pr edit <issuenum> --remove-assignee <actorname>...
Then I see the specified Actor(s) are unassigned from the PR

❯ gh pr edit 2 --remove-assignee ActorToad
https://github.com/BagToad/reponame/pull/2

Note

omitted gh pr view commands to prove the above because pr view doesn't return the non-user assignees, and that's expected. The above AC was verified by viewing the PRs in a browser.

@BagToad BagToad requested a review from a team as a code owner May 14, 2025 17:18
@BagToad BagToad requested review from babakks and removed request for a team May 14, 2025 17:18
@BagToad BagToad temporarily deployed to cli-automation May 14, 2025 17:18 — with GitHub Actions Inactive
@BagToad BagToad force-pushed the kw/gh-cli-909-911-assign-actors-to-prs branch from d046a49 to d4832ba Compare May 14, 2025 17:54
Base automatically changed from kw/gh-cli-901-910-assign-actors-to-issues to kw/gh-cli-epic-900-actors-are-assignable May 15, 2025 15:24
@BagToad BagToad force-pushed the kw/gh-cli-909-911-assign-actors-to-prs branch from 7da9f0d to d72018d Compare May 15, 2025 15:33
@BagToad BagToad force-pushed the kw/gh-cli-909-911-assign-actors-to-prs branch from 868c553 to 54f48cf Compare May 15, 2025 15:48
Copy link
Member

@andyfeller andyfeller left a comment

Choose a reason for hiding this comment

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

All of the changes look straight forward and should be a faster review!

I only have a few minute suggestions / nits; again nothing that should block so happy to turn around follow up review.

@BagToad BagToad requested a review from andyfeller May 15, 2025 20:02
Copy link
Member

@andyfeller andyfeller left a comment

Choose a reason for hiding this comment

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

shipit-squirrel-thumbsup

@BagToad BagToad merged commit 98b289d into kw/gh-cli-epic-900-actors-are-assignable May 15, 2025
14 checks passed
@BagToad BagToad deleted the kw/gh-cli-909-911-assign-actors-to-prs branch May 15, 2025 20:22
tmeijn pushed a commit to tmeijn/dotfiles that referenced this pull request May 20, 2025
This MR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [cli/cli](https://github.com/cli/cli) | minor | `v2.72.0` -> `v2.73.0` |

MR created with the help of [el-capitano/tools/renovate-bot](https://gitlab.com/el-capitano/tools/renovate-bot).

**Proposed changes to behavior should be submitted there as MRs.**

---

### Release Notes

<details>
<summary>cli/cli (cli/cli)</summary>

### [`v2.73.0`](https://github.com/cli/cli/releases/tag/v2.73.0): GitHub CLI 2.73.0

[Compare Source](cli/cli@v2.72.0...v2.73.0)

#### :copilot: Copilot Coding Agent Support

You can now assign issues to GitHub Copilot directly from `gh`, just as you would assign them to a teammate. Use `gh issue edit <number> --add-assignee @&#8203;copilot` to assign the GitHub Copilot coding agent, and Copilot will work in the background to understand the issue, propose a solution, and open a pull request when it's ready for your review. If you run `gh issue edit` interactively, `Copilot (AI)` will be displayed as a potential assignee. This feature is available for GitHub Copilot Pro+ and Copilot Enterprise subscribers. For more details, refer to [the full changelog post for Copilot coding agent](https://github.blog/changelog/2025-05-19-github-copilot-coding-agent-in-public-preview/).

#### What's Changed

##### ✨ Features

-   Copilot is assignable to issues and pull requests with `issue edit` and `pr edit` by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10992
    -   `gh issue edit`: actors are assignable to issues by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10960
    -   `gh pr edit`: Assign actors to pull requests by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10984
    -   `issue edit`, `pr edit`: handle display names in interactive assignee editing   by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10990
    -   `issue edit`, `pr edit`: Support special non-interactive (flags) assignee name `@copilot` by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10991
-   \[gh issue/pr comment] Add support for last comment delete for issues and MRs by [@&#8203;sinansonmez](https://github.com/sinansonmez) in cli/cli#10596
-   \[gh issue view] Expose `closedByPullRequestsReferences` JSON field by [@&#8203;iamazeem](https://github.com/iamazeem) in cli/cli#10941
-   Accessible prompter always displays selection defaults in a format readable by a screen reader by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10937

##### 🐛 Fixes

-   Fix `StatusJSONResponse` usage by [@&#8203;babakks](https://github.com/babakks) in cli/cli#10810
-   Fix panic on `gh pr view 0` by [@&#8203;nopcoder](https://github.com/nopcoder) in cli/cli#10729
-   Fix flakey test for accessible prompter by [@&#8203;BagToad](https://github.com/BagToad) in cli/cli#10918
-   Fix accessible prompter flaky tests by [@&#8203;babakks](https://github.com/babakks) in cli/cli#10977
-   Handle missing archive URLs on release download by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10947
-   Fix bug when removing all MR reviewers by [@&#8203;babakks](https://github.com/babakks) in cli/cli#10975

##### 📚 Docs & Chores

-   Feature detect v1 projects on pr view by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10821
-   Feature detect v1 projects on non-interactive pr create by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10909
-   Feature detect v1 projects on web mode pr create by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10911
-   Feature detect v1 projects on interactive `pr create` by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10915
-   Feature detect v1 projects on pr edit by [@&#8203;williammartin](https://github.com/williammartin) in cli/cli#10942
-   Move predicate type filtering in `gh attestation verify` by [@&#8203;malancas](https://github.com/malancas) in cli/cli#10670
-   Improve assertion for disabled echo mode by [@&#8203;babakks](https://github.com/babakks) in cli/cli#10927

##### :dependabot: Dependencies

-   chore(deps): bump actions/attest-build-provenance from 2.2.2 to 2.3.0 by [@&#8203;dependabot](https://github.com/dependabot) in cli/cli#10886
-   chore(deps): bump github.com/cpuguy83/go-md2man/v2 from 2.0.6 to 2.0.7 by [@&#8203;dependabot](https://github.com/dependabot) in cli/cli#10869

#### What's Changed

#### New Contributors

-   [@&#8203;sinansonmez](https://github.com/sinansonmez) made their first contribution in cli/cli#10596
-   [@&#8203;nopcoder](https://github.com/nopcoder) made their first contribution in cli/cli#10729

**Full Changelog**: cli/cli@v2.72.0...v2.73.0

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever MR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this MR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this MR, check this box

---

This MR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xNS4wIiwidXBkYXRlZEluVmVyIjoiNDAuMTUuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiUmVub3ZhdGUgQm90Il19-->
babakks added a commit that referenced this pull request Jul 1, 2025
This change is almost a revert to what had already done in #10984.

Signed-off-by: Babak K. Shandiz <babakks@github.com>
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.

3 participants