nodejs / TSC

The Node.js Technical Steering Committee
595 stars 134 forks source link

Probot: a trainable GitHub bot #242

Closed mikeal closed 7 years ago

mikeal commented 7 years ago

https://github.com/probot/probot

I'm on a repo that has stale issues closed automatically by this bot and it is quite nice, we should consider using it as well.

ljharb commented 7 years ago

I'm not sure I understand the benefit of closing "stale" issues - in my experience, when people have trouble and claim it's because there's a large number of open issues, it's usually solved by using labeling and filtering, rather than artificially closing unresolved non-wontfix issues for the sole purpose of keeping the list "clean".

Could you elaborate on the benefits?

bnoordhuis commented 7 years ago

Auto-closing makes perfect sense for issues where:

  1. The reporter never followed up when asked for more information, or

  2. It's not clear or there is no consensus that anything actually needs be done, or

  3. It's quite possible the bug fix was fixed or is no longer relevant but triaging is too laborious for whatever reason. (And if you don't think that's a valid reason, you're volunteering.)

If you don't do spring cleaning every so often, such issues pile up and fester. As someone who goes through the backlog every so often, I'm in favor!

mikeal commented 7 years ago

In addition to what Ben pointed out, I find that closing discussion threads after a period of inactivity is a great practice. Often people will come along and comment on long-dead threads when creating a new one would be more appropriate if the issue actually needs to be discussed.

mikeal commented 7 years ago

There's also a lot more than just closing issues Probot can do. For instance, it can also handle DCO enforcement ;)

https://github.com/search?q=topic%3Aprobot-plugin&type=Repositories

ljharb commented 7 years ago

The concern I have is that reopening an issue when a collaborator closed it, even as the original reporter, is difficult.

Even if the OP went inactive, I might stumble across the same problem, and comment on the issue. Would probot (or similar) auto-reopen previously-auto-closed issues upon activity?

bnoordhuis commented 7 years ago

We already reopen issues in such cases, or ask people to file new ones. That wouldn't change.

ljharb commented 7 years ago

I'd love to hear why triaging is laborious with the issues list and judicious labeling and filtering - closing issues feels like perhaps treating a symptom instead of the disease.

mikeal commented 7 years ago

@ljharb we only really have one repository in the org where the issue labelling and triage is successfully completed at a large scale. In fact, this repo, the one we're talking in, has infrequent labels applied and a decent backlog of unclosed issues.

I doubt that we would ad this bot to the main core repo until we have tested it out successfully in others and decided that we like it.

bnoordhuis commented 7 years ago

I'd love to hear why triaging is laborious

Is that a serious comment? Triaging = (re)visiting issues to check if they are still valid. There is no way it's not laborious, it's as close as you can get to manual labor in this profession.

ljharb commented 7 years ago

Sure, but the thing that makes them valid or not isn't necessarily correlated with activity on the issue - if it's still broken, then somebody not commenting on it for a year doesn't make it less broken; if it's not still broken, then somebody commenting on it today doesn't make it still be broken.

bnoordhuis commented 7 years ago

If no one comments on it for a year, then presumably no one really cares if it's still broken. It's easy enough to reopen when someone does chime in but the vast majority of dead issues stay dead.

williamkapke commented 7 years ago

This is a confusing conversation IMO 🤔

I agree with some comments in here... but they are not universal so I kinda disagree at the same time. Everything depends on the type of repo being referred to- and I'm unclear who is referring to which type.

The types being:

For example:

If no one comments on it for a year, then presumably no one really cares if it's still broken. It's easy enough to reopen when someone does chime in but the vast majority of dead issues stay dead.

I agree with this for Code repos, but not for like the TSC repo where I eventually had many of my issues closed and never addressed.

bnoordhuis commented 7 years ago

FWIW, I was talking purely about nodejs/node. Stale issues in other repositories don't bother me because I don't have to sift through them (regularly anyway.)

ljharb commented 7 years ago

The thing I find troubling is conflating "working" with "nobody cares if it's broken". To my mind, whether anyone still cares or not, if it's broken, there should be an open issue on it.

Thanks for explaining. I think as long as issues can be freely reopened as easily as a bot closes them, it might be ok, but I've seen too many discussions shut down in other repos by auto-closing issues, and closed issues don't get the attention they sometimes need from random users.

jasnell commented 7 years ago

Closing due to lack of further activity