Skip to content

feat: Upgrade to polkadot-stable2506 & Migrations#686

Merged
cl0w5 merged 33 commits intomasterfrom
polkadot-stable2506
Feb 25, 2026
Merged

feat: Upgrade to polkadot-stable2506 & Migrations#686
cl0w5 merged 33 commits intomasterfrom
polkadot-stable2506

Conversation

@cl0w5
Copy link
Contributor

@cl0w5 cl0w5 commented Feb 24, 2026

This PR:

  • Upgrades the runtime and the node to polkadot-stable2506
  • includes the missing multiblock migration for pallet-identity (fix for missing identities)
  • Removes pallet-balances and cleans up its storage

Upgrade Checklist

Migrations

  • pallet_identity::migration::v2::LazyMigrationV1ToV2
  • RemovePallet for pallet-democracy

Tested with Chopsticks:

      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 133, 149, 2, 47, 173, 5, 121, 213, 126, 21, 45, 86, 164, 195, 130, 253, 5, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 142, 121, 253, 241, 66, 142, 149, 132, 46, 170, 154, 240, 178, 36, 20, 190, 3, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 158, 162, 208, 152, 181, 247, 1, 146, 249, 108, 6, 243, 141, 63, 188, 151, 1, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 164, 245, 206, 214, 102, 137, 87, 187, 42, 154, 149, 78, 126, 80, 245, 181, 4, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 252, 6, 156, 36, 53, 39, 152, 133, 156, 1, 124, 232, 98, 129, 61, 59, 2, 0, 0, 0, 0, 0, 0, 0]: Error
   frame_support::migrations   INFO: [104] Removed 277 Democracy keys 🧹
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 133, 149, 2, 47, 173, 5, 121, 213, 126, 21, 45, 86, 164, 195, 130, 253, 5, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 142, 121, 253, 241, 66, 142, 149, 132, 46, 170, 154, 240, 178, 36, 20, 190, 3, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 158, 162, 208, 152, 181, 247, 1, 146, 249, 108, 6, 243, 141, 63, 188, 151, 1, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 164, 245, 206, 214, 102, 137, 87, 187, 42, 154, 149, 78, 126, 80, 245, 181, 4, 0, 0, 0, 0, 0, 0, 0]: Error
      frame_support::storage  ERROR: [104] (key, value) failed to decode at [227, 143, 24, 82, 7, 73, 138, 187, 92, 33, 61, 15, 176, 89, 179, 216, 122, 90, 211, 150, 188, 37, 100, 179, 116, 38, 209, 94, 184, 55, 194, 80, 252, 6, 156, 36, 53, 39, 152, 133, 156, 1, 124, 232, 98, 129, 61, 59, 2, 0, 0, 0, 0, 0, 0, 0]: Error
   frame_support::migrations   INFO: [104] Removed 277 Democracy keys 🧹
      runtime::frame-support  DEBUG: [104] ✅ no migration for System
      runtime::frame-support  DEBUG: [104] ✅ no migration for Timestamp
      runtime::frame-support  DEBUG: [104] ✅ no migration for Balances
      runtime::frame-support  DEBUG: [104] ✅ no migration for TransactionPayment
      runtime::frame-support  DEBUG: [104] ✅ no migration for MultiTransactionPayment
      runtime::frame-support  DEBUG: [104] ✅ no migration for Treasury
      runtime::frame-support  DEBUG: [104] ✅ no migration for Utility
      runtime::frame-support  DEBUG: [104] ✅ no migration for TechnicalCommittee
      runtime::frame-support  DEBUG: [104] ✅ no migration for Vesting
      runtime::frame-support  DEBUG: [104] ✅ no migration for Proxy
      runtime::frame-support  DEBUG: [104] ✅ no migration for Authorship
      runtime::frame-support  DEBUG: [104] ✅ no migration for CollatorSelection
      runtime::frame-support  DEBUG: [104] ✅ no migration for Session
      runtime::frame-support  DEBUG: [104] ✅ no migration for Aura
      runtime::frame-support  DEBUG: [104] ✅ no migration for AuraExt
      runtime::frame-support  DEBUG: [104] ✅ no migration for Preimage
      runtime::frame-support  DEBUG: [104] ✅ no migration for Uniques
      runtime::frame-support  DEBUG: [104] ✅ no migration for Identity
      runtime::frame-support  DEBUG: [104] ✅ no migration for Multisig
      runtime::frame-support  DEBUG: [104] ✅ no migration for StateTrieMigration
      runtime::frame-support  DEBUG: [104] ✅ no migration for ConvictionVoting
      runtime::frame-support  DEBUG: [104] ✅ no migration for Referenda
      runtime::frame-support  DEBUG: [104] ✅ no migration for Origins
      runtime::frame-support  DEBUG: [104] ✅ no migration for Whitelist
      runtime::frame-support  DEBUG: [104] ✅ no migration for RelayChainInfo
      runtime::frame-support  DEBUG: [104] ✅ no migration for Scheduler
      runtime::frame-support  DEBUG: [104] ✅ no migration for ParachainSystem
      runtime::frame-support  DEBUG: [104] ✅ no migration for ParachainInfo
      runtime::frame-support  DEBUG: [104] ✅ no migration for PolkadotXcm
      runtime::frame-support  DEBUG: [104] ✅ no migration for CumulusXcm
      runtime::frame-support  DEBUG: [104] ✅ no migration for XcmpQueue
      runtime::frame-support  DEBUG: [104] ✅ no migration for MessageQueue
      runtime::frame-support  DEBUG: [104] ✅ no migration for AssetRegistry
      runtime::frame-support  DEBUG: [104] ✅ no migration for XYK
      runtime::frame-support  DEBUG: [104] ✅ no migration for Duster
      runtime::frame-support  DEBUG: [104] ✅ no migration for LBP
      runtime::frame-support  DEBUG: [104] ✅ no migration for NFT
      runtime::frame-support  DEBUG: [104] ✅ no migration for Marketplace
      runtime::frame-support  DEBUG: [104] ✅ no migration for TransactionPause
      runtime::frame-support  DEBUG: [104] ✅ no migration for Router
      runtime::frame-support  DEBUG: [104] ✅ no migration for XYKLiquidityMining
      runtime::frame-support  DEBUG: [104] ✅ no migration for XYKWarehouseLM
      runtime::frame-support  DEBUG: [104] ✅ no migration for CollatorRewards
      runtime::frame-support  DEBUG: [104] ✅ no migration for Broadcast
      runtime::frame-support   INFO: [104] ⚠️ MultiBlockMigrations declares internal migrations (which *might* execute). On-chain `StorageVersion(0)` vs in-code storage version `StorageVersion(0)`
           pallet_migrations  DEBUG: [104] Onboarding 1 new MBM migrations
      runtime::frame-support  DEBUG: [104] ✅ no migration for EmaOracle
      runtime::frame-support  DEBUG: [104] ✅ no migration for Currencies
      runtime::frame-support  DEBUG: [104] ✅ no migration for Tokens
      runtime::frame-support  DEBUG: [104] ✅ no migration for OrmlXcm
      runtime::frame-support  DEBUG: [104] ✅ no migration for XTokens
      runtime::frame-support  DEBUG: [104] ✅ no migration for UnknownTokens
        chopsticks::executor  TRACE: [104] Completed Core_initialize_block
        chopsticks::executor  TRACE: [105] Calling BlockBuilder_apply_extrinsic
             runtime::system  TRACE: [105] Used block weight: PerDispatchClass { normal: Weight { ref_time: 0, proof_size: 0 }, operational: Weight { ref_time: 0, proof_size: 0 }, mandatory: Weight { ref_time: 82932010379, proof_size: 202067 } }
             runtime::system  TRACE: [105] Used block length: 11
        chopsticks::executor  TRACE: [105] Completed BlockBuilder_apply_extrinsic
        chopsticks::executor  TRACE: [106] Calling BlockBuilder_apply_extrinsic
             runtime::system  TRACE: [106] Used block weight: PerDispatchClass { normal: Weight { ref_time: 0, proof_size: 0 }, operational: Weight { ref_time: 0, proof_size: 0 }, mandatory: Weight { ref_time: 83911710379, proof_size: 211416 } }
             runtime::system  TRACE: [106] Used block length: 5843
        chopsticks::executor  TRACE: [106] Completed BlockBuilder_apply_extrinsic
        chopsticks::executor  TRACE: [107] Calling BlockBuilder_apply_extrinsic
           pallet_migrations  DEBUG: [107] Progressing MBM #0
             runtime::system  TRACE: [107] Used block weight: PerDispatchClass { normal: Weight { ref_time: 1162369000, proof_size: 12452 }, operational: Weight { ref_time: 0, proof_size: 0 }, mandatory: Weight { ref_time: 115427567379, proof_size: 2186899 } }
             runtime::system  TRACE: [107] Used block length: 5983
        chopsticks::executor  TRACE: [107] Completed BlockBuilder_apply_extrinsic
        chopsticks::executor  TRACE: [108] Calling BlockBuilder_finalize_block
runtime::xcmp-queue-migration  DEBUG: [108] Lazy migration finished: item gone
             runtime::system  DEBUG: [108] [13339761] 3 extrinsics, length: 5983 (normal 0%, op: 0%, mandatory 0%) / normal weight:Weight(ref_time: 1162369000, proof_size: 12452) (ref_time: 0%, proof_size: 0%) op weight Weight(ref_time: 0, proof_size: 0) (ref_time 0%, proof_size 0%) / mandatory weight Weight(ref_time: 116504862379, proof_size: 2328274) (ref_time: 0%, proof_size: 0%)
        chopsticks::executor  TRACE: [108] Completed BlockBuilder_finalize_block
[18:01:41.616] INFO (block-builder): Basilisk new head #13,339,761

Noteworthy Changes

Below is a list of noteworthy changes brought about by polkadot-stable2506

Runtime

paritytech/polkadot-sdk#5884: Set PoV size limit to 10 Mb
paritytech/polkadot-sdk#7597: Introduce CreateBare, deprecated CreateInherent (cf. for the strategy on Transactions and Extensions: paritytech/polkadot-sdk#2415)
paritytech/polkadot-sdk#7229: FRAME: Simplify pallet config definition:
remove RuntimeEvent associated type
paritytech/polkadot-sdk#6324: Introduce #[pallet::authorize(...)] macro
attribute and AuthorizeCall system transaction extension Extrinsics with calls such as claim or
apply_authorized_upgrade wants to be valid depending on the parameters of the call or/and the state
of the chain.
paritytech/polkadot-sdk#8724: Implement detailed logging for XCM failures
paritytech/polkadot-sdk#7730: Nest errors in pallet-xcm
paritytech/polkadot-sdk#8535: Make WeightBounds return XcmError to surface
failures
paritytech/polkadot-sdk#8599: Snowbridge: Unpaid execution when bridging to
Ethereum
paritytech/polkadot-sdk#7944: Allow to set a worst case buy execution fee
asset and weight
Breaking changes:
Change fee_asset in the benchmarking helper to worst_case_for_trader which
now should return both the fee_asset and the weight to use

Node

paritytech/polkadot-sdk#6137: cumulus: ParachainBlockData support multiple
blocks
paritytech/polkadot-sdk#7375: Refactor the host <-> runtime interface
machinery (the #[runtime_interface] macro) and the way host functions are defined

@github-actions
Copy link

github-actions bot commented Feb 24, 2026

Crate versions that have been updated:

  • runtime-integration-tests: v1.1.0 -> v1.2.0
  • basilisk: v19.0.0 -> v19.1.0
  • pallet-asset-registry: v2.4.0 -> v2.5.0
  • pallet-ema-oracle: v1.4.0 -> v1.5.0
  • pallet-lbp: v4.11.0 -> v4.12.0
  • pallet-marketplace: v5.1.0 -> v5.2.0
  • pallet-route-executor: v2.8.0 -> v2.9.0
  • pallet-transaction-multi-payment: v11.1.0 -> v11.2.0
  • pallet-xyk: v6.8.0 -> v6.9.0
  • pallet-xyk-liquidity-mining: v1.2.0 -> v1.3.0
  • pallet-xyk-liquidity-mining-benchmarking: v1.1.0 -> v1.2.0
  • basilisk-adapters: v1.4.0 -> v1.5.0
  • basilisk-runtime: v128.0.0 -> v129.0.0
  • basilisk-traits: v1.0.0 -> v1.1.0

Runtime version has been increased.

@cl0w5 cl0w5 changed the title feat: Upgrade to polkadot-stable2506 feat: Upgrade to polkadot-stable2506, migrations Feb 24, 2026
@cl0w5 cl0w5 changed the title feat: Upgrade to polkadot-stable2506, migrations feat: Upgrade to polkadot-stable2506; migrations Feb 24, 2026
@cl0w5 cl0w5 changed the title feat: Upgrade to polkadot-stable2506; migrations feat: Upgrade to polkadot-stable2506 & migrations Feb 24, 2026
@cl0w5 cl0w5 changed the title feat: Upgrade to polkadot-stable2506 & migrations feat: Upgrade to polkadot-stable2506 Feb 24, 2026
@cl0w5 cl0w5 changed the title feat: Upgrade to polkadot-stable2506 feat: Upgrade to polkadot-stable2506 & Migrations Feb 24, 2026
@cl0w5 cl0w5 marked this pull request as ready for review February 24, 2026 18:52
@cl0w5 cl0w5 merged commit a174c66 into master Feb 25, 2026
7 checks passed
@cl0w5 cl0w5 deleted the polkadot-stable2506 branch February 25, 2026 19:36
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.

2 participants