Handling of github Issues
The idea of world driven is to remove the owner of a (github) repository, this works out good in regards to Pull Requests and also due to the github issue feature on closing issues, too.
But how to handle new issues? Creating is easy. How about assigning and labels?
First ideas which come to my mind: As soon as a PR is opened which related to an issue, the contributor is assigned with that issue.
For labels, I don't have a very good idea yet. Best idea so far: Have some kind of keywords: label: bug/unlabel: bug which someone can write and you can vote via :+1: and :-1:. Similar to PR merge (maybe faster) the tag is added.
WDYT?
As soon as a PR is opened which related to an issue, the contributor is assigned with that issue.
This isn't a bad idea, but assignment at this stage is maybe a little bit late no? Assignment is to show who is working on an issue so someone else doesn't waste time doing it as well, but by the time the PR is opened this may already have happened. Is there a way to parse an issue's comments looking for a code phrase to assign/be assigned an issue? Or invoke an assignment bot? For example:
- You create an issue that you currently don't have the time/inclination to work on
- I see this issue and decide I want to work on it
- I write a comment that contains the phrase "worlddriven assign @IanFindlay "
- I am assigned to the issue
I suppose the use of draft PR's and the auto-assignment you suggested would work quite well. How does making a draft PR interfere with the auto merger timing currently? Another concern is that both of these ideas remove the voting aspect of the project; but I don't see a meaningful way to incorporate that here.
Hm, I also thought about a Draft PR.
I think the point here is something like a dead man switch. The issue gets assigned (somehow) a Pull Request is opened and merged, the issue gets closed, all good. Thinking more about the case where someone assigns themself and loses interest.
With draft PRs we could unassign as soon as we close the draft PR. (We should have anyway some logic to close draft PR after some (long) time). With comments on the issue, we have to implement something which regularly checks the issues for any updates and unassigns after some time.
Both valid, I don't have a preference, tending more to the draft PR, but I don't like the change in the workflow so much.
Any idea on the labels? Maybe it will be similar logic to the assign comments so that I can tend more to comments :-)