ubiquity-os / plugins-wishlist

0 stars 5 forks source link

command/[start | stop] #9

Closed gentlementlegen closed 4 months ago

gentlementlegen commented 6 months ago

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

jordan-ae commented 6 months ago

@gentlementlegen so this start/stop should work exactly how the v1 Bot does currently?

gentlementlegen commented 6 months ago

@jordan-ae Correct, the goal is to reimplement the same functionalities but in a cleaner manner within separate modules.

Keyrxng commented 6 months ago

/start

ubiquibot[bot] commented 6 months ago

DeadlineThu, May 16, 10:25 PM UTC
Registered Wallet 0xAe5D1F192013db889b1e2115A370aB133f359765
Tips:
Keyrxng commented 5 months ago

@gentlementlegen is there a structure yet for the XP?

Or should I cover commands for admins like:

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?

Keyrxng commented 5 months ago

/stop

ubiquibot[bot] commented 5 months ago
+ You have been unassigned from the task
Keyrxng commented 5 months ago

/start

ubiquibot[bot] commented 5 months ago

DeadlineFri, May 17, 3:58 PM UTC
Registered Wallet 0xAe5D1F192013db889b1e2115A370aB133f359765
Tips:
Keyrxng commented 5 months ago

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

0x4007 commented 5 months ago

Each plugin should be hosted on their own repositories. I imagine we will have a dedicated organization to host "official" plugins.

Keyrxng commented 5 months ago

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

0x4007 commented 5 months ago

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.

Keyrxng commented 5 months ago

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?

0x4007 commented 5 months ago

Only wildcard unassign should deduct XP for inactivity. If a user gives up with /stop within the allocated timeframe it's fine. No punishment.

Keyrxng commented 5 months ago

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

gentlementlegen commented 5 months ago

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.

Keyrxng commented 5 months ago

Sure, maybe one of the following:

Whatever the repo gets called I'll change my code references to

gentlementlegen commented 5 months ago

Related repository: https://github.com/ubiquibot/command-start-stop

0x4007 commented 4 months ago

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.

command-start-stop is the best because it follows very clear standard syntax on how to name our plugin repositories.

You can add a description under the repository description field that explains it is used for assignee management.

0x4007 commented 4 months ago

@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.

Keyrxng commented 4 months ago

"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:

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 😂

0x4007 commented 4 months ago

"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

Keyrxng commented 4 months ago

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.

ubiquibot[bot] commented 4 months ago
+ Evaluating results. Please wait...
ubiquibot-dev[bot] commented 4 months ago

[ 800 WXDAI ]

@Keyrxng
Contributions Overview
View Contribution Count Reward
Issue Task 1 800
Conversation Incentives
Comment Formatting Relevance Reward

[ 0.2275 WXDAI ]

@jordan-ae
Contributions Overview
View Contribution Count Reward
Issue Comment 1 0.2275
Conversation Incentives
Comment Formatting Relevance Reward
@gentlementlegen so this start/stop should work exactly how the …
0.325
content:
  p:
    count: 13
    score: 1
wordValue: 0.1
formattingMultiplier: 0.25
0.7 0.2275

[ 0 WXDAI ]

@gentlementlegen
Contributions Overview
View Contribution Count Reward
Conversation Incentives
Comment Formatting Relevance Reward

[ 0 WXDAI ]

@0x4007
Contributions Overview
View Contribution Count Reward
Conversation Incentives
Comment Formatting Relevance Reward

[ 7.04 WXDAI ]

@rndquu
Contributions Overview
View Contribution Count Reward
Review Comment 12 7.04
Conversation Incentives
Comment Formatting Relevance Reward
@Keyrxng Getting the following error on `yarn worker`: &…
4.2
content:
  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.6
content:
  p:
    count: 16
    score: 1
wordValue: 0.1
formattingMultiplier: 1
- -
@Keyrxng `UBIQUIBOT_TOKEN` is the github app token, righ…
3
content:
  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.3
content:
  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.7
content:
  p:
    count: 17
    score: 1
wordValue: 0.1
formattingMultiplier: 1
- -
@Keyrxng As far as I understand `getMultiplier()`, `…
2.2
content:
  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.1
content:
  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.7
content:
  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.6
content:
  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.9
content:
  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.1
content:
  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.8
content:
  p:
    count: 72
    score: 1
  code:
    count: 16
    score: 1
wordValue: 0.1
formattingMultiplier: 1
0.8 7.04
ubiquibot[bot] commented 4 months ago

[ 51.6 WXDAI ]

@0x4007
Contributions Overview
ViewContributionCountReward
IssueComment651.6
Conversation Incentives
CommentFormattingRelevanceReward
Each plugin should be hosted on their own repositories. I imagin...
2.10.382.1
I am not with my computer so @gentlementlegen maybe you can. Any...
2.70.372.7
Only wildcard unassign should deduct XP for inactivity. If a use...
2.40.492.4
> Apologies this slipped my mind. `start-stop` seems ...
14.7
li:
  count: 3
  score: "3"
  words: 25
code:
  count: 6
  score: "6"
  words: 10
0.4114.7
> @gentlementlegen is there a structure yet for the XP? >...
22.6
li:
  count: 2
  score: "2"
  words: 26
0.4522.6
> > "database" (JSON storage in the repository) > >...
7.1
li:
  count: 1
  score: "1"
  words: 13
0.497.1

[ 27 WXDAI ]

@gentlementlegen
Contributions Overview
ViewContributionCountReward
IssueSpecification114.2
IssueComment312.8
Conversation Incentives
CommentFormattingRelevanceReward
A user should be able to start or stop working on a task, by typ...
14.2
a:
  count: 1
  score: "1"
  words: 3
code:
  count: 2
  score: "2"
  words: 2
114.2
@jordan-ae Correct, the goal is to reimplement the same function...
3.80.633.8
Apologies this slipped my mind. `start-stop` seems like ...
7.2
code:
  count: 2
  score: "2"
  words: 4
0.447.2
Related repository: https://github.com/ubiquibot/command-start-s...
1.80.431.8

[ 1.4 WXDAI ]

@jordan-ae
Contributions Overview
ViewContributionCountReward
IssueComment11.4
Conversation Incentives
CommentFormattingRelevanceReward
@gentlementlegen so this start/stop should work exactly how the ...
1.40.281.4

[ 899.7 WXDAI ]

@Keyrxng
Contributions Overview
ViewContributionCountReward
IssueTask1800
IssueComment80
IssueComment899.7
Conversation Incentives
CommentFormattingRelevanceReward
@gentlementlegen is there a structure yet for the XP? - If a ...
-
li:
  count: 5
  score: "0"
  words: 65
code:
  count: 5
  score: "0"
  words: 11
0.46-
- https://github.com/ubq-testing/start-stop-module/issues/4 init...
-
li:
  count: 1
  score: "0"
  words: 12
0.29-
I thought that was the plan eventually, in the meantime think yo...
-
code:
  count: 1
  score: "0"
  words: 2
0.43-
- #7 this plugin handles the detection and the follow-up of the ...
-
li:
  count: 2
  score: "0"
  words: 28
code:
  count: 4
  score: "0"
  words: 6
0.545-
PR ready for review once the repo is good to go. I assume the...
-
code:
  count: 1
  score: "0"
  words: 4
0.515-
Sure, maybe one of the following: - assignment-manager - bou...
-
li:
  count: 8
  score: "0"
  words: 20
0.365-
> "database" (JSON storage in the repository) Is this a re...
-
li:
  count: 3
  score: "0"
  words: 57
code:
  count: 2
  score: "0"
  words: 3
0.395-
> How about sponsored transactions as a first starting point ...
-
a:
  count: 1
  score: "0"
  words: 1
0.52-
@gentlementlegen is there a structure yet for the XP? - If a ...
22.2
li:
  count: 5
  score: "5"
  words: 65
code:
  count: 5
  score: "5"
  words: 11
0.4622.2
- https://github.com/ubq-testing/start-stop-module/issues/4 init...
4.7
li:
  count: 1
  score: "1"
  words: 12
0.294.7
I thought that was the plan eventually, in the meantime think yo...
4.1
code:
  count: 1
  score: "1"
  words: 2
0.434.1
- #7 this plugin handles the detection and the follow-up of the ...
22.6
li:
  count: 2
  score: "2"
  words: 28
code:
  count: 4
  score: "4"
  words: 6
0.54522.6
PR ready for review once the repo is good to go. I assume the...
4.2
code:
  count: 1
  score: "1"
  words: 4
0.5154.2
Sure, maybe one of the following: - assignment-manager - bou...
11.8
li:
  count: 8
  score: "8"
  words: 20
0.36511.8
> "database" (JSON storage in the repository) Is this a re...
20
li:
  count: 3
  score: "3"
  words: 57
code:
  count: 2
  score: "2"
  words: 3
0.39520
> How about sponsored transactions as a first starting point ...
10.1
a:
  count: 1
  score: "1"
  words: 1
0.5210.1