goatcorp / DIPs

Dalamud Improvement Proposals
Other
9 stars 8 forks source link

GitHub issues bot (@bleatbot) #37

Closed NotNite closed 2 years ago

NotNite commented 2 years ago

I've thought of a GitHub bot that would act as issue tooling for us, closing stale issues aand having an FAQ system similar to Franzbot.

I've gone ahead and stolen the name @bleatbot (the wavering cry made by a sheep, goat, or calf.) and will look into automation later.

Some ideas:

Some command ideas:

Any ideas for functionality we'd want?

NotNite commented 2 years ago

Also, @bleatbot needs a profile picture. Suggest one!

NotNite commented 2 years ago

It has now occured to me that while I know how to reply to issues, the only way I know how to find issues is to repeatedly scrape an API.

Is there a GitHub Action or some sort of feature in the API that will signal to us whenever we get mentioned in a PR, or is constantly checking just the only good way?

NotNite commented 2 years ago

Is there a GitHub Action or some sort of feature in the API that will signal to us whenever we get mentioned in a PR, or is constantly checking just the only good way?

A friend in another Discord server has provided me the answer: webhooks!

Webhooks can be assigned organization wide, repo wide, or with a specific GitHub App. I'm not sure which one sounds easier to use (probably repo wide) - I don't particularly want to make a GitHub App, sounds like a lot of work.

The event we want to mainly target is this one.

philpax commented 2 years ago

Just popping in to say I think that this is a good idea and would tie in well with other initiatives, especially around Caprine Operator/DIP17. Can you put together a proper list of features / expected behaviours? Doesn't need to be complete, just enough to get started.

Might also be worth looking over how past GH interactions have gone to see if there's anything we can improve on. Caprine Operator integration for keeping track of plugins / managing approvals would be a great idea.

NotNite commented 2 years ago

I detailed my ideas for Franzbot-styled FAQ pages and a command to auto close issues, but here's some more:

philpax commented 2 years ago

Sorry, to be clear, I meant a single list of all of your ideas so that we could start making a DIP out of it.

Command to auto-merge DIPs when the review process ends, and have reminders a day before DIPs get merged? Since you're active in DIPs a lot, any more ideas how it can help on that front?

Onboard with that! Also has overlap with #2 and #30.

NotNite commented 2 years ago

Sorry, to be clear, I meant a single list of all of your ideas so that we could start making a DIP out of it.

Ah, sorry! Well, everything I've thought of so far, in one big list:

That should be good enough to start a DIP with - we can revise with more suggestions later.

karashiiro commented 2 years ago

Still waiting for @ayyaruq to finish refactoring my messes before I make new ones, but if this exposes an events API we might be able to have a direct feed from this to the Operator that could be used for additional reports. We could potentially also have the reverse (or both), not sure if that would be as useful, though.

NotNite commented 2 years ago

I'd be fine with having an events API. Bet it'll be fun wrangling that together without being spaghetti, though... not very good at writing clean code.

NotNite commented 2 years ago

Also, any ideas on the profile picture? Who wants to go searching for a photo of a goat we can legally use?

philpax commented 2 years ago

some of these almost work image

NotNite commented 2 years ago

Big fan of some of those images - but are we allowed to use those? Maybe I can just draw something shitty in mspaint.

NadyaNayme commented 2 years ago

Copyright law surrounding AI-generates images is a bit of a gray area. Dalle-E Mini doesn't have any statement from the creator(s) but Dall-E 2 does, although even with them providing permission it's still a gray area.

We don’t claim ownership of the content you create with the DALL-E discrete VAE, so it is yours to do with as you please. We only ask that you use the model responsibly and clearly indicate that it was used.

https://www.findlaw.com/legalblogs/technologist/who-owns-the-copyright-for-ai-art/

Personally I follow the U.S Ninth Circuit Court of Appeals ruling - Copyright Act protects the creative work of humans and an AI is distinctly not human.

Zi-SH commented 2 years ago

It maybe true that AI aren't recognized and that the creator(s) reserve no right, but a lot of these AI images can end up quite similar or heavily sample an image. For that reason it can still be risky.

NotNite commented 2 years ago

Following in the footsteps of the Caprine Operator, I've written a proof-of-concept before actually writing the DIP! https://github.com/NotNite/bleatbot

We've also got a lovely icon on the bot, which settles that issue. I'll probably start work on the DIP later - I'm kind of TypeScript'd out right now.

NotNite commented 2 years ago

I've made a PR (see above). Going to go eat lunch and maybe fix it up a bit.

ayyaruq commented 2 years ago

Still waiting for @ayyaruq to finish refactoring my messes before I make new ones

I completely forgot, derp.

Couple of questions which may be better in the PR:

philpax commented 2 years ago

Closing in favour of the PR #41