github envadiv/Passage3D v4.0.1

4 hours ago

Passage v4.0.1 — Emergency Fix for the v4.0.0 Tx-Layer Outage

v4.0.0 shipped with three defects from the Cosmos SDK 0.47 → 0.50 port that broke the transaction layer network-wide.

Consensus was healthy, but blocks were empty.

v4.0.1 fixes all three issues.

Important: This is a consensus-affecting change.
All validators must switch at the same height.


Fixes

1. Address Codec in InterfaceRegistry

File: app/params/proto.go

v4.0.0 built the InterfaceRegistry without an address codec.

As a result, any message carrying a pasgvaloper… address could not be built by clients or processed by nodes, including:

  • Delegate
  • Undelegate
  • Redelegate
  • Withdraw rewards

The InterfaceRegistry requires a proper address codec implementation.


2. ibctm / Solomachine Light-Client Registration

File: app/app.go

ibc-go v8 no longer bundles the light clients inside ibc.AppModuleBasic.

Without ibctm registered, any decode of:

/ibc.lightclients.tendermint.v1.ClientState

fails.

This breaks:

  • IBC client-state queries
  • Relayer client updates

3. cosmwasm_1_3 Capability

File: app/app.go

Restored the cosmwasm_1_3 wasm capability that existed in v3.0.0 but was dropped during the port.

This prevents contracts requiring cosmwasm_1_3 from being rejected at store-code.


Diff

Three commits, approximately 30 lines:

https://github.com/envadiv/Passage3D/pull/210

Verification

A 22-point verification battery was executed, covering one transaction per wired module:

  • Bank

  • Staking:

    • Delegate
    • Unbond
    • Redelegate
  • Distribution:

    • Withdraw rewards
    • Set withdraw address
  • Governance

  • Authz

  • Feegrant

  • IBC transfer

  • Wasm

Additional verification included:

  • Direct signing
  • Amino JSON signing for Ledger
  • Decode of all historical governance proposals
  • Decode of vesting accounts
  • Full LCD query set

Results:

  • Passes on v4.0.1
  • Fails on v4.0.0 exactly at the three defects listed above

Coordinated Upgrade

Validators must perform a binary swap at:

, ~Fri Jul 10, 4 PM UTC

Height: 19972000
Estimated time: Fri Jul 10, 4PM UTC 

See the validator instructions in the coordination channel.


Build Instructions

Build from source only from the v4.0.1 tag.

This tag carries the vendored IAVL empty-store patch.

Warning: Unpatched trees will not load the DB.


Verification File

SHA256SUMS.txt is attached.

Verify the checksum before running the binary.

Don't miss a new Passage3D release

NewReleases is sending notifications on new releases.