Stale Bot for Neos Repositories

We have had stale bot (https://github.com/apps/stale) for a while now out of an experiment and it didn’t sit well with me as it closes PRs that just didn’t get any reviews. This is a long standing issue and we are sometimes really not great with reviewing incoming PRs. Unless that is solved in the first place I see no place for stale bot or at least not with any short timing. Closing after a year or so, maybe but apart from that I just feel it removes possible solutions to bugs out of sight that even if there are conflicts after a while are much better than not having them at all.

Now that is just me, but it seems this is a more controversial topic that needs proper discussion and possibly voting. So here we go, this is the discussion thread. I will add a vote in a week or so when the discussion settled down.

2 Likes

Some initial discussion points from Slack:

After I said I would remove it for now and then open a discussion and voting.

Daniel Lienert
That’s sad. I like the bot. We could increase the time frames.
I don’t think perfect PRs have a value if they are not reviewed for months and even years (edited)

Roland Schütz
But what’s the advantage. Dmitri for example did a PR which just misses a few translations. The stale bot closed it, I reopend and and it closed it again.
So we really wanna lose all that coding?

Alexander Berl
IMO it should only close things that are not passing checks (or have a “changes requested” feedback). In the other cases, it should instead nag people to do reviews. (edited)

I think we have an issue if “perfect” PRs are not reviewed for months and even years. Closing them not necessarily is a solution. I do like the bot for closing things that are just not finished and no longer worked on. Ideally we should have more strict but automated checks in place and if those don’t pass, things are dismissible after X months. Things that pass checks only after 1 year (?) and up to then are made visible repeatedly. Not sure if that’s possible with stalebot.

I generally like the bot but two weeks are way too ambitious for a proper review of non trivial task. The period for closing issues should be much longer and also the time between the notification and the actual closing.

Just for clarification: It has been 3 months for the notification and 2 weeks to be closed.

Then the problem is that this period dies not start again after some action was performed in the ticket. Just reopened a ticket that had the last change two weeks before but had been inactive before that for a while.

Mhm strange, in other projects where the stale bot is used, it seemed like if it adds the tag and anything happens to the PR, it removes the tag again and the 3 months starts from zero - and that’s what I’ve intended.

This is the original discussion about introducing the bot and my arguments for it: RFC: Introduce Stale-Bot on dev collections

For me, they are still valid :slight_smile: We had a lot of PRs where the authors are pinged regularly by several release managers asking if the PR is still valid / worked on - without any response. As we are a polite community, no one dared to set a deadline or to close the PR.

So I thought it would help to set rules and have them neutrally enforced by a bot in order to concentrate on a smaller set of actively maintained PRs. IMHO, it would help the project to focus on a small set of PRs instead of having a lot open degenerating over time and never get merged.

There are some adjustment screws to tone down the bot, eg. tweak time frames or add tags to avoid the bot from doing anything. But I do not insist to keep it if you don’t find it helpful.

2 Likes

As I stated, I do think it is valuable, but definitely needs to be toned down.

  • [if] “anything happens to the PR, it removes the tag again and the 3 months starts from zero” - if this works, that would already help a lot I think

  • still would suggest to increase the timeout for PRs that have passing checks (and make those checks stricter)

  • add a label like “stalebot-ignore” or sth. so one can actively prevent a PR from ever being staled out

3 Likes