Skip to content

Design Doc: Provider Contexts #2311

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

Merged
merged 53 commits into from
Jul 30, 2025
Merged

Conversation

wilwade
Copy link
Collaborator

@wilwade wilwade commented Apr 4, 2025

Goal

The goal of this PR is to layout a design doc for storing Provider Contexts on chain. This would allow a provider to have one or more applications and provider user consumed logos and names (in multiple languages).

Closes #2269

@wilwade wilwade requested a review from JoeCap08055 April 8, 2025 15:30
Copy link
Collaborator

@enddynayn enddynayn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 Great! Thanks!

@wilwade wilwade added the discussion Topic for Discussion at a Community Call label Apr 16, 2025
@saraswatpuneet saraswatpuneet added this to the Provider Context milestone Jul 25, 2025
Copy link
Collaborator Author

@wilwade wilwade left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Few final thoughts and questions, but I think we are good to merge, make issues, and figure out the rest of it along the way.

```rust
#[pallet::call_index(1)]
pub fn propose_to_add_application(
origin: OriginFor<T>,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wilwade should we separate add and update as separate extrinsics, assuming we can handle both with an optional application index

On similar lines do we enable updating provider data via governance in same fashion?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm....

  1. I think we can just make them set functions. Simplifies the setup.
  2. Re-Provider Data. This makes me wonder again about an Application 0 default instead of having Provider Data and Application data. Is there any other way we could unify these? Perhaps a propose_to_set_provider_application that takes an optional application id and if no application id it sets the provider level? Not sure if that makes it more confusing over having two extrinsics or not.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@wilwade we can enforce a default application (atleast 1) to exists and using provider data we can create one on registration. Provider may choose to update it later but the provider data tied to provider registry wont be updated? That way we are'nt making it overly complex

What you think?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can see how that works, but we do want to be able to update the provider information as well so not sure it gets us far unless we just "don't" have provider information and only have application information.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's true, it's better if we can just follow same model on both applications and provider side for issuing updates that way it's more nuanced even with some extra code.

I will capture that in this document

Copy link
Collaborator

@aramikm aramikm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@saraswatpuneet saraswatpuneet left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed most technical details and decisions, design may change during implementation.

@wilwade wilwade merged commit be427fe into main Jul 30, 2025
33 checks passed
@wilwade wilwade deleted the docs/provider-app-contexts-design-doc-2269 branch July 30, 2025 13:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion Topic for Discussion at a Community Call
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Provider Application Details Design Doc
7 participants