eclipse-repairnator / repairnator

Software development bots for Github. Join the bot revolution! :star2::robot::star2::revolving_hearts:
MIT License
384 stars 83 forks source link

add support for "mentoring" bots #1261

Open monperrus opened 2 years ago

monperrus commented 2 years ago

The whole vision and infrastructure of Repairnator can be used for creating mentoring bots: bots who give useful feedback to junior developers on how to program better.

This is related to the Sobo mode, ref https://github.com/eclipse/repairnator/pull/1260

This is also related to https://github.com/eclipse/repairnator/issues/1141

cc @sofi1410 @LinusOstlund

monperrus commented 2 years ago

Related work by @bbaudry

https://github.com/Gaikanomer9/mentor-chatbot

https://github.com/apps/oss-mentor-bot

https://github.com/MentorMate/mentorbot

sofiabobadilla commented 2 years ago

I configure the Sobo integration in a way where now there is a feedback option so that you can choose between Repair Tools or Feedback tools. Also, on the Pipeline for feedback tools, there is an option to use repair tools.

So Sobo is a feedback tool inside the feedback mode in Repairnator. Is there another tool you would like to integrate?

I'm reading #1141 , and an approach that comes to my mind is adding SORALD to the feedback mode. So, suppose the user wants to avoid receiving the patch as a PR. In that case, they can select using SORALD in feedback mode. Every time they have a violation, Sorald opens an issue in human language. WDYT?

algomaster99 commented 2 years ago

choose between Repair Tools or Feedback tools

That is so cool! So if we configure "repair" mode in Sobo, do students directly get the repair?

Sorald opens an issue in human language.

How will that be different from Sobo?

On Thu, Nov 3, 2022 at 4:40 PM Sofia Bobadilla @.***> wrote:

I configure the Sobo integration in a way where now there is a feedback option so that you can choose between Repair Tools or Feedback tools. Also, on the Pipeline for feedback tools, there is an option to use repair tools.

So Sobo is a feedback tool inside the feedback mode in Repairnator. Is there another tool you would like to integrate?

I'm reading #1141 https://github.com/eclipse/repairnator/issues/1141 , and an approach that comes to my mind is adding SORALD to the feedback mode. So, suppose the user wants to avoid receiving the patch as a PR. In that case, they can select using SORALD in feedback mode. Every time they have a violation, Sorald opens an issue in human language. WDYT?

— Reply to this email directly, view it on GitHub https://github.com/eclipse/repairnator/issues/1261#issuecomment-1302301562, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIMPTONZQB3FKGLNDZI3B6TWGPMIRANCNFSM6AAAAAAQNDRRIE . You are receiving this because you are subscribed to this thread.Message ID: @.***>

sofiabobadilla commented 2 years ago

That is so cool! So if we configure "repair" mode in Sobo, do students directly get the repair?

No, but it should be possible without making significant architectural changes.

How will that be different from Sobo?

SOBO is made for students. It presents a pedagogical explanation of violations and gives nudging and informal messages. In the user case we are discussing now, we are referring to developers who don't need a type of feedback more precise, and in this scenario, giving the solution is not a problem.

algomaster99 commented 2 years ago

No, but it should be possible without making significant architectural changes.

Okay.

giving the solution is not a problem.

This makes sense. Otherwise, an explanation in natural language is already provided by SonarQube. Presenting that to a developer by using Sorald won't be novel, in my opinion. Providing a solution for it is, indeed, novel. :)

On Thu, Nov 3, 2022 at 6:18 PM Sofia Bobadilla @.***> wrote:

That is so cool! So if we configure "repair" mode in Sobo, do students directly get the repair?

No, but it should be possible without making significant architectural changes.

How will that be different from Sobo?

SOBO is made for students. It presents a pedagogical explanation of violations and gives nudging and informal messages. In the user case we are discussing now, we are referring to developers who don't need a type of feedback more precise, and in this scenario, giving the solution is not a problem.

— Reply to this email directly, view it on GitHub https://github.com/eclipse/repairnator/issues/1261#issuecomment-1302431937, or unsubscribe https://github.com/notifications/unsubscribe-auth/AIMPTOMUFXP24CNVPX2RST3WGPXU3ANCNFSM6AAAAAAQNDRRIE . You are receiving this because you commented.Message ID: @.***>

monperrus commented 1 year ago

FTR, official doc of SOBO: https://github.com/eclipse/repairnator/tree/master/doc/sobo