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

[Governance] Upgrade playbook and downstream investigation #625

Closed
3 of 11 tasks
Olshansk opened this issue Jun 20, 2024 · 2 comments
Closed
3 of 11 tasks

[Governance] Upgrade playbook and downstream investigation #625

Olshansk opened this issue Jun 20, 2024 · 2 comments
Assignees
Labels
on-chain On-chain business logic protocol General core protocol related changes

Comments

@Olshansk
Copy link
Member

Olshansk commented Jun 20, 2024

Objective

Write the playbook on how we'll handle on-chain governance updates.

Origin Document

Goals

  • Research and understand the tools available in the Cosmos SDK for governance upgrades (i.e. x/upgrade)
  • Identify missing gaps or differences between how we'll handle governance upgrades
  • Collaborate with the team at Informal Systems (CometBFT) or Binary Builders (Cosmos SDK) if need be

Deliverables

  • Manage a real consensus-breaking governance upgrade on TestNet
  • A copy-paste template + playbook + instructionsfor every governance upgrade
  • Answer the following questions:
    • How do we handle consensus-breaking changes?
    • How do we increase the block size like in Morse? (e.g. increase the block size)
    • How do we activate a new feature at a specific height? (i.e. boolean feature switch)
    • Document protocol updates and governance upgrades

Non-goals / Non-deliverables

  • Implementing new features (e.g. features switches) if the need arises
  • Achieving complete parity with how Morse work

General deliverables

  • Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
  • Testing: Add new tests (unit and/or E2E) to the test suite.
  • Makefile: Add new targets to the Makefile to make the new functionality easier to use.
  • Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.

Creator: @Olshansk
Co-Owners: @okdas

@okdas
Copy link
Member

okdas commented Aug 2, 2024

The functionality and code examples are in #702, with more documentation incoming in #719

okdas added a commit that referenced this issue Aug 19, 2024
## Summary

Follow-up PR to #702 to document protocol upgrades procedure.

## Issue

- #702 
- #625 

## Type of change

Select one or more:

- [ ] New feature, functionality or library
- [ ] Bug fix
- [ ] Code health or cleanup
- [x] Documentation
- [ ] Other (specify)

## Testing

**Documentation changes** (only if making doc changes)
- [ ] `make docusaurus_start`; only needed if you make doc changes

**Local Testing** (only if making code changes)
- [ ] **Unit Tests**: `make go_develop_and_test`
- [ ] **LocalNet E2E Tests**: `make test_e2e`
- See [quickstart
guide](https://dev.poktroll.com/developer_guide/quickstart) for
instructions

**PR Testing** (only if making code changes)
- [ ] **DevNet E2E Tests**: Add the `devnet-test-e2e` label to the PR.
- **THIS IS VERY EXPENSIVE**, so only do it after all the reviews are
complete.
- Optionally run `make trigger_ci` if you want to re-trigger tests
without any code changes
- If tests fail, try re-running failed tests only using the GitHub UI as
shown
[here](https://github.com/pokt-network/poktroll/assets/1892194/607984e9-0615-4569-9452-4c730190c1d2)


## Sanity Checklist

- [ ] I have tested my changes using the available tooling
- [ ] I have commented my code
- [ ] I have performed a self-review of my own code; both comments &
source code
- [ ] I create and reference any new tickets, if applicable
- [ ] I have left TODOs throughout the codebase, if applicable


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit


- **New Features**
- Introduced a new category for "Upgrades" in the documentation to
enhance navigation related to protocol upgrades.
- Launched comprehensive documentation on the governance mechanisms for
protocol parameter adjustments, detailing the DAO's role and examples of
changes.
- Added a structured page for past and upcoming protocol upgrades,
improving user understanding of upgrade statuses.
- Released a document outlining the protocol upgrade process, specifying
steps and criteria for implementation.

- **Documentation Updates**
- Improved organization and clarity throughout the documentation by
refining content structure and descriptions related to protocol
upgrades.
- Updated sidebar positions and references to ensure accurate navigation
and resource linking for "Full Node" documentation.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Co-authored-by: Daniel Olshansky <[email protected]>
@okdas
Copy link
Member

okdas commented Aug 19, 2024

Both PRs are now merged. We're going to continue adding/chainging the process as we issue upgrades in Beta testnet.

@okdas okdas closed this as completed Aug 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
on-chain On-chain business logic protocol General core protocol related changes
Projects
Status: ✅ Done
Development

No branches or pull requests

2 participants