Skip to content

chore(devnet): add upgrade rehearsal targets v1.11.0 / v1.11.1 / v1.12.0#133

Merged
mateeullahmalik merged 1 commit into
masterfrom
chore/devnet-upgrade-targets-1110-1120
May 11, 2026
Merged

chore(devnet): add upgrade rehearsal targets v1.11.0 / v1.11.1 / v1.12.0#133
mateeullahmalik merged 1 commit into
masterfrom
chore/devnet-upgrade-targets-1110-1120

Conversation

@mateeullahmalik
Copy link
Copy Markdown
Contributor

Behavior change

Adds three Makefile.devnet targets for the missing devnet upgrade rehearsals, matching the existing pattern:

devnet-upgrade-1110  → ./upgrade.sh v1.11.0 auto-height ../bin-v1.11.0
devnet-upgrade-1111  → ./upgrade.sh v1.11.1 auto-height ../bin-v1.11.1
devnet-upgrade-1120  → ./upgrade.sh v1.12.0 auto-height ../bin-v1.12.0

Also normalizes devnet-upgrade-1101 from ../bin (no version suffix, inconsistent) to ../bin-v1.10.1 (matches every other target).

Rationale

Per the rule that every devnet rehearsal must have a local devnet test, the framework already wired in Makefile.devnet was missing targets for v1.11.0, v1.11.1, and v1.12.0 — even though the upgrade handlers for all three exist in-tree (app/upgrades/v1_11_0, v1_11_1, v1_12_0).

Local rehearsal evidence

Ran devnet-upgrade-1120 end-to-end on a clean devnet against v1.11.1-hotfix FROM_TAG:

Step Result
Booted devnet on v1.11.1-hotfix 5 validators producing blocks ✅
Submitted gov upgrade proposal v1.12.0 Plan height 116 ✅
All validators voted YES Proposal PASSED at height 80 ✅
Chain reached height 116 Halt + binary swap to bin-v1.12.0 ✅
Containers restarted on new binary Container lumerad sha matches bin-v1.12.0/lumerad
Block production resumed Reached height 122+ on v1.12.0 binary ✅
lumerad query upgrade applied v1.12.0 Returns height: "116"

Note: during rehearsal I hit a separate issue where v1.11.1-hotfix's devnet/default-config/devnet-genesis.json is missing the app_state.audit section that the v1.11.1-hotfix binary expects (the audit module was wired in v1.11.1-hotfix but the genesis template was only updated on master/Everlight). That is not in scope for this PR — it only affects rehearsals starting from v1.11.1-hotfix; new rehearsals starting from v1.12.0+ won't hit it because master genesis already has the audit section.

Risks

None. Pure additive Makefile change. The 1101 normalization fixes a stale pre-existing inconsistency and only affects what binary directory is required to exist when that target is invoked.

Rollback

git revert — Makefile-only.

Operator notes

bin-v1.X.Y/ directories are not shipped in the repo (matching existing convention for all prior targets). Operators must build the target version's lumerad + libwasmvm.x86_64.so and place them in the corresponding directory before invoking the target.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds missing devnet upgrade rehearsal make targets so operators can run local end-to-end upgrade tests for recently added in-tree upgrade handlers, and normalizes the existing v1.10.1 target to use a versioned binaries directory consistent with the other rehearsal targets.

Changes:

  • Add devnet-upgrade-1110, devnet-upgrade-1111, and devnet-upgrade-1120 targets that invoke devnet/scripts/upgrade.sh with the corresponding release name and ../bin-vX.Y.Z binaries directory.
  • Normalize devnet-upgrade-1101 to use ../bin-v1.10.1 (previously ../bin), aligning with the established rehearsal target pattern.
  • Update the .PHONY list to include the newly added targets.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Add Makefile.devnet targets for the 3 missing rehearsal versions, matching
the existing pattern (devnet-upgrade-180/191/1100/1101).

Also normalize devnet-upgrade-1101 binaries-dir from ../bin to ../bin-v1.10.1
to match the per-version convention used by every other target.

Verified locally: ran devnet-upgrade-1120 end-to-end against v1.11.1-hotfix
FROM_TAG. Chain halted at upgrade height 116, swapped binaries, and resumed
block production on the v1.12.0 binary. 'lumerad query upgrade applied
v1.12.0' returns height 116 confirming the upgrade handler ran.

Note: bin-v1.X.Y/ directories are operator-staged (not shipped in repo),
matching the existing convention for all 4 prior targets.
@mateeullahmalik mateeullahmalik force-pushed the chore/devnet-upgrade-targets-1110-1120 branch from be1212c to 55a6eb1 Compare May 11, 2026 16:25
@mateeullahmalik
Copy link
Copy Markdown
Contributor Author

Rebased onto current master (post #108 Cosmos EVM Integration).

Conflict resolution analysis (not blind take-theirs/take-ours):

Master refactored devnet upgrade rehearsals from explicit per-version targets into a parameterized framework (devnet-upgrade-version VERSION=vX.Y.Z + thin numeric aliases). This made most of the original PR diff redundant. Walked each delta:

Original PR delta Status on master Action
Add devnet-upgrade-1110 missing kept — added as alias matching new convention
Add devnet-upgrade-1111 already exists (line 516, dispatches to devnet-upgrade-version VERSION=v1.11.1) dropped (already covered)
Add devnet-upgrade-1120 already exists (line 519) dropped (already covered)
Normalize devnet-upgrade-1101 from ../bin../bin-v1.10.1 target deleted entirely on master moot

Final diff vs master is now 4 lines: one .PHONY entry + one 3-line target stanza for devnet-upgrade-1110 — same semantic intent as the original PR (rehearsal target wired in for every v1.11.x/v1.12.x upgrade handler that exists in-tree), expressed through the new parameterized convention.

make -n devnet-upgrade-1110 devnet-upgrade-1111 devnet-upgrade-1120 dispatches correctly. Local rehearsal evidence captured in the original PR body for devnet-upgrade-1120 is still representative — the call paths converge to the same upgrade.sh invocation.

No regressions; no behavior changes to existing targets.

@mateeullahmalik mateeullahmalik self-assigned this May 11, 2026
@mateeullahmalik mateeullahmalik merged commit 59eaf74 into master May 11, 2026
16 checks passed
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 this pull request may close these issues.

3 participants