-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Handling Sum Rewards From All Active Plugins #3
Comments
@gentlementlegen @whilefoo rfc on kernel-plugin interface design, and enabling negative permits (at least for one plugin to subtract rewards from the others in an invocation) |
We already support that - you can use any output from a plugin as input to another plugin
I'm not sure if kernel should be responsible for dealing with permits, it should only call plugins. I don't understand why we need to sum permits, won't conversation-rewards generate all rewards and permit-generation will generate permits based on that?
That's a good idea, a standard property like
For now all plugins have these standard inputs. If the need arises we can add more |
The kernel should be responsible for dealing with permits in a similar way that I propose it would be dealing with the comments. I'll try my best to explain:
No, there are many future planned incentives that should not be handled by Imagine a future where organizations codify their own direct financial incentives for their contributors. Conversation rewards is definitely a cool general purpose example, but its far from the only idea that I have (and I'm sure other partners will have.) To accomodate this future, we need to support "payment requests" from every plugin invoked in a webhook handler event chain. Plugins should also have the ability to modify the rewards outputs of others. One planned example of this is our developer relations (referral) system, with "zero sum" rewards. This will subtract from a contributor's reward, and pay the person who referred them. You can read more about it in my proposal here. |
/wallet 0x58e83b330158ba79de3cac0bc5b190f6ea000e69 |
+ Successfully registered wallet address |
/help |
@Keyrxng why doesn't help work? It seems that the bot reliability is not 100% |
/help |
Available Commands
|
Pretty sure |
/help yeah seems you are right mentlegen |
/help |
Available Commands
|
. |
Tip
|
/stop |
/help |
Available Commands
|
Tip
|
Passed the deadline and no activity is detected, removing assignees: @sura1-0-1. |
/help |
Available Commands
|
/wallet 0x331D1C984A43087427BBC224Cb4aD9f019336e75 |
1 similar comment
/wallet 0x331D1C984A43087427BBC224Cb4aD9f019336e75 |
+ Successfully set wallet |
/start |
2 similar comments
/start |
/start |
Tip
|
/stop |
/start |
! You do not have the adequate role to start this task (your role is: member). Allowed roles are: collaborator, admin. |
/start |
! You do not have the adequate role to start this task (your role is: member). Allowed roles are: collaborator, admin. |
@0x4007 ! "You do not have the adequate role to start this task (your role is: member). Allowed roles are: collaborator, admin." why I can`t work on this task I have already created PR also have file on it. |
/start |
Important
|
Similar to how GitHub actions supports capturing output from each step in CI, we should do the same. We should support rewards output (including support for negative values) as well as comment output.
Then the kernel can sum the requested permits and post them all in a single comment at the end when the issue is closed as complete.
Regarding comment output, if we support full HTML comment output from each plugin, we could generate the comment body by concatenating all of the comment outputs of every plugin invoked as a response to the given event.
I suppose there might be another standard useful interface property for passing around metadata between each plugin that is not intended to be comment display data or financial permit data.
This is an architectural conversation for how to standardize the plugin-kernel interface properties so that they work for all of our intended modular use cases.
So I guess for inputs every plugin should support some standard properties which right now aren't clear to me. I presume we will pass along event context from the kernel. I suppose we can pass in a string as the arbitrary input value, similar to a command line interface. This will allow us to serialize complex json objects if needed, or pass in simple string parameters to plugins if that's all they need?
The text was updated successfully, but these errors were encountered: