zulip / zulipbot

GitHub workflow-optimizing bot by @zulip
Other
85 stars 65 forks source link

"no assignee" spam #173

Open gnprice opened 4 years ago

gnprice commented 4 years ago

Zulipbot posted on zulip/zulip#12309 a series of error messages reading:

ERROR: This active issue has no assignee.

A few days before that, Zulipbot itself had unassigned the person who had been assigned.

I fixed it for that issue by removing the "in progress" label. But Zulipbot should probably have done that in the first place.

gnprice commented 4 years ago

Oh, and now I notice another anomaly on that thread:

On 2020-04-14, Zulipbot made a comment saying:

Hello @ryanreh99, you have been unassigned from this issue because you have not updated this issue or any referenced pull requests for over 14 days. [...]

But in fact it didn't do any unassigning then. It was only on 2020-04-20, six days later, that it actually unassigned the person.

That may be a clue to the issue.

gnprice commented 4 years ago

And another anomaly -- though this one I have a guess as to the cause of, and if my guess is right then it's not a bug exactly but a UX subtlety without a simple complete fix:

A couple of days before that Zulipbot comment, @ryanreh99 had in fact posted a PR (zulip/zulip#12309) that addressed the issue. So why did Zulipbot make such a comment at all?

I suspect the answer is that while the PR description mentioned the issue, it didn't use the magic word "fixes" or one of its magic synonyms. So the issue wasn't "linked" in the GitHub right-sidebar "Linked issues" / "Linked pull requests" sense.

That probably isn't related to how the bug happens, but could be -- worth bearing in mind while debugging.

Also, the docs at https://zulip.readthedocs.io/en/latest/contributing/zulipbot-usage.html should be updated to explicitly say that you need to do that -- I don't see a mention of it on a quick skim. (If it does say that somewhere I missed, it should probably be more prominent.) And @ryanreh99 there's a Zulipbot usage tip for you :slightly_smiling_face:

ryanreh99 commented 4 years ago

I suspect the answer is that while the PR description mentioned the issue, it didn't use the magic word "fixes" or one of its magic synonyms. So the issue wasn't "linked" in the GitHub right-sidebar "Linked issues" / "Linked pull requests" sense.

It seems like using "Closes" in the PR / commit message also has an anomaly. The PR for issue zulip/zulip#526 does link to the issue.

Jan 1 - zulipbot posts a message. (this is correct)

Hello @ryanreh99, you claimed this issue to work on it, but this issue and any referenced pull requests haven't been updated for 10 days. Are you still working on this issue? If so, please update this issue by leaving a comment on this issue to let me know that you're still working on it. Otherwise, I'll automatically remove you from this issue in 4 days.

Jan 4 and 8 - PR author updates the commit referencing the issue Jan 13 - zulipbot unassigns the user with the message. (both on the same date)

Hello @ryanreh99, you have been unassigned from this issue because you have not updated this issue or any referenced pull requests for over 14 days.

ryanreh99 commented 4 years ago

Both the above 2 mentioned issues had PRs containing the word "WIP" in the title. I think this is related to #166

gnprice commented 4 years ago

Both the above 2 mentioned issues had PRs containing the word "WIP" in the title. I think this is related to #166

Ah, good find!

And from the chat thread linked from that issue:

zulipbot ignores updates on PRs titled with WIP

So that may explain why Zulipbot wanted to unassign that issue in the first place -- which just leaves:

Also that special behavior around "WIP" PR titles should be documented, if we're going to have it -- but probably we just shouldn't have that special behavior. That's #166, then.

ahmedabuamra commented 3 years ago

Both the above 2 mentioned issues had PRs containing the word "WIP" in the title. I think this is related to #166

issue #687 has no linked PRs and the bot posts the same comment/error.