-
Notifications
You must be signed in to change notification settings - Fork 21
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
Add url
property to manifest.json
#33
Comments
@gentlementlegen Pls check the description |
How do we deal with plugins that offers both Actions and Workers like the telegram chatroom? |
I don't have much context on the telegram kernel but it seems the plugin architecture must be optimized if it requires both github action and a worker. |
We could do:
It's split into worker/action because we needed a node env to run MTProto API to implement the It should be converted to a single worker plugin like it was originally now that 0x4007 decided to export the |
@gentlementlegen I need you blessing on this task. I think plugins that work both as a worker and a github action are outliers and it's safe to introduce the |
Sure, we only have one edge case so far. Maybe we can think of an option later like "install as Worker" and "install as Action". We can safely introduce the url property in the meantime. |
How will the onboarding UI know if the plugin is a worker or action? We could also have
Don't we still need node runtime for MTPRroto, so how can we convert to single worker plugin? |
If the
@Keyrxng knows better |
This is no longer the case so perhaps this can be closed as unplanned. |
How to get a plugin URL for a 3rd party plugin created by some other developer? |
I don't have full context on this repository but specifically in the plugin installer UI I fixed this problem. |
The problem is that the plugin installer cannot guess the URL to put it in the configuration which is the problem. It only knows the GitHub repository. One workaround would be if we had deployment urls linked within the github repo we could use these. |
Then we also have to force partners to setup github deployment URLs which might not be the too convenient for them. A single |
/start |
/help |
Available Commands
|
The schema for start/stop has changed and it is not up to date here which is why the command didn't work. fixing. |
/start |
My understanding is that it happens the other way around: |
Then why don't we just try calling it as an external url first and if it fails then run as action |
How do you guess the deployment url? This is why the proposal makes it populated during the deployment step |
This is a fine approach but another way would be that plugin installer sets This way we also solve the problem with changing URLs, because if the URL is in the manifest then the kernel can check it and you don't need to update URLs. I was only addressing @0x4007 concern that we couldn't use closed-source plugins anymore, but it's not true because you could still specify a https URL in the |
@whilefoo I like this idea because that would streamline the configuration file which would only contain However we have that one plugin for telegram that uses both, but that's the only one (we might want to look into it to change that). |
I don't think we should make accommodations based on the telegram plugin architecture. To be honest I haven't been able to benefit from it, like subscribing to events never worked etc. there's a high chance it will be completely redone in the future. |
Added 2 tasks, for the kernel and UI installer: |
+ Evaluating results. Please wait... |
|
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Task | 1 | 150 |
Issue | Comment | 4 | 3.855 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
How do we deal with plugins that offers both Actions and Workers… | 1.06content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 16 wordValue: 0.1 result: 1.06 | 0.5 | 3 | 0.4125 |
Sure, we only have one edge case so far. Maybe we can think of a… | 2.05content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 35 wordValue: 0.1 result: 2.05 | 1 | 3 | 1.53 |
The problem is that the plugin installer cannot guess the URL to… | 2.54content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 45 wordValue: 0.1 result: 2.54 | 1 | 3 | 1.92 |
The schema for start/stop has changed and it is not up to date h… | 1.49content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 24 wordValue: 0.1 result: 1.49 | 0 | 3 | -0.0075 |
[ 150 WXDAI ]
@rndquu
⚠️ Your rewards have been limited to the task price of 150 WXDAI.
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Specification | 1 | 95.16 |
Issue | Comment | 7 | 56.208 |
Review | Comment | 1 | 1.365 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
We need to know an exact plugin URL (in case it works as a cloud… | 31.72content: content: p: score: 0 elementCount: 6 ol: score: 0 elementCount: 1 li: score: 0.5 elementCount: 3 a: score: 5 elementCount: 5 result: 26.5 regex: wordCount: 105 wordValue: 0.1 result: 5.22 | 1 | 3 | 95.16 |
@gentlementlegen Pls check the description | 0.39content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 5 wordValue: 0.1 result: 0.39 | 0.2 | 3 | 0.234 |
I don't have much context on the telegram kernel but it seems th… | 1.7content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 28 wordValue: 0.1 result: 1.7 | 0.5 | 3 | 2.55 |
@gentlementlegen I need you blessing on this task.I think plug… | 2content: content: p: score: 0 elementCount: 2 result: 0 regex: wordCount: 34 wordValue: 0.1 result: 2 | 1 | 3 | 6 |
If the `url` property is present in the `manifest.js… | 1.06content: content: p: score: 0 elementCount: 2 result: 0 regex: wordCount: 16 wordValue: 0.1 result: 1.06 | 0.5 | 3 | 1.59 |
How to get a plugin URL for a 3rd party plugin created by some o… | 1.06content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 16 wordValue: 0.1 result: 1.06 | 0.8 | 3 | 2.544 |
Then we also have to force partners to setup github deployment U… | 2.78content: content: p: score: 0 elementCount: 2 result: 0 regex: wordCount: 50 wordValue: 0.1 result: 2.78 | 1 | 3 | 8.34 |
Added 2 tasks, for the kernel and UI installer:- https://githu… | 11.65content: content: p: score: 0 elementCount: 3 ul: score: 0 elementCount: 1 li: score: 0.5 elementCount: 2 a: score: 5 elementCount: 2 result: 11 regex: wordCount: 9 wordValue: 0.1 result: 0.65 | 1 | 3 | 34.95 |
@gentlementlegen So `homepage_url` is basically the work… | 0.65content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 9 wordValue: 0.1 result: 0.65 | 0.7 | 3 | 1.365 |
[ 25.02 WXDAI ]
@Keyrxng
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 1 | 25.02 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
We could do: `manifest.urls.action: ...`It's split int… | 8.34content: content: p: score: 0 elementCount: 3 a: score: 5 elementCount: 1 result: 5 regex: wordCount: 62 wordValue: 0.1 result: 3.34 | 1 | 3 | 25.02 |
[ 65.322 WXDAI ]
@whilefoo
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 4 | 35.94 |
Review | Comment | 4 | 29.382 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
How will the onboarding UI know if the plugin is a worker or act… | 3.88content: content: p: score: 0 elementCount: 4 result: 0 regex: wordCount: 74 wordValue: 0.1 result: 3.88 | 1 | 3 | 11.64 |
Also we can still support raw https URLs, so if it's a https URL… | 2.83content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 51 wordValue: 0.1 result: 2.83 | 1 | 3 | 8.49 |
I meant if `org/repo` is set in the repo config, for man… | 1.44content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 23 wordValue: 0.1 result: 1.44 | 0 | 3 | 0 |
This is a fine approach but another way would be that plugin ins… | 5.27content: content: p: score: 0 elementCount: 3 result: 0 regex: wordCount: 106 wordValue: 0.1 result: 5.27 | 1 | 3 | 15.81 |
I think it's a good idea to make this a shared workflow so it wo… | 1.65content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 27 wordValue: 0.1 result: 1.65 | 0.7 | 3 | 3.465 |
Isn't it better to use `github.sha` so that you're worki… | 2.59content: content: p: score: 0 elementCount: 2 result: 0 regex: wordCount: 46 wordValue: 0.1 result: 2.59 | 0.9 | 3 | 6.993 |
do we need to force? | 0.39content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 5 wordValue: 0.1 result: 0.39 | 0.4 | 3 | 0.468 |
Just did some research and it's possible to make it appear like … | 6.44content: content: p: score: 0 elementCount: 1 a: score: 5 elementCount: 1 result: 5 regex: wordCount: 23 wordValue: 0.1 result: 1.44 | 0.8 | 3 | 18.456 |
[ 13.113 WXDAI ]
@0x4007
Contributions Overview
View | Contribution | Count | Reward |
---|---|---|---|
Issue | Comment | 4 | 7.308 |
Review | Comment | 3 | 5.805 |
Conversation Incentives
Comment | Formatting | Relevance | Priority | Reward |
---|---|---|---|---|
This is no longer the case so perhaps this can be closed as unpl… | 0.94content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 14 wordValue: 0.1 result: 0.94 | 0.5 | 3 | 1.41 |
I don't have full context on this repository but specifically in… | 1.28content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 20 wordValue: 0.1 result: 1.28 | 0.7 | 3 | 2.688 |
Then why don't we just try calling it as an external url first a… | 1.38content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 22 wordValue: 0.1 result: 1.38 | 0.4 | 3 | 1.656 |
I don't think we should make accommodations based on the telegra… | 2.59content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 46 wordValue: 0.1 result: 2.59 | 0.2 | 3 | 1.554 |
Ensure it's part of the manifest specification. If not then pref… | 0.94content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 14 wordValue: 0.1 result: 0.94 | 0.8 | 3 | 2.256 |
@UbiquityOS is url a standard property part of the manifest.json… | 0.83content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 12 wordValue: 0.1 result: 0.83 | 0.5 | 3 | 1.245 |
Not sure if it's for the same purpose. If it isn't then prefix i… | 1.28content: content: p: score: 0 elementCount: 1 result: 0 regex: wordCount: 20 wordValue: 0.1 result: 1.28 | 0.6 | 3 | 2.304 |
I will updat all the related plugins that should be treated as workers and link the pull-requests here. |
I think this is supposed to be a long-running Action? rfc @sshivaditya2019 |
Right now it is set as a worker |
And it is set as an Action (actually it is set even twice). My guess is that it started as a Worker but was a long running process and eventually moved to an Action. Seems to run fine as an Action: https://github.com/ubiquity-os-marketplace/text-vector-embeddings/actions/workflows/compute.yml |
In other orgs it's set as a worker (one, two). @sshivaditya2019 How should https://github.com/ubiquity-os-marketplace/text-vector-embeddings plugin be set, as a worker or a github action? Or it doesn't matter? Overall, as far as I remember, the general concept was that for "easy" plugins that run fast we use workers while for long running plugins we use github actions. https://github.com/ubiquity-os-marketplace/text-vector-embeddings basically saves data to a DB on a request so it falls in the "easy" plugins section. |
Now that our plugins use the SDK and |
It seems to run only 10 seconds but I would keep it as an Action because Cloudflare has tight time limits so it might timeout and we don't need it to be fast because it's not responding to users |
Worst case we can just disable the workflow that deploys to cloudflare and remove the url from the manifest to get it back as actions. |
lol guys I have said it like 5 times now. @0x4007 exposed the private key via org secrets after it holding back the telegram bot for a week or so in debate, so it doesn't need to exist like it does now. It ONLY exists like that because review pushed me that way but it should be a single worker entry. Glad you came to a resolution with it @gentlementlegen |
You can file a proposal so we can fix it |
ubiquity-os-marketplace/ubiquity-os-kernel-telegram#20 Been open for ages |
We need to know an exact plugin URL (in case it works as a cloudflare worker) in order to set it in the partner onboarding UI.
What should be done:
url
property to manifest.jsonurl
property inmanifest.json
on each deployment of thedevelopment
branch. I think it's enough for now to use thedevelopment
plugin instances + https://github.com/ubiquity-os/ubiquity-os-plugin-installer will simply have to fetch a default plugin's github branch in order to get a plugin URL.url
property set in themanifest.json
file and updated worker-deploy.yml workflowOriginal comment
The text was updated successfully, but these errors were encountered: