Fix Polkadot and Kusama AH, RC, coretime, bridge-hub, people, glutton-kusama compilation for SDK 2512-1-rc1#1062
Conversation
Updates to latest `unstable2507-2` to set Fulu hard-fork epoch. Only BridgeHub will be released from this version.
Closes: polkadot-fellows#894 - [x] Does not require a CHANGELOG entry Same trick as in paritytech/polkadot-sdk#10284, if it works. should close polkadot-fellows#894 --------- Co-authored-by: GitHub Action <action@github.com> Co-authored-by: fellowship-merge-bot[bot] <151052383+fellowship-merge-bot[bot]@users.noreply.github.com>
…lows#1014) The XCM Transact whitelist is too tight with reports from ecosystem of broken usecases. Pool assets don't make sense to be moved crosschain so remove that transactor and simplify the code a bit. --------- Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
Needs enactment on PBH before 3 Dec. --------- Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com>
Integrate a generic review bot for new PR. It can also be dispatched manually in actions. Future tasks: - command bot integration so non github org users can request review - polkadot-sdk specific prompts <!-- Remember that you can run `/merge` to enable auto-merge in the PR --> <!-- Remember to modify the changelog. If you don't need to modify it, you can check the following box. Instead, if you have already modified it, simply delete the following line. --> - [x] Does not require a CHANGELOG entry --------- Co-authored-by: fellowship-merge-bot[bot] <151052383+fellowship-merge-bot[bot]@users.noreply.github.com>
) This PR adds weight reclaim to Kusama system chains. Part of polkadot-fellows#494. Originally we were hoping for quick fixing of paritytech/polkadot-sdk#6020, but it has proven to be quite tricky. The risk of overshooting in reality is low though, since we still have configurable training wheels in place (PoV size capped at 80% by default). --------- Co-authored-by: GitHub Action <action@github.com>
Modify asset-hub-kusama to use the read/write costs computed in validate block on validator reference hardware, since these are weights that guarantee the blocks will pass validation and make it on the relay chain. This were obtained with the benchmark created here: paritytech/polkadot-sdk#8069. Part of: polkadot-fellows#800 --------- Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
…ion from 4 to 100 DOT (polkadot-fellows#1022) On Polkadot AH, we are currently allowing `MaxSignedSumbissions=16` to be submitted during `Signed` phase of a NPoS election. The last submission will cost `4 * 2**15 = 131072 DOT` and the sum of all 16 solutions will cost `4 * (2**16 - 1) = 262140 DOT`, which makes a transaction spamming attack expensive but not prohibitive. We now increase the base deposit from 4 to 100 DOT increasing the cost of the attack by factor 25. This doesn't disincentivize community participation but significantly reduces the spamming attack vector risk to minimum. It's worth mentioning that an attacker, aside from wasting a considerable amount of DOT, wouldn't gain anything from the attack. If no valid submission is made during the Signed phase, we will select the solution produced by OCW during the Unsigned phase. Therefore, the net result of the attack would be a slightly suboptimal but still decent solution compared to the one offered by the legitimate miner. Note that for Kusama the deposit is set to `0.1 * 4^N` with again at most 16 solutions, meaning the spamming attack cost is `0.1 * 4 ^15 = 107374182.4 KSM` so already insanely high, no changes are needed for Kusama. Fix paritytech/srlabs_findings#510. --------- Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
- Fixed ecosystem test CI flow (added npm, yarn) - Added yarn install via npm to install-deps.sh - [X] Does not require a CHANGELOG entry --------- Co-authored-by: Bastian Köcher <git@kchr.de>
Fixed the regression in the doc-test introduced by PR polkadot-fellows#1022, where we changed the base deposit from 4 to 100 DOT. --------- Co-authored-by: Bastian Köcher <git@kchr.de>
This PR makes the following changes to OpenGov parameters: #### All tracks - Increase submission deposit for all tracks - Decrease undeciding timeout for all tracks #### Treasurer - Max deciding, decreased from 10 to 2 - Decision Deposit, increased from 1,000 to 25,000 DOT - Min Support Turn Out increased from 0% to 1% #### Small spender - Max deciding decreased from 50 to 5 - Decision deposit increased from 100 to 500 DOT - Min Support Turn Out increased from 0% to 0.5% #### Medium spender - Max deciding decreased from 50 to 5 - Decision deposit increase from 200 to 1,000 - Min Support Turn Out increased from 0% to 0.5% #### Big Spender - Max deciding decreased from 50 to 3 - Decision deposit increase from 400 to 5,000 - Min Support Turn Out increased from 0% to 0.75% #### Referendum Canceller - Max deciding decreased from 1,000 to 500 - Decision deposit decreased from 10,000 to 5,000 See [WFC 1701](https://polkadot.subsquare.io/referenda/1701) for more information and motivation. - [ ] Does not require a CHANGELOG entry --------- Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> Co-authored-by: Bastian Köcher <git@kchr.de>
We only want to add a minimal change to test some Encointer democracy features more quickly. Closes encointer/encointer-parachain#254. --------- Co-authored-by: Branislav Kontur <bkontur@gmail.com>
Remove treasury burns from Polkadot AssetHub. See [associated referendum](https://polkadot.subsquare.io/referenda/1781)
…CM V3 to V5 asset conversion (polkadot-fellows#1019) Adds a local pay module implementation for Asset Hub Polkadot treasury that supports XCM V3 to V5 conversion for asset transactions. ## Problem Treasury spends with `AssetKind` in XCM V3 format are not getting processed correctly, causing payout failures. The current paymaster implementation doesn't handle XCM V3 to V5 conversion for asset transactions. ## Solution This PR introduces a local `LocalPay` implementation that: - Converts XCM V3/V4 asset formats to V5 `Location` format ## Changes - Added local `LocalPay` implementation with XCM version conversion support (V3→V5) - Updated treasury configuration (`TreasuryPaymaster`) to use the local pay module - Added changelog entry ## Temporary Implementation This is a temporary solution to quickly enable V3 payouts. Once the XCM V3 to V5 conversion support is added to polkadot-sdk and released, we will revert to using the upstream module from the SDK. polkadot-sdk issue to support for V3 to V5: paritytech/polkadot-sdk#10581 Open Issue polkadot-fellows#1027 to remove the local pay implementation after the above polkadot-sdk issue is resolved. --------- Co-authored-by: Adrian Catangiu <adrian@parity.io>
Modify asset-hub-polkadot to use the read/write costs computed in validate block on validator reference hardware, since these are weights that guarantee the blocks will pass validation and make it on the relay chain. This were obtained with the benchmark created here: paritytech/polkadot-sdk#8069. Part of: polkadot-fellows#800 --------- Signed-off-by: Alexandru Gheorghe <alexandru.gheorghe@parity.io>
~~Use google/gemini-3-pro-preview~~ Use prompts from https://github.com/polka-codes/prompts <!-- Remember that you can run `/merge` to enable auto-merge in the PR --> <!-- Remember to modify the changelog. If you don't need to modify it, you can check the following box. Instead, if you have already modified it, simply delete the following line. --> - [x] Does not require a CHANGELOG entry --------- Co-authored-by: fellowship-merge-bot[bot] <151052383+fellowship-merge-bot[bot]@users.noreply.github.com>
The nodes are now expecting that this is enabled by default. <!-- Remember that you can run `/merge` to enable auto-merge in the PR --> <!-- Remember to modify the changelog. If you don't need to modify it, you can check the following box. Instead, if you have already modified it, simply delete the following line. --> - [x] Does not require a CHANGELOG entry
Also puts a timeout onto `review-bot`. - [x] Does not require a CHANGELOG entry Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com>
This upgrades polkadot-sdk crates to the latest version of `unstable2507`. The main change is the following backport: paritytech/polkadot-sdk#10552. This is an important step for upgrading the Kusama AH runtime to the latest version of pallet-revive with: - EVM backend - Ethereum block storage - New gas mapping --------- Co-authored-by: Clara van Staden <claravanstaden64@gmail.com> Co-authored-by: Alexander Theißen <alex.theissen@me.com>
…sama and enable buffered election (polkadot-fellows#1037) This PR configures the AssetHubKusama runtime to utilize elastic scaling with 3 cores. - the runtime is prepared for elastic scaling with expected 2s block times - 3 cores will be assigned to AHK when we have sufficient confidence in testing stacks - AHK should function similarly with expected 6s block times until cores are assigned The PR also enables buffered export of the validator set to the Relay Chain to handle block time changes from elastic scaling in KAH more gracefully. Without this, era lengths can shrink when multiple cores are used. See paritytech/polkadot-sdk#10142. --------- Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io> Co-authored-by: Ankan <ankan.anurag@gmail.com> Co-authored-by: Bastian Köcher <info@kchr.de>
With [Ref 1710 - Hard Pressure Capped & Stepped Supply Schedule](https://polkadot.subsquare.io/referenda/1710) having passed, we have here an implementation. --- The code itself can be reasoned about in roughly 3 parts: - A general stepped curve, asymptotic to some defined amount by moving a percentage closer to that amount per step. - The era_payout() usage of this stepped curve. - New tests for the hard pressure inflation model, as well as some old tests for the previous inflation model that didn't make their way over to the AHM branch. --------- Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Signed-off-by: Andrei Sandu <andrei-mihail@parity.io> Signed-off-by: Alexandru Vasile <alexandru.vasile@parity.io> Co-authored-by: Andrii <ndk@parity.io> Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io> Co-authored-by: Bastian Köcher <git@kchr.de> Co-authored-by: Yuri Volkov <0@mcornholio.ru> Co-authored-by: s0me0ne-unkn0wn <48632512+s0me0ne-unkn0wn@users.noreply.github.com> Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com> Co-authored-by: Branislav Kontur <bkontur@gmail.com> Co-authored-by: GitHub Action <action@github.com> Co-authored-by: Muharem <ismailov.m.h@gmail.com> Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com> Co-authored-by: Adrian Catangiu <adrian@parity.io> Co-authored-by: fellowship-merge-bot[bot] <151052383+fellowship-merge-bot[bot]@users.noreply.github.com> Co-authored-by: Pablo Andrés Dorado Suárez <hola@pablodorado.com> Co-authored-by: ordian <write@reusable.software> Co-authored-by: Alistair Singh <alistair.singh7@gmail.com> Co-authored-by: Sergej Sakac <73715684+Szegoo@users.noreply.github.com> Co-authored-by: Bastian Köcher <info@kchr.de> Co-authored-by: Serban Iorga <serban@parity.io> Co-authored-by: Xiliang Chen <xlchen1291@gmail.com> Co-authored-by: Nikolai Kozlov <1431590+nkpar@users.noreply.github.com> Co-authored-by: nkprt <nikolai@parity.io> Co-authored-by: Eugenio Paluello <eugypalu@gmail.com> Co-authored-by: Giuseppe Re <giuseppe.re@parity.io> Co-authored-by: Javier Viola <363911+pepoviola@users.noreply.github.com> Co-authored-by: Dónal Murray <donal.murray@parity.io> Co-authored-by: Karol Kokoszka <karol.k91@gmail.com> Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com> Co-authored-by: Clara van Staden <claravanstaden64@gmail.com> Co-authored-by: Ankan <10196091+Ank4n@users.noreply.github.com> Co-authored-by: clangenb <37865735+clangenb@users.noreply.github.com> Co-authored-by: Dónal Murray <donalm@seadanda.dev> Co-authored-by: Andrei Sandu <andrei-mihail@parity.io> Co-authored-by: Andrei Sandu <54316454+sandreim@users.noreply.github.com> Co-authored-by: Alexandre Baldé <alexandre.balde@parity.io> Co-authored-by: Maksym H <1177472+mordamax@users.noreply.github.com> Co-authored-by: Alin Dima <alin@parity.io> Co-authored-by: Alexander Theißen <alex.theissen@me.com> Co-authored-by: Christian Langenbacher <clangenb+gh@protonmail.ch> Co-authored-by: Ankan <ankan.anurag@gmail.com> Co-authored-by: Karol Kokoszka <karol@parity.io> Co-authored-by: brenzi <brenzi@users.noreply.github.com> Co-authored-by: Doordashcon <jesse.chejieh@gmail.com> Co-authored-by: eskimor <eskimor@users.noreply.github.com> Co-authored-by: Robert <robert@gonimo.com> Co-authored-by: Raymond Cheung <178801527+raymondkfcheung@users.noreply.github.com> Co-authored-by: Maciej <kz_sky@outlook.com> Co-authored-by: Paolo La Camera <paolo.lacamera@pm.me> Co-authored-by: kianenigma <kian@parity.io> Co-authored-by: Alexandru Vasile <60601340+lexnv@users.noreply.github.com> Co-authored-by: Alexander Cyon <Sajjon@users.noreply.github.com>
Due to Github security, fork won't have access to secrets, so the workflow will fail. This prevents workflow from triggering when PR is form a fork. In such case, perform a manual dispatch to trigger reivew. <!-- Remember that you can run `/merge` to enable auto-merge in the PR --> <!-- Remember to modify the changelog. If you don't need to modify it, you can check the following box. Instead, if you have already modified it, simply delete the following line. --> - [x] Does not require a CHANGELOG entry
It is better to use the already existing infrastructure instead of adding another way we to install dependencies. This pull request also ensures we are forwarding return values in `/cmd` spawned processes to e.g. fail on errors. <!-- Remember that you can run `/merge` to enable auto-merge in the PR --> <!-- Remember to modify the changelog. If you don't need to modify it, you can check the following box. Instead, if you have already modified it, simply delete the following line. --> - [x] Does not require a CHANGELOG entry
<!-- Remember that you can run `/merge` to enable auto-merge in the PR --> <!-- Remember to modify the changelog. If you don't need to modify it, you can check the following box. Instead, if you have already modified it, simply delete the following line. --> - [x] Does not require a CHANGELOG entry Fix zombienet test to run in `dind` environment. --------- Co-authored-by: Bastian Köcher <git@kchr.de> Co-authored-by: Bastian Köcher <info@kchr.de>
…ot-fellows#1048) This PR configures the AssetHubPolkadot runtime to utilize elastic scaling with 3 cores. - the runtime is prepared for elastic scaling with expected 2s block times - 3 cores will be assigned to AHP when/after this runtime change is enacted - AHP will run with 6s block times until more cores are assigned The PR also enables buffered export of the validator set to the Relay Chain to handle block time changes from elastic scaling in AHP more gracefully. Without this, era lengths can shrink when multiple cores are used. See paritytech/polkadot-sdk#10142.
…olkadot-fellows#1049) While working on polkadot-fellows#1047 I noticed that the `/cmd bench` command commits `solc` and `resolc` binaries. This is unwanted. I propose to not put the binaries into the main repo directory, but use the `RUNNER_TEMP` directory. Then we have a general solution and don't need to mess with manual exclusion of whatever tooling we want in the future in the git workflow. Example commit created by bot which shows the issue: polkadot-fellows@1854d62 Example commit which shows that fix works (no binaries present): polkadot-fellows@a4e34df - [x] Does not require a CHANGELOG entry Co-authored-by: fellowship-merge-bot[bot] <151052383+fellowship-merge-bot[bot]@users.noreply.github.com>
The Asset Hub migration translated specific account IDs such that they would stay accessible after the migration. We missed two such accounts that were generated in a specific recursive manner and are fixing this now. ## Changes Add an extrinsic `AhOps::translate_para_sovereign_child_to_sibling_derived` that can be called with the `old` and `new` account and a derivation proof (para-id and derivation-path). This then moves all data from the `old` account to the `new` one. The old and new accounts can be calculated just from the para-id and derivation-path but we still pass them in to ensure correctness of usage. The extrinsic can be called by the fellowship or root. ## What Is Migrated? - Native DOT Balance - Assets: USDC, USDT, DED, TSN - Staked balances (unbonding balances are immediately unbonded and bonded amounts will be rebonded and start earning in the next era) Not migrated would be vested transfers (the accounts have none) or similar. ## Translated Accounts The translated accounts belong to Stellaswap and are derived from the Moonbeam Sovereign child account: - Moonbeam Child 2004: 13YMK2eZbf9AyGhewRs6W6QTJvBSM5bxpnTD8WgeDofbg8Q1 - Index 5: 14vDXpWfcSRPn8eWPKt2Xc8KN57tGNnAo7Z8M2C8kpkJav5q - Index 5/1: 1zAWXSCmRTR9ZkRXZXeHZftj1J6rnDe8BLXV8UJ2S2exCvL (**old 1**) - Index 5/2: 14KQD8dRoT3q2fCbCC49bFjU1diFu1d516tYuGmSUMmEoGNa (**old 2**) - Moonbeam Sibl 2004 - 13cKp89NgPL56sRoVRpBcjkGZPrk4Vf4tS6ePUD96XhAXozG - Index 5: 12gb2DBw5HfpmUyBKCHxJWwGxMyXbUgf6a7bagNduHZC5S9z - Index 5/1: 13GWAfgWAKLGm8AsKLn5pDbDyMHfShFgtMFEqM4TRNhXbSea (**new 1**) - Index 5/2: 123oqim7B24XzwB1hC4Fh7LGwbTas3QmxL6v6sVd95eTD5ee (**new 2**) The two accounts that will be translated are therefore: - 1zAWXSCmRTR9ZkRXZXeHZftj1J6rnDe8BLXV8UJ2S2exCvL to 13GWAfgWAKLGm8AsKLn5pDbDyMHfShFgtMFEqM4TRNhXbSea - 14KQD8dRoT3q2fCbCC49bFjU1diFu1d516tYuGmSUMmEoGNa to 123oqim7B24XzwB1hC4Fh7LGwbTas3QmxL6v6sVd95eTD5ee You can see the snapshot test doing this here https://github.com/polkadot-fellows/runtimes/blob/f254eee1fdb071b3d2f5d8cfe6c909b9e156448e/system-parachains/asset-hubs/asset-hub-polkadot/src/remote_tests.rs#L56-L61 --------- Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
In addition to adding the pallet I also: - KSM: Removed the old `WeightToFee` definition and replaced all occurrences with the new one - KSM: Removed magic numbers from the `WeightToFee` definition - DOT: Replaced `WeightToFee` with new definition required for `pallet_revive` - Fees: Moved the fee definition to the constants crate so they are shared between all system chains The only difference to the Kusama config is: ```rust type NativeToEthRatio = ConstU32<100_000_000>; // vs. 1_000_000 on KSM due to different decimals type GasScale = ConstU32<1_000>; // vs 100_000 on KSM due to different decimals ``` --------- Co-authored-by: GitHub Action <action@github.com> Co-authored-by: Ron <yrong1997@gmail.com>
…s#1047) This adds storage-weight-reclaim to polkadot-system-chains. --------- Co-authored-by: GitHub Action <action@github.com>
Relay chains (Polkadot & Kusama): - Update execute_block/check_inherents to use LazyBlock - Move generate_ancestry_proof from BeefyApi to MmrApi - Update unapplied_slashes return type to LegacyPendingSlashes - Update para_backing_state return type (vstaging → async_backing) - Move vstaging functions to parachains_runtime_api_impl - Update runtime_api_impl v11 → v13 - Update query_delivery_fees to take asset_id parameter - Update dry_run_xcm to single generic (XcmRouter)
|
/cmd bench --runtime asset-hub-kusama --pallet pallet_assets pallet_election_provider_multi_block pallet_staking_async cumulus_pallet_weight_reclaim |
|
Command "bench --runtime asset-hub-kusama --pallet pallet_assets pallet_election_provider_multi_block pallet_staking_async cumulus_pallet_weight_reclaim" has started 🚀 See logs here |
|
Command "bench --runtime asset-hub-kusama --pallet pallet_assets pallet_election_provider_multi_block pallet_staking_async cumulus_pallet_weight_reclaim" has finished ✅ See logs here DetailsSubweight results:
|
|
Thanks @bkchr 🙏 can you run also the one for polkadot AH ? Thank you |
|
Actually it seems that the KAH ones were not committed because job silently failed (no solc on ibp-us-stakeplus-bm01 see https://github.com/polkadot-fellows/runtimes/actions/runs/21294291850/job/61296920978 @bkchr ) |
franciscoaguirre
left a comment
There was a problem hiding this comment.
From the XCM perspective it looks good. Just needs benchmarks and fmt
@skunert any hint why solc is not found or installed by the install_deps.sh script ? |
|
Review required! Latest push from author must always be reviewed |
Never mind, the branch I am pointing to doesn't contain latest changes around solc/resolc @bkchr and @skunert introduced -> we will need to rebase to have latest and greatest + re-try running benchmark |
That explains, I was also surprised to see this:
I already added support for that in #1047 and #941, so the branch needs to be updated. |
Didn't notice that pandres95-upgrade-to-stable2509 was lagging so behind, I am updating from latest main and fixing quite some conflicts, then I will push again and ask some kind fellow to run the benchmark command again. Thx |
…ot-and-kusama-ah-rc-compilation
|
As mentioned here #951 (comment), I would suggest to merge #1062 into #951 and continue review, fix and benchmarking from there. Reason is that after merging latest |
7076d25
into
polkadot-fellows:pandres95-upgrade-to-stable2509
SDK 2512-1 API Changes Applied:
Runtime APIs (all runtimes):
pallet_assets (asset-hubs, people-polkadot):
pallet_election_provider_multi_block (asset-hubs):
Relay chains (polkadot, kusama):
bridge-hub-polkadot (Snowbridge):
Weight stubs (all runtimes):
Benchmarks to regenerate post-merge: