Page MenuHomePhabricator

goodbot: Gather community opinion and research on required features
Closed, ResolvedPublicSpike

Description

May 4 to June 1

  • Discuss requisites and prerequisites with mentors and identify most important features.
  • Research about deployment on Toolforge and identify potential problems (proactive risk strategy).
  • Also, talk to current and ex (if available) Outreachy, GSoC, GSoD participants and mentors, and see what features they would want in such a bot and how they would like it to be implemented. Tracking in T252098: goodbot: Community-requested features

July 4 to July 10

  • Take input from stakeholders such as volunteer developers, current and previous mentors and participants to gauge requirements of features.
  • Identify and implement strategies to enable seamless message transfers between Wikimedia IRC channels and Zulipchat.

August 28 to August 31

  • Introduce final bot to participants and gather feedback.

Event Timeline

Restricted Application changed the subtype of this task from "Task" to "Spike". · View Herald TranscriptMay 6 2020, 2:15 PM
QEDK updated the task description. (Show Details)

One suggestion, if the user is looking for help to solve a "bug" they're facing, include the followings in the reply message:

  • Ask them to show exact output (if possible), expected output and how to reproduce
  • Show first few google (or other sites such as stack overflow) search results

Ideally, the bot should be triggered passively, instead of the user specifically asking the bot for help. However, in this case, you'll have to think about how to recognize such messages.

Another suggestion is to provide more info in the welcoming message, e.g. where to find the suggested project list. It's very easy to find for themselves, however, it seems like we do get quite a lot of these messages.

There are a bunch of common issues that new contributors face such as those linked to Docker setup, merge conflicts, etc. Maybe you can have the bot enlist some of these issues specific to new contributors with links to how to resolve them😁

One suggestion, if the user is looking for help to solve a "bug" they're facing, include the followings in the reply message:

  • Ask them to show exact output (if possible), expected output and how to reproduce

Do you think this should be done as a part of another command or included with what we have, something like the stackoverflow command?

Ideally, the bot should be triggered passively

By this, do you mean that the bot should somehow guess what responses require their help? Although it's possible, for example, the wh- words could be used as a trigger, it would also result in false positives for example if two people were conducting a conversation in a stream, the bot would begin interfering.

Another suggestion is to provide more info in the welcoming message

Yep, will do that. It was in the back of my mind for a while, I'll get to it. :) Thanks a lot.

In T252020#6115318, @AlQaholic007 wrote:

There are a bunch of common issues that new contributors face such as those linked to Docker setup, merge conflicts, etc. Maybe you can have the bot enlist some of these issues specific to new contributors with links to how to resolve them😁

Hello @AlQaholic007 ! By Docker setup, do you mean generic setting up or associated with some tool? I don't think it's possible to document every tool but we can get the common ones out there, what issues with Docker setup have you seen the most?
By merge conflicts, I think you are referring to Gerrit ones, @zeljkofilipin has written a comprehensive guide on that, I'll add it to the bot in some capacity (something new like knowledge-base or should it be in faq?)

something like the stackoverflow command?

The problem with this is that I believe a lot of newcomers would not use that command, instead they will just say "I am trying to xxx and I see xxx, please help.".

By this, do you mean that the bot should somehow guess what responses require their help?

Yup, if possible, the bot should detect that a message is "looking for help to solve a bug" and do whatever is appropriate.

There might be a lot more other features that could be useful. I think that going through the chat log in zulip might help you find some.

Also, bear in mind that there're 2 main trigger types, 1 where the user looking for help asks a question or sends a command, another is where when user A asks a question, user B types a command to trigger the bot's response to solve A's question.

Hello @AlQaholic007 ! By Docker setup, do you mean generic setting up or associated with some tool? I don't think it's possible to document every tool but we can get the common ones out there, what issues with Docker setup have you seen the most?
By merge conflicts, I think you are referring to Gerrit ones, @zeljkofilipin has written a comprehensive guide on that, I'll add it to the bot in some capacity (something new like knowledge-base or should it be in faq?)

Hey so as you might be aware, for people on Windows 10 Home or older, they have to use Docker ToolBox which is sort of a mess at times. There are a few guides on Wediamiki's documentation which help out but are hard to find since youve to jump between articles. These would go in the knowledge-base

In T252020#6115489, @AlQaholic007 wrote:

Hello @AlQaholic007 ! By Docker setup, do you mean generic setting up or associated with some tool? I don't think it's possible to document every tool but we can get the common ones out there, what issues with Docker setup have you seen the most?
By merge conflicts, I think you are referring to Gerrit ones, @zeljkofilipin has written a comprehensive guide on that, I'll add it to the bot in some capacity (something new like knowledge-base or should it be in faq?)

Hey so as you might be aware, for people on Windows 10 Home or older, they have to use Docker ToolBox which is sort of a mess at times. There are a few guides on Wediamiki's documentation which help out but are hard to find since youve to jump between articles. These would go in the knowledge-base

Did not know that actually, Docker on macOS is a mess as well (very difficult just using the command line). Let me see what I can do about this, thanks!

something like the stackoverflow command?

The problem with this is that I believe a lot of newcomers would not use that command, instead they will just say "I am trying to xxx and I see xxx, please help.".

By this, do you mean that the bot should somehow guess what responses require their help?

Yup, if possible, the bot should detect that a message is "looking for help to solve a bug" and do whatever is appropriate.

That's a possibility that they won't, but their very first message will be 1) from Zulip's welcome bot 2) then immediately after, goodbot informing them of the commands. So, I think at least they will be aware of the bot commands. I think the stream that users first join can be auto-answered possibly, but I'm not sure if there will be lack of conflicts.

There might be a lot more other features that could be useful. I think that going through the chat log in zulip might help you find some.

That's planned yep! Mostly for building a database of FAQs that come up - then using something like spaCy (possibly) to have proper context-matching with answers and the likes.

In T252020#6115489, @AlQaholic007 wrote:

Hello @AlQaholic007 ! By Docker setup, do you mean generic setting up or associated with some tool? I don't think it's possible to document every tool but we can get the common ones out there, what issues with Docker setup have you seen the most?
By merge conflicts, I think you are referring to Gerrit ones, @zeljkofilipin has

Did not know that actually, Docker on macOS is a mess as well (very difficult just using the command line). Let me see what I can do about this, thanks!

Let me know if you need help with any links or so. I'd be happy to help.😁

QEDK updated the task description. (Show Details)