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

Genesis parameters structure ("genesis file") [WIP] #5

Closed
wants to merge 11 commits into from

Conversation

lamafab
Copy link
Contributor

@lamafab lamafab commented Dec 5, 2019

Preview: https://gist.github.com/lamafab/af5ff9f211599350ce96118e435618a9
(PSP Number can be adjusted, of course)

This sets a standard for the JSON structure (Kusama example) on how the genesis parameters including relevant data and metadata (which are not part of the state storage) should be saved and distributed.

Please note the TODO section:

  • Why is the client side id mandatory while protocolId is not?
  • Shouldn't id and protocolId be the same field/value?
  • In the (kusama) JSON file, the property field has certain key/value pairs, but the Substrate code accepts anything. This behaviour makes sense in terms of the genesis parameters, since those values just get inserted into the state storage. But how can property be useful if those values are not predefined?
  • What does the second object in "genesis" > "raw" do? See: "raw": [{},{}]. It's just empty.
  • Since Polkadot has not been released yet, why is "consensusEngine" a legacy field?
  • Those telemetry log levels are implementation specific and probably do not need to be standardized. Should the log levels be part of the genesis file? Should telemetry itself be part of the genesis file? If yes, then the behavior of the telemetry endpoint/interfaces must probably be specced, too.
pub const SUBSTRATE_DEBUG: &str = "9";
pub const SUBSTRATE_INFO: &str = "0";

pub const CONSENSUS_TRACE: &str = "9";
pub const CONSENSUS_DEBUG: &str = "5";
pub const CONSENSUS_WARN: &str = "4";
pub const CONSENSUS_INFO: &str = "1";

I passed the questions over to the Parity guys, ongoing process...

@FlorianFranzen
Copy link
Contributor

With the introduction of code_substitute in #3093 getting a proper specification published should be expedited, as this is now necessary information to sync Polkadot.

@FlorianFranzen FlorianFranzen self-assigned this Jun 18, 2021
@FlorianFranzen FlorianFranzen force-pushed the psp-genesis-parameters branch from a8f0f71 to 4267e45 Compare June 18, 2021 13:13
Noc2 pushed a commit that referenced this pull request Jul 21, 2021
@lamafab
Copy link
Contributor Author

lamafab commented Mar 2, 2022

This is implementation specific and does not fall into the scope of a PSP.

@lamafab lamafab closed this Mar 2, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants