Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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 asset system - Separate asset types and add pallet-assets instances to runtime #1177
New asset system - Separate asset types and add pallet-assets instances to runtime #1177
Changes from 9 commits
360f282
6056a22
8aa10a4
af23bd2
45ede95
f35b626
5da2fe5
e61b6aa
cb4bfe8
bcfcaea
a86c36a
d278480
14c5e6f
e7c912c
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if that's a good idea, but I don't think we need this requirement here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess it's for convenience?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We will need that for
MaxEncodedLen
implementation for thePool
struct.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ok, I think we can get rid of this after merging #1197
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should use the same
ForceOrigin
for all pallets. The distinction between Council and Tech Comm isn't there right now anyways.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I disagree for the following reasons:
CampaignAsset
class is much more powerful, as it allows to spawn assets that can be used to pay transaction fees. Thus it should require at least higher privileges than other asset classes to be created.a. While other asset classes use the
ForceOrigin
solely to technically correct faults, theCampaignAsset
class uses theForceOrigin
to realize business decisions (pushing into directions by utilizing campaigns)b. The Council is different from the Technical Committee (TC), even on Zeitgeist. In contrast to the TC, the Council contains all members of the executive. Currently the Council consists of 5 members, with an required agreement from the Council of at least 2/3 to spawn campaign assets, at least two members of the executive have to agree, thus also mapping agreement within the executive of Zeitgeist to move forward with campaigns.
I decided to add the TC to allow assistance in regards to technical aspects, such as cleaning up campaign assets after a campaign is over. However, I think granting the (complete) TC the
ForceOrigin
power invalidates my second argument. I am leaning towards removing the TC completely from theForceOrigin
of theCampaignAsset
class. What's your opinion?This makes me think about point 1. though. The
MarketAssets
have theForceOrigin
TwoThirdsOrTechnicalCommittee
. ObviouslyMarketAssets
have an even more tangible value.MarketAssets
should never be managed directly as the pallets control the whole lifecycle of market assets such as outcome tokens or pool shares. I added this because I wanted to give the TC the opportunity to hotfix some inconsistent states introduced by pallets. Thinking more about it though, I think the TC should not have the power to manage market assets. What's your opinion?Makes me also question right now if it makes sense at all to add the TC to any
ForceOrigin
, includingCustomAssets
. After all, with the help of the Council the TC is capable of spawning a referendum with a short period until dispatch.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm okay with all of these options. As long as there are no elections, I don't see any difference between the Council and TC. In the long run (assuming elections take place), I'd prefer if the TC did not have control over market assets. This is based on the assumption that until then, all bugs will have been fixed or can be fixed by governance rather than TC intervention.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does it make more sense like this: a86c36a
Idea: Still convinced about at least 2/3 Council for CampaignAssets, full tech committee for MarketAssets (due to the potential impact) and 2/3 technical committee for CustomAssets.