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

Release tracking issue: Network upgrades #1804

Open
17 of 19 tasks
erwanor opened this issue Jan 6, 2023 · 3 comments
Open
17 of 19 tasks

Release tracking issue: Network upgrades #1804

erwanor opened this issue Jan 6, 2023 · 3 comments
Assignees
Labels
_P-V1 Priority: slated for V1 release

Comments

@erwanor
Copy link
Member

erwanor commented Jan 6, 2023

Performing network upgrades on a Penumbra network

This ticket tracks the "network upgrades" epic, which consist in adding the ability for testnets to persist state across new Penumbra major releases via an "upgrade mechanism", or a migration.

Design considerations:

The original design document written by @avahowell @hdevalence, and @erwanor lives here:
https://hackmd.io/@qECaDUmnQJO3OnZwlRPThQ/rkXlh0xuo

An additional field guide manual exists: https://hackmd.io/@U47bTB1sSym1rzNSov3h6Q/upgrades_field_manual which comes in handy to actually exercise the process

TODO (Basic Upgrade Support):

Required for first chain upgrade:

Required for first chain migration:

First chain upgrade

TODO

Sketch design document: https://hackmd.io/@qECaDUmnQJO3OnZwlRPThQ/rkXlh0xuo

@erwanor erwanor added A-node Area: System design and implementation for node software A-governance Area: Governance labels Jan 6, 2023
@erwanor erwanor added this to the Network upgrades milestone Feb 8, 2023
@conorsch
Copy link
Contributor

Discussed at sprint planning. Originally, we'd hoped to perform an upgrade between 59 and 60, but given that a lot of the core functionality hasn't landed yet, 60 -> 61 is more likely. During 59 release announcement, we should engage the validator community and telegraph our intention to involve them in a coordinated chain upgrade.

@erwanor
Copy link
Member Author

erwanor commented Aug 31, 2023

The first deliverable for this stream of work is performing a "no-op" upgrade i.e. a network upgrade that doesn't actually require any state migration at all. This will let us test the main logic flow (proposal -> enactment -> halt -> new start) without having to write any upgrade specific logic and this can be done on a devnet. Once this is done, we can circle back on doing a persistent testnet opportunistically (tracked by #2917)

@erwanor erwanor mentioned this issue Nov 29, 2023
3 tasks
@aubrika aubrika changed the title Tracking issue: performing network upgrades Release tracking issue: performing network upgrades Nov 29, 2023
@erwanor erwanor added P-next release _P-V1 Priority: slated for V1 release and removed A-node Area: System design and implementation for node software A-governance Area: Governance labels Nov 29, 2023
@erwanor
Copy link
Member Author

erwanor commented Jan 8, 2024

In the course of #3081, we were able to confirm that users are able to synchronize their private state across the upgrade boundary and perform swaps. The next step for upgrades is transitioning from biweekly devnets to longer lived ("persistent") testnets.

The current target for the first upgrade is Testnet 65 -> Testnet 66. This will require reworking our migration strategy (#3506) and then test that relaying does not require any maintenance when we perform non-lightclient-breaking upgrades (#3577).

@erwanor erwanor changed the title Release tracking issue: performing network upgrades Release tracking issue: Network upgrades Jan 8, 2024
@conorsch conorsch modified the milestones: Upgrades, v1 Mar 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
_P-V1 Priority: slated for V1 release
Projects
Status: Backlog
Status: Tracking Issues
Development

No branches or pull requests

4 participants