Skip to content

Add V31 docs#9567

Merged
JohnnyWyles merged 3 commits intomainfrom
johnny/31docs
Oct 27, 2025
Merged

Add V31 docs#9567
JohnnyWyles merged 3 commits intomainfrom
johnny/31docs

Conversation

@JohnnyWyles
Copy link
Copy Markdown
Collaborator

@JohnnyWyles JohnnyWyles commented Oct 17, 2025

What is the purpose of the change

Add upgrade guide for v31
Pending Height, Proposal & Binaries

Testing and Verifying

This change is a trivial rework / code cleanup without any test coverage.

Documentation and Release Note

  • Does this pull request introduce a new feature or user-facing behavior changes?
  • Changelog entry added to Unreleased section of CHANGELOG.md?

Where is the change documented?

  • Specification (x/{module}/README.md)
  • Osmosis documentation site
  • Code comments?
  • N/A

@JohnnyWyles JohnnyWyles marked this pull request as ready for review October 17, 2025 17:08
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Oct 17, 2025

Walkthrough

New Osmosis mainnet upgrade guide for v30→v31 documenting upgrade height placeholder, hardware requirements (64GB RAM, 32GB swap), Cosmovisor installation/configuration, automatic on-chain upgrade steps, manual fallback procedure, and links to additional resources. Static instructional documentation only.

Changes

Cohort / File(s) Change Summary
Osmosis v31 Mainnet Upgrade Guide
networks/osmosis-1/upgrades/v31/mainnet/guide.md
Added a new upgrade guide covering: upgrade overview (proposal link and block height TODOs), hardware requirements (64GB RAM, 32GB swap and persistence steps), Cosmovisor installation and directory/env setup, automatic upgrade steps (prepare v31 binary in cosmovisor directory), manual upgrade fallback procedure (build/install/restart at upgrade height), and additional resources.

Sequence Diagram(s)

sequenceDiagram
  autonumber
  participant Chain as Blockchain (on-chain upgrade signal)
  participant Node as Node process
  participant Cosmovisor as Cosmovisor
  participant Operator as Operator

  rect rgb(240,248,255)
    Note over Chain: At configured upgrade block height\n(on-chain upgrade proposal passes)
  end

  Chain->>Node: Emit upgrade signal at block height
  Node->>Cosmovisor: Detected upgrade signal (block height)
  alt Cosmovisor has v31 binary in upgrade/bin
    Cosmovisor->>Node: Swap to new v31 binary and restart node
    Node->>Chain: Reconnect and continue with v31
    Note right of Cosmovisor: Automatic upgrade (preferred)
  else Missing/invalid binary
    Cosmovisor->>Operator: Fail to auto-upgrade / log error
    Operator->>Operator: Perform manual upgrade steps (fetch, build, install, restart)
    Operator->>Node: Start node with v31 binary
    Node->>Chain: Reconnect and continue with v31
    Note right of Operator: Manual fallback path
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Areas to focus during review:

  • Verify command correctness and sequence for Cosmovisor installation and directory layout.
  • Confirm hardware and swap persistence instructions and any platform-specific caveats.
  • Ensure TODO placeholders (upgrade block height, proposal link) are clearly marked and updated.
  • Validate manual upgrade commands (build/install/restart) and service unit examples if present.

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The title "Add V31 docs" is directly related to the main change in the pull request, which adds a new mainnet upgrade guide documentation for Osmosis v31. While the term "docs" is somewhat generic, it includes the specific version identifier (V31) that provides meaningful context. The title is concise, readable, and clearly conveys that this PR introduces documentation for the v31 upgrade, avoiding overly vague terminology like "misc updates."
Description Check ✅ Passed The pull request description follows the required template structure with all major sections present and appropriately filled. The "What is the purpose of the change" section clearly states the intent to add an upgrade guide for v31, the "Testing and Verifying" section appropriately indicates this is a trivial change without test coverage, and the "Documentation and Release Note" section is complete with relevant checkboxes and selection of "N/A" for documentation location. The description adequately communicates the PR's purpose and satisfies the template requirements despite the noted pending items (Height, Proposal & Binaries) being contextual status information rather than template completeness issues.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch johnny/31docs

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (5)
networks/osmosis-1/upgrades/v31/mainnet/guide.md (5)

53-53: Consider using a newer Cosmovisor version.

v1.0.0 is an older version; latest recommended versions are v1.4+. Pinning to v1.0.0 may miss important bug fixes and security updates. Consider using @latest or documenting why this specific version is required for Osmosis v31.

Please verify with the Osmosis team whether v1.0.0 is intentionally required for v31 compatibility or if a newer version can be used.


73-73: Add context for UNSAFE_SKIP_BACKUP=true.

This flag disables safety backups before upgrades. Add a brief explanation of why it's set to true and note the risk, or consider setting it to false with guidance on backup procedures.


77-91: Clarify repository path expectations.

The instructions assume the Osmosis repository is cloned at $HOME/osmosis. If this is not the standard setup or if validators may have it elsewhere, consider adding a note to customize the path or verify the repository location.


102-107: Note inconsistency with Cosmovisor build process.

The Cosmovisor section uses make build followed by manual binary copy, while manual upgrade uses make install. Both are valid but document why the approaches differ, or standardize them for clarity.


94-109: Add recommendation to test the upgrade procedure first.

Best practice for mainnet validators: test the upgrade process on testnet or staging environment before performing on live infrastructure. Consider adding a note recommending this.

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 58ee81d and a908485.

⛔ Files ignored due to path filters (1)
  • networks/osmosis-1/upgrades/v31/mainnet/v31_binaries.json is excluded by !**/*.json
📒 Files selected for processing (1)
  • networks/osmosis-1/upgrades/v31/mainnet/guide.md (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Summary
🔇 Additional comments (2)
networks/osmosis-1/upgrades/v31/mainnet/guide.md (2)

9-34: Clear and practical guidance.

Hardware recommendations and swap configuration are well-documented with helpful external references.


113-116: Good resource references.

Clear pointers to official documentation and community support channels.

@github-actions
Copy link
Copy Markdown
Contributor

This pull request has been automatically marked as stale because it has not had any recent activity. It will be closed if no further activity occurs. Thank you!

@github-actions github-actions bot added the Stale label Oct 26, 2025
Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a908485 and 682c00c.

⛔ Files ignored due to path filters (1)
  • networks/osmosis-1/upgrades/v31/mainnet/v31_binaries.json is excluded by !**/*.json
📒 Files selected for processing (1)
  • networks/osmosis-1/upgrades/v31/mainnet/guide.md (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Summary
🔇 Additional comments (3)
networks/osmosis-1/upgrades/v31/mainnet/guide.md (3)

3-7: Verify block height and proposal details are finalized.

The PR objectives indicate that the upgrade height and proposal are still pending. Please confirm that:

  1. Block height 47626000 (line 6) is finalized and will not change before merge.
  2. The Mintscan proposal link on line 5 points to the correct proposal (currently linking to proposal 990).

If these values are still tentative, consider adding a placeholder note or deferring the merge until they are confirmed.


85-85: Verify v31.0.0 git tag exists or will exist before merge.

The upgrade guide references the git tag v31.0.0 at lines 85 and 105. Confirm that this tag:

  1. Already exists in the repository, or
  2. Will be created before this PR is merged.

If the tag does not yet exist, consider updating the instructions to reference a branch or commit hash instead, or add a note that the tag will be created at release time.

Also applies to: 105-105


1-116: Approve documentation structure and content quality.

The upgrade guide is well-organized and provides clear, step-by-step instructions covering both Cosmovisor and manual upgrade paths. The hardware requirements, swap configuration, and resource links are helpful. Technical instructions appear sound and align with standard Cosmos SDK upgrade practices.

Comment on lines +50 to +62
_Run these commands to install and configure Cosmovisor_:

```sh
go install github.com/cosmos/cosmos-sdk/cosmovisor/cmd/cosmovisor@v1.0.0
mkdir -p ~/.osmosisd
mkdir -p ~/.osmosisd/cosmovisor
mkdir -p ~/.osmosisd/cosmovisor/genesis
mkdir -p ~/.osmosisd/cosmovisor/genesis/bin
mkdir -p ~/.osmosisd/cosmovisor/upgrades
cp $GOPATH/bin/osmosisd ~/.osmosisd/cosmovisor/genesis/bin
mkdir -p ~/.osmosisd/cosmovisor/upgrades/v31/bin
cp $GOPATH/bin/osmosisd ~/.osmosisd/cosmovisor/upgrades/v31/bin
```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

Verify Cosmovisor version is current and appropriate.

The guide pins Cosmovisor to v1.0.0 at line 53. Since your knowledge cutoff is October 2025 and the current date is October 27, 2025, please verify that this version is still current and recommended. If a newer stable version exists, consider updating the pin.


🌐 Web query:

What is the current stable version of Cosmovisor?

💡 Result:

The latest stable Cosmovisor release is v1.4.0. [1][2]

Sources:
[1] Release notes — cosmos/cosmos-sdk (cosmovisor v1.4.0).
[2] Cosmovisor module docs / pkg (cosmovisor release and install guidance).


Update Cosmovisor to the current stable version v1.4.0.

The latest stable Cosmovisor release is v1.4.0, not v1.0.0. Update line 53 in the guide to pin @v1.4.0 instead of @v1.0.0.

🤖 Prompt for AI Agents
In networks/osmosis-1/upgrades/v31/mainnet/guide.md around lines 50 to 62, the
go install command pins cosmovisor to v1.0.0; update that to the current stable
v1.4.0 by changing the install line to use @v1.4.0, and verify the rest of the
guide references this version consistently.

Copy link
Copy Markdown
Contributor

@alessandrolomanto alessandrolomanto left a comment

Choose a reason for hiding this comment

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

LGTM

@JohnnyWyles JohnnyWyles merged commit 713611e into main Oct 27, 2025
15 of 17 checks passed
@JohnnyWyles JohnnyWyles deleted the johnny/31docs branch October 27, 2025 15:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants