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

feat: separate genesis from RUN protocol installation #5123

Merged
merged 42 commits into from
Apr 16, 2022

Conversation

dckc
Copy link
Member

@dckc dckc commented Apr 16, 2022

refs: #5029

Description

The bootstrap behaviors in @agoric/run-protocol assumed that deployment and genesis were the same time.

This PR clearly separates genesis bootstrap from later governance actions where RUN protocol contracts are given access to bootstrap powers such as the RUN mint.

It should also facilitate using modules in swingset-core-eval proposals by making more use of installations and less bundles.

Meanwhile, I reached my tolerance for waiting for bundling over and over, so this PR also includes a prototype of bundle caching (#3609).

Security Considerations

This change should continue to separate production mode from demo, but as there are high-power authorities in play, careful review is in order.

Documentation Considerations

It's not clear that the sim chain survives this change in tact. We may need to notify devs to stand by until we get that part put back together.

The plan is to make a separate bootstrap vat, further separating demo / simulation mode from production mode. The RUN protocol contract bundles may be present in the sim bootstrap vat, but not in production.

IOU issues for:

The convention for paths for contract bundle roots changes to package-relative.

Testing Considerations

Restoring previous tests to working order is the goal of this PR.

Some other kicking the tires is in order before the upcoming devnet launch (#5049). Ideally we'll develop some integration tests for launching RUN protocol by cosmos governance.

@michaelfig michaelfig force-pushed the dc-boot-from-installation branch 2 times, most recently from 3ca0cf9 to 83a19d7 Compare April 16, 2022 02:26
dckc and others added 25 commits April 15, 2022 22:06
to let swingset-core-eval proposals refer to module code via installations
 - centralSupply, mintHolder contracts
 - core/boot.js: no more roleToGovernanceActions
   - TODO: restore vaults, AMM etc. on sim chain
 - more bundles -> installations (manifest, ...)
@michaelfig michaelfig marked this pull request as ready for review April 16, 2022 04:07
Copy link
Member

@turadg turadg left a comment

Choose a reason for hiding this comment

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

/run-protocol changes LGTM

@michaelfig michaelfig added cosmic-swingset package: cosmic-swingset Inter-protocol Overarching Inter Protocol automerge:no-update (expert!) Automatically merge without updates labels Apr 16, 2022
@mergify mergify bot merged commit 80f2309 into master Apr 16, 2022
@mergify mergify bot deleted the dc-boot-from-installation branch April 16, 2022 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge:no-update (expert!) Automatically merge without updates cosmic-swingset package: cosmic-swingset Inter-protocol Overarching Inter Protocol
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants