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

Create tests for genesis block process #6141

Closed
1 task done
danpaul000 opened this issue Sep 27, 2019 · 3 comments · Fixed by #8824
Closed
1 task done

Create tests for genesis block process #6141

danpaul000 opened this issue Sep 27, 2019 · 3 comments · Fixed by #8824
Assignees
Milestone

Comments

@danpaul000
Copy link
Contributor

danpaul000 commented Sep 27, 2019

  • Ensure Genesis block will work with no system program, as this will be disabled in SLP1.

  • SLP1-compatible (i.e. statically-configured stake, vote, vote signer, validator, and staker system accounts) genesis block

  • Need a set of tools to construct and analyze genesis block. In absence of tools, try creating a genesis block without a system account and run through genesis.

  • We regularly test the genesis block functionality, but we need a way (tooling) to test its contents and get everyone who is staked to get them to sign off that the genesis block contains their pubkeys and correct stake (TdS participants, investors, equity for employees)

  • If we screwed up genesis block, we don’t have tooling to dump the bank and re-create genesis from a given block height

  • Get stakeholders to vote for a genesis block prior to booting. Currently, we can just add/rm/change a pubkey or stake in the account holders yml file right before TdS launch.

  • Should enhance the way we are running TdS so genesis should contain vote and stake accounts as a way to test SLP1 launch process.

  • Rob’s proposal: All stakeholders should submit a signed transaction representing their vote of confidence in the proposed genesis block. If we don’t have 100% consensus on genesis blockhash, don’t boot.

  • Make sure there is no more than 0.5 billion SOL in genesis

@danpaul000 danpaul000 self-assigned this Sep 27, 2019
@mvines mvines added this to the Supertubes v0.22.0 milestone Oct 14, 2019
@danpaul000 danpaul000 removed their assignment Oct 16, 2019
@danpaul000
Copy link
Contributor Author

danpaul000 commented Oct 16, 2019

We should create a nightly CI testnet environment that spins up a cluster with this genesis block process in the restricted SLP1 environment.

@danpaul000 danpaul000 self-assigned this Oct 16, 2019
@danpaul000
Copy link
Contributor Author

Depends on: #6397

@danpaul000
Copy link
Contributor Author

This issue is a bit stale. We have just about all the pieces in place from the current description to create genesis block, and have a partially-manual but straightforward way of confirming the total number of SOL issued in genesis, as well as the addresses and balances of all stake accounts. The only piece missing here is the proposal to collect signed transactions agreeing to launch a cluster on the genesis block in question:

"All stakeholders should submit a signed transaction representing their vote of confidence in the proposed genesis block. If we don’t have 100% consensus on genesis blockhash, don’t boot."

@rob-solana / @mvines do you think the above proposal is still worth pursuing given the current status of the project?

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 a pull request may close this issue.

2 participants