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

Add parameter descriptions for core plugins in the plugin-input.ts #24

Open
rndquu opened this issue Nov 19, 2024 · 23 comments
Open

Add parameter descriptions for core plugins in the plugin-input.ts #24

rndquu opened this issue Nov 19, 2024 · 23 comments

Comments

@rndquu
Copy link
Member

rndquu commented Nov 19, 2024

Right now all core plugins have a manifest.json file (example) describing plugin's:

  • name
  • description
  • listeners
  • command examples
  • configuration parameters

The issue is that when plugin configuration is displayed in https://github.com/ubiquity-os/ubiquity-os-plugin-installer there're no any configuration parameter descriptions so it's really hard for a partner to find out what parameters are meant to be used for:
Screenshot 2024-11-19 at 19 14 11

What should be done for all of the core plugins in https://github.com/ubiquity-os-marketplace:

  1. Make sure the readme file is relevant (i.e. has a relevant config example and configuration parameter descriptions)
  2. Make sure there's a name property in the manifest.json (some of the core plugins miss it)
  3. Make sure there's a description property in the manifest.json
  4. Add descriptions of plugin configuration parameters in the plugin-input.ts file (for example this code generates this manifest). Simply put we should add the description field for all of the plugin parameters in the plugin-input.ts file. Description should include general info and possible parameter options.

Notice that in the manifest.json file the configuration schema is created dynamically:

  1. update-configuration.yml workflow runs
  2. Configuration schema is fetched from plugin-input.ts
  3. manifest.json is updated (example commit)

Then we'll display all configuration parameter descriptions in https://github.com/ubiquity-os/ubiquity-os-plugin-installer on creating/editing a config.

Update: parameter description PRs:

@rndquu
Copy link
Member Author

rndquu commented Nov 19, 2024

@gentlementlegen Pls check the description. Perhaps there's a way to create plugin parameter configuration descriptions in the plugin-input.ts file.

@gentlementlegen
Copy link
Member

@rndquu I believe there is a simpler way. For every item in the configuration, there is a "description" parameter available. It gets serialized in the manifest.json and is available right away.

Example:

The following code
https://github.com/Meniole/command-query-user/blob/042533ebbbfebaf5f5754b1d4a2fcf1d8afd94ad/src/types/plugin-input.ts#L7

Yields the following configuration
https://github.com/Meniole/command-query-user/blob/fix/improvements/manifest.json#L16

And I think this would be usable by the UI

@rndquu
Copy link
Member Author

rndquu commented Nov 19, 2024

@rndquu I believe there is a simpler way. For every item in the configuration, there is a "description" parameter available. It gets serialized in the manifest.json and is available right away.

Example:

The following code https://github.com/Meniole/command-query-user/blob/042533ebbbfebaf5f5754b1d4a2fcf1d8afd94ad/src/types/plugin-input.ts#L7

Yields the following configuration https://github.com/Meniole/command-query-user/blob/fix/improvements/manifest.json#L16

And I think this would be usable by the UI

Awesome, thanks, updated the spec

@rndquu rndquu changed the title Add parameter descriptions for core plugins in the manifest.json Add parameter descriptions for core plugins in the plugin-input.ts Nov 19, 2024
@Keyrxng
Copy link
Member

Keyrxng commented Nov 22, 2024

I think we should also support injecting the plugin url into the manifest after worker deployment too (could do the same for action plugins too)

  • Currently I'm taking the urls from one of our org configs, which works for now (code)
  • But if we have plugins on the marketplace which are not installed in our org then the fetch and write would fail without a - plugin: <url> and I'd need to build the URL myself and that has faults
  • 3rd party plugins fall into published but not installed
  • I'm also building the plugin names using manifest.name which should match the repo but may not, so manifest.url would be a more guaranteed way of matching

@Keyrxng
Copy link
Member

Keyrxng commented Nov 23, 2024

@gentlementlegen I'm comfortable doing this for all plugins with the exception of https://github.com/ubiquity-os-marketplace/text-conversation-rewards/blob/development/src/types/plugin-input.ts, would you mind doing this one and I'll catch the rest?

I can see there is /**\ comments for some but I'd imagine these descriptions would be different at least more verbose and you would know best


We have the README displayed to the right of the editor now. So for each input should we have a little tooltip info indicator top-right adjacent to the input title i.e EVM Private Encrypted ℹ️ or adjacent the input field on the far right for each row?

image

@rndquu
Copy link
Member Author

rndquu commented Nov 26, 2024

We have the README displayed to the right of the editor now. So for each input should we have a little tooltip info indicator top-right adjacent to the input title i.e EVM Private Encrypted ℹ️ or adjacent the input field on the far right for each row?

I think tooltip is fine

@rndquu
Copy link
Member Author

rndquu commented Nov 26, 2024

I think we should also support injecting the plugin url into the manifest after worker deployment too (could do the same for action plugins too)

  • Currently I'm taking the urls from one of our org configs, which works for now (code)
  • But if we have plugins on the marketplace which are not installed in our org then the fetch and write would fail without a - plugin: <url> and I'd need to build the URL myself and that has faults
  • 3rd party plugins fall into published but not installed
  • I'm also building the plugin names using manifest.name which should match the repo but may not, so manifest.url would be a more guaranteed way of matching

ubiquity-os/plugin-template#33

@Keyrxng
Copy link
Member

Keyrxng commented Nov 26, 2024

/start

@Keyrxng
Copy link
Member

Keyrxng commented Nov 26, 2024

Thanks @gentlementlegen for handling that one for me, appreciate it

Keyrxng pushed a commit to ubq-testing/ubiquity-os-plugin-installer that referenced this issue Nov 26, 2024
@gentlementlegen
Copy link
Member

/start

Copy link

A new workroom has been created for this task. Join chat

@Keyrxng
Copy link
Member

Keyrxng commented Nov 26, 2024

Cheers @gentlementlegen

I've mocked the descriptions in the linked PR for now and once the related PRs in plugin repos are merged I'll replace the mocks.

@gentlementlegen
Copy link
Member

/start

Copy link

! This issue is already assigned. Please choose another unassigned task.

@rndquu rndquu mentioned this issue Nov 28, 2024
Copy link

Passed the deadline and no activity is detected, removing assignees: @Keyrxng.

Copy link

@Keyrxng the deadline is at Wed, Dec 4, 11:35 AM UTC

Copy link

Passed the deadline and no activity is detected, removing assignees: @Keyrxng.

Copy link

@Keyrxng the deadline is at Tue, Dec 10, 12:39 AM UTC

Copy link

Passed the disqualification threshold and no activity is detected, removing assignees: @Keyrxng.

@henalolp
Copy link

/help

Copy link

Available Commands

Command Description Example
/help List all available commands. /help
/allow Allows the user to modify the given label type. /allow @user1 label
/ask Ask any question about the repository, issue or pull request /ask
/query Returns the user's wallet, access, and multiplier information. /query @UbiquityOS
/start Assign yourself and/or others to the issue/task. /start
/stop Unassign yourself from the issue/task. /stop
/wallet Register your wallet address for payments. Use '/wallet unset' to unlink your wallet. /wallet ubq.eth

@henalolp
Copy link

/start

Copy link

Deadline Mon, Dec 16, 11:47 PM UTC
Beneficiary 0x226AAE6Db84dca652818400750b8BF96a077349e

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.

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.

4 participants