Closed gentlementlegen closed 4 months ago
@gentlementlegen so this start/stop should work exactly how the v1 Bot does currently?
@jordan-ae Correct, the goal is to reimplement the same functionalities but in a cleaner manner within separate modules.
/start
Deadline | Thu, May 16, 10:25 PM UTC |
Registered Wallet | 0xAe5D1F192013db889b1e2115A370aB133f359765 |
/wallet 0x0000...0000
if you want to update your registered payment wallet address.@gentlementlegen is there a structure yet for the XP?
Or should I cover commands for admins like:
/unassign keyrxng
= no XP change/unassign keyrxng -50
= -50 XP/unassign keyrxng +50
= +50 XP (in case they have invested in the issue and should be rewarded, if not monetarily then with XP?while the default for a hunter would be the same /stop
/assign|/unassign
were commands in V1 but could be bundled into this module as it's the same functionality it makes sense to have it as one module I think, what are your thoughts here?
/stop
+ You have been unassigned from the task
/start
Deadline | Fri, May 17, 3:58 PM UTC |
Registered Wallet | 0xAe5D1F192013db889b1e2115A370aB133f359765 |
/wallet 0x0000...0000
if you want to update your registered payment wallet address.Is a new repo going to be created for each plugin in the wishlist or are we to open PRs against this repo?
RFC @0x4007
Each plugin should be hosted on their own repositories. I imagine we will have a dedicated organization to host "official" plugins.
I thought that was the plan eventually, in the meantime think you could create one for start/stop
for me please mate and I'll open a draft pr with this
I am not with my computer so @gentlementlegen maybe you can. Anyways you can work anywhere and then open a pull later when the repo is ready.
Both have been mentioned to handle XP deductions although it should only be one.
I think it makes sense for #7 to have this plugin as part of it's plugins: uses: with:
config, sending a negative XP amount and "stop" once it decides to kick & penalize the hunter. By invoking this plugin, any open PR would also be closed and XP is handled by only one.
Or I can remove the notion of XP handling in this and have it be just a slash command plugin for /start
and /stop
not invoked by any other plugin. If #7 kicks the user and handles XP then it won't need to call into this which means a user can only use /stop
while still still inside the deadline which shouldn't incur a negative XP impact anyway right?
Only wildcard unassign should deduct XP for inactivity. If a user gives up with /stop within the allocated timeframe it's fine. No punishment.
PR ready for review once the repo is good to go.
I assume the org will just be @ubiquibot-plugins/start-stop
for example? I've used that name for it temporarily
Apologies this slipped my mind. start-stop
seems like a poor naming, maybe more something like assignee-manager
since it helps with assigning users to tasks.
Sure, maybe one of the following:
Whatever the repo gets called I'll change my code references to
Related repository: https://github.com/ubiquibot/command-start-stop
Apologies this slipped my mind.
start-stop
seems like a poor naming, maybe more something likeassignee-manager
since it helps with assigning users to tasks.
command-start-stop
is the best because it follows very clear standard syntax on how to name our plugin repositories.
command
start
commandstop
commandYou can add a description under the repository description field that explains it is used for assignee management.
@gentlementlegen is there a structure yet for the XP?
- If a user is automatically removed due to not meeting the deadline/inactivity: -100 XP
- If a user is removed by a team member: -50 XP
Or should I cover commands for admins like:
No the admin can unassign using the GitHub UI. Please try and keep this codebase as simple as possible. I am keen on having the minimal amount of features necessary so that the codebase is easy to maintain.
I think that the rewards shouldn't be settable as you described because that is affected by factors that have little to do with the work, like if the collaborator had a good rest, or a good day, or ate a good meal just before reviews etc.
This does remind me, I think that in our "database" (JSON storage in the repository) we should include metadata on the points deductions. For example, include a GitHub issue URL and then the deduction amount. I don't think we should support additions to XP.
My vision is that XP should be derived from total dollars earned, minus deductions. The reason why this logic is sound to me is because if we are trying to build meritocracies, the amount of dollars distributed should directly correlate with the value the contributor has provided. The more value they provided to the organization means that they should have more influence over the organization. XP is intended to eventually be a major factor in governance.
"database" (JSON storage in the repository)
Is this a replacement KV for action-only plugins sort of thing or worker types should have the same sort of storage?
Until AA is finalized we'll be funding wallets with the faucet so unless the permit generation flow is modified to fund their address we'll need to either:
/start|stop
and we can balance check them when they /start
, fund if needed, cache and never fund them again.listed in order of preference
I'm a fan of this vision as I'm in good standing with this approach lmao but it is the most provable metric to go by especially if XP is always <= dollars earned.
or ate a good meal just before reviews etc.
Great advice I need to embody more myself 😂
"database" (JSON storage in the repository)
Is this a replacement KV for action-only plugins sort of thing or worker types should have the same sort of storage?
My proposal https://github.com/ubiquibot/plugin-template/issues/2
Until AA is finalized we'll be funding wallets with the faucet so unless the permit generation flow is modified to fund their address we'll need to either:
How about sponsored transactions as a first starting point instead? Is this possible?
- update the current flow to call the faucet worker before generating and cache
I do like that this approach can work on any network, not just gnosis chain. However I assume it's more work to set up.
or ate a good meal just before reviews etc.
Great advice I need to embody more myself 😂
It's a pretty common negotiation tactic to make an ask over food
How about sponsored transactions as a first starting point instead? Is this possible?
More info here but yes it's possible I'm sure. Right now we have a fresh EOA with funding, we could just as easily deploy a Safe right now and use that safe as the user wallet and not the EOA. Then setup the infrastructure needed for it.
However I assume it's more work to set up.
On the OpenZeppelin Defender side it's a couple click process to clone a relayer onto another chain. The faucet needs refactored to handle multiple chains and multiple relayers but it needs refactored anyway to support the first iteration of AA anyway.
+ Evaluating results. Please wait...
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Task | 1 | 800 |
Comment | Formatting | Relevance | Reward |
---|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 1 | 0.2275 |
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@gentlementlegen so this start/stop should work exactly how the … | 0.325content: p: count: 13 score: 1 wordValue: 0.1 formattingMultiplier: 0.25 | 0.7 | 0.2275 |
View | Contribution | Count | Reward |
---|
Comment | Formatting | Relevance | Reward |
---|
View | Contribution | Count | Reward |
---|
Comment | Formatting | Relevance | Reward |
---|
View | Contribution | Count | Reward |
---|---|---|---|
Review | Comment | 12 | 7.04 |
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@Keyrxng Getting the following error on `yarn worker`: &… | 4.2content: p: count: 25 score: 1 code: count: 17 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
Works fine Moved this https://github.com/ubiquibot/command-start… | 1.6content: p: count: 16 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@Keyrxng `UBIQUIBOT_TOKEN` is the github app token, righ… | 3content: p: count: 29 score: 1 code: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@gentlementlegen Do we need to pass `CLOUDFLARE_ACCOUNT_ID… | 1.3content: p: count: 10 score: 1 code: count: 1 score: 1 a: count: 2 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@gentlementlegen The convention is to simply use the latest yarn… | 1.7content: p: count: 17 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@Keyrxng As far as I understand `getMultiplier()`, `… | 2.2content: p: count: 19 score: 1 code: count: 3 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@Keyrxng Could you update [worker-deploy.yml](https://github.com… | 1.1content: p: count: 10 score: 1 a: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
Works fine with yarn v4, at least in the "worker mode". As far I… | 3.7content: p: count: 35 score: 1 a: count: 1 score: 1 code: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
There are 3 entities here: 1. Kernel 2. Core ubiquity plugins 3.… | 11.6content: p: count: 114 score: 1 code: count: 1 score: 1 a: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@Keyrxng The plugin config example provided in the README throws… | 3.9content: p: count: 31 score: 1 code: count: 7 score: 1 a: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
@Keyrxng Still getting the `SyntaxError: "[object Object]" i… | 3.1content: p: count: 23 score: 1 code: count: 7 score: 1 a: count: 1 score: 1 wordValue: 0.1 formattingMultiplier: 1 | - | - |
I'm getting this warning on `/start`: ``` #… | 8.8content: p: count: 72 score: 1 code: count: 16 score: 1 wordValue: 0.1 formattingMultiplier: 1 | 0.8 | 7.04 |
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 6 | 51.6 |
Comment | Formatting | Relevance | Reward |
---|---|---|---|
Each plugin should be hosted on their own repositories. I imagin... | 2.1 | 0.38 | 2.1 |
I am not with my computer so @gentlementlegen maybe you can. Any... | 2.7 | 0.37 | 2.7 |
Only wildcard unassign should deduct XP for inactivity. If a use... | 2.4 | 0.49 | 2.4 |
> Apologies this slipped my mind. `start-stop` seems ... | 14.7li: count: 3 score: "3" words: 25 code: count: 6 score: "6" words: 10 | 0.41 | 14.7 |
> @gentlementlegen is there a structure yet for the XP? >... | 22.6li: count: 2 score: "2" words: 26 | 0.45 | 22.6 |
> > "database" (JSON storage in the repository) > >... | 7.1li: count: 1 score: "1" words: 13 | 0.49 | 7.1 |
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Specification | 1 | 14.2 |
Issue | Comment | 3 | 12.8 |
Comment | Formatting | Relevance | Reward |
---|---|---|---|
A user should be able to start or stop working on a task, by typ... | 14.2a: count: 1 score: "1" words: 3 code: count: 2 score: "2" words: 2 | 1 | 14.2 |
@jordan-ae Correct, the goal is to reimplement the same function... | 3.8 | 0.63 | 3.8 |
Apologies this slipped my mind. `start-stop` seems like ... | 7.2code: count: 2 score: "2" words: 4 | 0.44 | 7.2 |
Related repository: https://github.com/ubiquibot/command-start-s... | 1.8 | 0.43 | 1.8 |
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 1 | 1.4 |
Comment | Formatting | Relevance | Reward |
---|---|---|---|
@gentlementlegen so this start/stop should work exactly how the ... | 1.4 | 0.28 | 1.4 |
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Task | 1 | 800 |
Issue | Comment | 8 | 0 |
Issue | Comment | 8 | 99.7 |
A user should be able to start or stop working on a task, by typing
/start
or/stop
within a comment under an issue.Stop this one will be especially useful to gracefully quit a task without losing XP. if somebody is disqualified through poor/non performance, then they will get negative XP.
See code reference