Skip to content
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

New config property requiredLabelsToStart #79

Closed
rndquu opened this issue Nov 7, 2024 · 18 comments · Fixed by #80
Closed

New config property requiredLabelsToStart #79

rndquu opened this issue Nov 7, 2024 · 18 comments · Fixed by #80

Comments

@rndquu
Copy link
Member

rndquu commented Nov 7, 2024

Right now our main goal is to show investors that the project is capable of generating a revenue.

So basically we need to concentrate on tasks related to:

  1. Partner onboarding (i.e. UbiquityOS Marketplace GUI)
  2. Charging fees
  3. Making the kernel stable
  4. Making core plugins stable

We have the following organizational issues right now:

  1. All core team members are doing everything with a lack of focus.
  2. There's too much PRs to review (from outside contributors) and none-important issues (that don't "move the needle") to discuss.

For example check these issues:

Although both of the issues above have the "Priority: 3 (High)" label in reality their business value is 1 (on a scale from 1 to 4). The "Priority" label must reflect a business priority, not a development one.

As a part of this issue we should add a new property requiredLabelsToStart which accepts an array of labels required to call the /start command.

Example config:

- plugin: http://localhost:4000 # or the URL where the plugin is hosted
  name: start-stop
  id: start-stop-command
  command: "\/start|\/stop"
  with:
    requiredLabelsToStart: ["Priority: 3 (High)", "Priority: 4 (Urgent)", "Priority: 5 (Emergency)"]
    # ...other props

In the example above it will be possible to start an issue only if it has required business priority labels.

When current issue is finished we'll:

  1. Review all github issues and update the "Priority" label to reflect a business value
  2. Set requiredLabelsToStart: ["Priority: 3 (High)", "Priority: 4 (Urgent)", "Priority: 5 (Emergency)"] for all of our organizations

This way we:

  1. Shift core team focus only on issues that have a business impact
  2. Reduce number of PRs to review and issues to discuss (because outside contributors will have to solve only high business priority issues)
  3. Save money and time only to what matters
@Keyrxng
Copy link
Member

Keyrxng commented Nov 7, 2024

/start

Copy link

Deadline Thu, Nov 7, 4:33 PM UTC
Beneficiary 0xAe5D1F192013db889b1e2115A370aB133f359765

Tip

  • Use /wallet 0x0000...0000 if you want to update your registered payment wallet address.
  • Be sure to open a draft pull request as soon as possible to communicate updates on your progress.
  • Be sure to provide timely updates to us when requested, or you will be automatically unassigned from the task.

@Keyrxng
Copy link
Member

Keyrxng commented Nov 7, 2024

When current issue is finished we'll:

  • Review all github issues and update the "Priority" label to reflect a business value
  • Set requiredLabelsToStart: ["Priority: 3 (High)", "Priority: 4 (Urgent)", "Priority: 5 (Emergency)"] for all of our organizations

Not a core focus rn but analytics or org-insights is something we could monetize and would provide a lot of value internally too both for sales/marketing but productivity and clear data to base decisions on/efficiently optimize areas of development. Partner's would eat it up too, I built something for fun a little while back for my own curiosity and happy to share if interested.


Since all tasks are about to be re-evaluated in terms of priority, I'm assuming it's pick a task from the below starting with the first item until all tasks are assessed? That's what I'mma do lmk if I should see my current PRs through instead (I feel like they are not really priority tasks).

So basically we need to concentrate on tasks related to:
Partner onboarding (i.e. UbiquityOS Marketplace GUI)
Charging fees
Making the kernel stable
Making core plugins stable

@rndquu
Copy link
Member Author

rndquu commented Nov 7, 2024

I built something for fun a little while back for my own curiosity and happy to share if interested

Pls share

Since all tasks are about to be re-evaluated in terms of priority, I'm assuming it's pick a task from the below starting with the first item until all tasks are assessed?

Yes, as far as I understand @zugdev has already started looking into https://github.com/ubiquity-os/ubiquity-os-plugin-installer/issues (pls correct me if I'm wrong and 0x4007 assigned you some other tasks)

That's what I'mma do lmk if I should see my current PRs through instead (I feel like they are not really priority tasks).

All current open PRs should be processed as usual. Only none-assigned and not-started issues will be reassessed.

@Keyrxng
Copy link
Member

Keyrxng commented Nov 7, 2024

Pls share

  • Two codebases: CLI to pull data. UI for visuals.
  • I only spent maybe 1/2-1 day on it. NextJS and data is a json rn and covers only a month or two.
  • https://gitroll.io/ got 10's/100's of thousands of users by performing the same thing but for the User. I was thinking do the same thing but for orgs.
  • I built the TS types first and built the CLI around those (huge dataset) targeting categories for analysis: IssueAnalytics - PullRequestAnalytics - ReviewAnalytics - ReviewerAnalytics
  • CLI would be converted to an API eventually
  • Not all data can be seen (or is used) in this short clip but shows my intention for it.
Screen.Recording.2024-11-07.165233.mp4

has already started looking into https://github.com/ubiquity-os/ubiquity-os-plugin-installer/issues

Looks like zug has their hands full with the staking UI instead.

I started a PR pulling in TS-template and will enable GH auth since the open PR has been inactive and I'll push that forward.

All current open PRs should be processed as usual. Only none-assigned and not-started issues will be reassessed.

Oh I see, mostly my tasks are not a business priority so I'll shift focus if only for a couple of days onto the plugin installer ui

@Keyrxng
Copy link
Member

Keyrxng commented Nov 7, 2024

Gitroll looks like:

image

I figured something to this effect but for how that individual performs within the partner org in terms of reviews, PRs and even how they affect and influence decisions or how much they contribute based on conversations.

Different views like the demo above showing the Issue/PR lifecycle at a glance and eventually consolidate this info, have AI analyze it too and build reports of what the org's slowest area of development is and why etc things like that.

Contributor breakdowns of recent tasks, time taken from pr open to close, efficiency during review etc but didn't start on that yet.

I've not built anything like serious analytics before and not sure if there is already a service like this but figured it would monetizable somehow if not for Ubiquity directly then by the same way that I expect GitRoll made money off of their users.

@zugdev
Copy link

zugdev commented Nov 7, 2024

Yes, as far as I understand @zugdev has already started looking into https://github.com/ubiquity-os/ubiquity-os-plugin-installer/issues (pls correct me if I'm wrong and 0x4007 assigned you some other tasks)

This is part of my scope, yes. I haven't yet started since I was focusing on:

  1. Continuously maintain devpool and pay
  2. On-ramp / Pool / Staking UIs

As of now, it's definitely a high priority, as in business priority, to get the plugins really easy to setup for partners. However, we currently have a lot of different types of plugins and I am yet unsure whether installing all of them is the same, I will dive into it. This issue scopes a CLI tool to setup the kernel, I imagine onde day we could have an UI to do that.

@zugdev
Copy link

zugdev commented Nov 7, 2024

One feedback on this issue: I believe external contribution comes in handy specially in non-critical issues. For instance in UI/UX we will always have some minor improvements, which are not business important, but are really easy to review. I guess these kind of issues get a bit misplaced given the new definition of priority, any ideas on it?

@rndquu
Copy link
Member Author

rndquu commented Nov 8, 2024

Pls share

  • Two codebases: CLI to pull data. UI for visuals.
  • I only spent maybe 1/2-1 day on it. NextJS and data is a json rn and covers only a month or two.
  • https://gitroll.io/ got 10's/100's of thousands of users by performing the same thing but for the User. I was thinking do the same thing but for orgs.
  • I built the TS types first and built the CLI around those (huge dataset) targeting categories for analysis: IssueAnalytics - PullRequestAnalytics - ReviewAnalytics - ReviewerAnalytics
  • CLI would be converted to an API eventually
  • Not all data can be seen (or is used) in this short clip but shows my intention for it.

@Keyrxng That's cool, DAO analytics fits with monetization.

You may:

  1. Move the analytics UI to https://github.com/orgs/ubiquity-os/repositories
  2. Create a readme with a short description and a screenshot/video of current UI

Later, when we onboard a couple of partners, we could iterate on that UI to deduce actionable steps for partners to increase their org performance.

@rndquu
Copy link
Member Author

rndquu commented Nov 8, 2024

One feedback on this issue: I believe external contribution comes in handy specially in non-critical issues. For instance in UI/UX we will always have some minor improvements, which are not business important, but are really easy to review. I guess these kind of issues get a bit misplaced given the new definition of priority, any ideas on it?

If approves don't work in uusd.ubq.fi then it's a major business impact, if button is 50px lower than expected it's a low business impact. Anyway the https://github.com/ubiquity-os is configurable per repository, so for some of the repos (especially pure UI) it makes sense to allow starting any issues.

@rndquu rndquu closed this as completed in #80 Nov 8, 2024
@rndquu rndquu reopened this Nov 8, 2024
@rndquu rndquu closed this as completed Nov 8, 2024
@rndquu
Copy link
Member Author

rndquu commented Nov 8, 2024

@Keyrxng Help

Check this config and this comment which assigned rndquu3 successfully although the expected behavior was to reject assignment because there's only the Priority 1 (Normal) label.

Not sure if it's this feature related or plugin config related issue.

@Keyrxng
Copy link
Member

Keyrxng commented Nov 8, 2024

@Keyrxng Help

Check this config and this comment which assigned rndquu3 successfully although the expected behavior was to reject assignment because there's only the Priority 1 (Normal) label.

Not sure if it's this feature related or plugin config related issue.

It might be the url; this is what the worker-deploy logs.

echo "https://ubiquity-os-command-start-stop-main.ubiquity.workers.dev" >> $GITHUB_STEP_SUMMARY

@rndquu
Copy link
Member Author

rndquu commented Nov 8, 2024

@Keyrxng Help
Check this config and this comment which assigned rndquu3 successfully although the expected behavior was to reject assignment because there's only the Priority 1 (Normal) label.
Not sure if it's this feature related or plugin config related issue.

It might be the url; this is what the worker-deploy logs.

echo "https://ubiquity-os-command-start-stop-main.ubiquity.workers.dev" >> $GITHUB_STEP_SUMMARY

Thank you, it worked

@Keyrxng
Copy link
Member

Keyrxng commented Nov 8, 2024

Thank you, it worked

Great, it looks like a couple of the plugins are misconfigured

"Error: [universal-github-app-jwt] Private Key is in PKCS#1 format, but only PKCS#8 is supported. See https://github.com/gr2m/universal-github-app-jwt#private-key-formats"

Copy link

+ Evaluating results. Please wait...

Copy link

 [ 167.382 WXDAI ] 

@Keyrxng
Contributions Overview
ViewContributionCountReward
IssueTask1150
IssueComment50
ReviewComment617.382
Conversation Incentives
CommentFormattingRelevanceReward
Not a core focus rn but analytics or `org-insights` is s…
5
content:
  content:
    p:
      score: 0
      elementCount: 6
    hr:
      score: 0
      elementCount: 1
    a:
      score: 5
      elementCount: 1
  result: 5
regex:
  wordCount: 142
  wordValue: 0
  result: 0
0.80
- Two codebases: CLI to pull data. UI for visuals. - I only sp…
3
content:
  content:
    ul:
      score: 0
      elementCount: 1
    li:
      score: 0.5
      elementCount: 6
    p:
      score: 0
      elementCount: 10
  result: 3
regex:
  wordCount: 186
  wordValue: 0
  result: 0
0.750
Gitroll looks like:![image](https://github.com/user-attachment…
5
content:
  content:
    p:
      score: 0
      elementCount: 6
    img:
      score: 5
      elementCount: 1
  result: 5
regex:
  wordCount: 152
  wordValue: 0
  result: 0
0.70
It might be the url; this is what the worker-deploy logs.echo "…
0
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 24
  wordValue: 0
  result: 0
0.40
Great, it looks like a couple of the plugins are misconfigured…
6.5
content:
  content:
    p:
      score: 0
      elementCount: 4
    ul:
      score: 0
      elementCount: 1
    li:
      score: 0.5
      elementCount: 3
    a:
      score: 5
      elementCount: 1
  result: 6.5
regex:
  wordCount: 128
  wordValue: 0
  result: 0
0.60
Resolves #79QA: https://github.com/ubq-testing/command-start-s…
0
content:
  content:
    p:
      score: 0
      elementCount: 2
  result: 0
regex:
  wordCount: 13
  wordValue: 0
  result: 0
0.60
Now throwing the logger but a message was posted in my QA when I…
3.29
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 27
  wordValue: 0.2
  result: 3.29
0.95.922
@rndquu ready for review The spec sounds like "Every body stop…
5.47
content:
  content:
    p:
      score: 0
      elementCount: 3
  result: 0
regex:
  wordCount: 49
  wordValue: 0.2
  result: 5.47
0.77.658
Empty array QA: https://github.com/ubq-testing/command-start-sto…
2
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 15
  wordValue: 0.2
  result: 2
0.20.8
Thanks I appreciate it and I hope so as it's too easy to lose re…
2.44
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 19
  wordValue: 0.2
  result: 2.44
0.41.952
Can be merged when ready I think
1.05
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 7
  wordValue: 0.2
  result: 1.05
0.51.05

 [ 95.3085 WXDAI ] 

@rndquu
Contributions Overview
ViewContributionCountReward
IssueSpecification167.83
IssueComment520.8185
ReviewComment56.66
Conversation Incentives
CommentFormattingRelevanceReward
Right now our main goal is to show investors that the project is…
22.61
content:
  content:
    p:
      score: 0
      elementCount: 23
    ol:
      score: 0
      elementCount: 4
    li:
      score: 0.5
      elementCount: 13
    a:
      score: 5
      elementCount: 1
    ul:
      score: 0
      elementCount: 1
  result: 11.5
regex:
  wordCount: 255
  wordValue: 0.1
  result: 11.11
167.83
Pls shareYes, as far as I understand @zugdev has already start…
3.06
content:
  content:
    p:
      score: 0
      elementCount: 3
  result: 0
regex:
  wordCount: 56
  wordValue: 0.1
  result: 3.06
0.852.601
@Keyrxng That's cool, DAO analytics fits with monetization.You…
4.34
content:
  content:
    p:
      score: 0
      elementCount: 5
    ol:
      score: 0
      elementCount: 1
    li:
      score: 0.5
      elementCount: 2
  result: 1
regex:
  wordCount: 62
  wordValue: 0.1
  result: 3.34
0.94.006
If approves don't work in `uusd.ubq.fi` then it's a majo…
2.97
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 54
  wordValue: 0.1
  result: 2.97
0.752.2275
@Keyrxng HelpCheck [this](https://github.com/ubiquity/pay.ubq.…
12.2
content:
  content:
    p:
      score: 0
      elementCount: 3
    a:
      score: 5
      elementCount: 2
  result: 10
regex:
  wordCount: 38
  wordValue: 0.1
  result: 2.2
0.811.76
Thank you, it worked
0.32
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 4
  wordValue: 0.1
  result: 0.32
0.70.224
@Keyrxng As far as I understand you don't have permissions to as…
1.8
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 30
  wordValue: 0.1
  result: 1.8
0.20.36
@Keyrxng Could you update the logic?1. Set `requiredLabels…
4.7
content:
  content:
    p:
      score: 0
      elementCount: 4
    ol:
      score: 1
      elementCount: 1
    li:
      score: 0.5
      elementCount: 3
  result: 2.5
regex:
  wordCount: 38
  wordValue: 0.1
  result: 2.2
0.94.48
@Keyrxng Also could you update the readme file with the `req…
0.77
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 11
  wordValue: 0.1
  result: 0.77
0.80.616
@Keyrxng I've sent invite to the https://github.com/ubiquity-os-…
1.54
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 25
  wordValue: 0.1
  result: 1.54
0.30.462
@Keyrxng Could you resolve the code conflicts? I suppose the PR …
1.06
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 16
  wordValue: 0.1
  result: 1.06
0.70.742

 [ 3.571875 WXDAI ] 

@zugdev
Contributions Overview
ViewContributionCountReward
IssueComment23.571875
Conversation Incentives
CommentFormattingRelevanceReward
This is part of my scope, yes. I haven't yet started since I was…
12.05
content:
  content:
    p:
      score: 0
      elementCount: 4
    ol:
      score: 1
      elementCount: 1
    li:
      score: 0.5
      elementCount: 2
    a:
      score: 5
      elementCount: 1
  result: 7
regex:
  wordCount: 101
  wordValue: 0.1
  result: 5.05
0.92.88375
One feedback on this issue: I believe external contribution come…
3.25
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 60
  wordValue: 0.1
  result: 3.25
0.850.688125

 [ 2.865 WXDAI ] 

@gentlementlegen
Contributions Overview
ViewContributionCountReward
ReviewComment22.865
Conversation Incentives
CommentFormattingRelevanceReward
Please fix the merge conflict and review my comment, then good t…
1.85
content:
  content:
    p:
      score: 0
      elementCount: 2
  result: 0
regex:
  wordCount: 31
  wordValue: 0.1
  result: 1.85
0.61.11
By doing so, no message is posted only a log is present (and the…
1.95
content:
  content:
    p:
      score: 0
      elementCount: 1
  result: 0
regex:
  wordCount: 33
  wordValue: 0.1
  result: 1.95
0.91.755

@0x4007
Copy link
Member

0x4007 commented Nov 18, 2024

+ Evaluating results. Please wait...

@gentlementlegen this comment should be clobbered with the results, this is a regression. e2e testing could be useful to reduce regressions.

@gentlementlegen
Copy link
Member

@0x4007 Aware of this, happens because now the logs come from the SDK which has not the capability to update comments. Related issue: ubiquity-os/plugin-sdk#28

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants