Adding tags to issues and PR's without write access

I’d like to be able to add certain tags (such as the 6.topic: tags) to GitHub issues and PR’s without needing write access to the repo.

We should probably limit this to a fixed number of ‘known-harmless’ tags, but that would still be helpful and somewhat reduce triage load on the people with write access.

@timokau do you think it would make sense to contribute this to marvin?

Labeling is currently done by OfBorg. There are GitHub actions for labeling as well. If we are to move parts out of OfBorg and convert to Actions, then this could be one of those.

When it can be automated that is even better of course.

That doesn’t seem possible for 6.topic: reproducible builds, though - and perhaps others?

Right. There is a GitHub suggestion that anybody can suggest labels, but it does not seem like that is happening Allow non contributors to suggest labels · Issue #148 · isaacs/github · GitHub

Even though there is a subset of labels that is harmless, I don’t think anybody should be able to set them, so likely it would be only the Maintainers group for which a solution is needed.

It could be added to marvin, and that should be relatively easy. I’m a bit hesitant for two reasons though:

  • I’m trying to keep marvin as lean as possible, at least for now. Have it do one thing well instead of becoming the sink for all possible features. This is at least somewhat dampened by how small of an addition it would be (slash-commands and labeling are already implemented anyway, just need to wire them together), but its still a point against adding that feature.
  • Its still experimental. Only active in some pull requests, may or may not stick around long term. (See README)

I do think it would be a valuable feature. Especially for PR authors who might set labels while they create an MR. We could even add commented-out commands for some categorization to the template. As @FRidh said, it might be possible to use an off-the-shelf action for it.

If we want to restrict this to maintainers only, nothing needs to be done. Maintainers are added to the matinainers team, and the maintainers team has labeling access. This is only currently blocked by Create a database of already-invited users and don't invite them again · Issue #3 · NixOS/rfc39 · GitHub.