Skip to content

Conversation

@manuelmauro
Copy link
Contributor

@manuelmauro manuelmauro commented Nov 14, 2025

What does it do?

This PR extends the XCM Transactor pallet to support AssetHub as a transaction destination, enabling Moonbeam users to execute staking operations and other remote calls on the AssetHub system parachain (Polkadot/Kusama/Westend).

What important points should reviewers know?

Is there something left for follow-up PRs?

What alternative implementations were considered?

Are there relevant PRs or issues in other repositories (Substrate, Polkadot, Frontier, Cumulus)?

What value does it bring to the blockchain users?

@manuelmauro manuelmauro self-assigned this Nov 14, 2025
@manuelmauro manuelmauro added the D3-trivial PR contains trivial changes in a runtime directory that do not require an audit label Nov 14, 2025
@coderabbitai
Copy link

coderabbitai bot commented Nov 14, 2025

Important

Review skipped

Auto reviews are limited based on label configuration.

🏷️ Required labels (at least one) (1)
  • agent-review

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch manuel/upgrade-xcm-transactor

Tip

📝 Customizable high-level summaries are now available in beta!

You can now customize how CodeRabbit generates the high-level summary in your pull requests — including its content, structure, tone, and formatting.

  • Provide your own instructions using the high_level_summary_instructions setting.
  • Format the summary however you like (bullet lists, tables, multi-section layouts, contributor stats, etc.).
  • Use high_level_summary_in_walkthrough to move the summary from the description to the walkthrough section.

Example instruction:

"Divide the high-level summary into five sections:

  1. 📝 Description — Summarize the main change in 50–60 words, explaining what was done.
  2. 📓 References — List relevant issues, discussions, documentation, or related PRs.
  3. 📦 Dependencies & Requirements — Mention any new/updated dependencies, environment variable changes, or configuration updates.
  4. 📊 Contributor Summary — Include a Markdown table showing contributions:
    | Contributor | Lines Added | Lines Removed | Files Changed |
  5. ✔️ Additional Notes — Add any extra reviewer context.
    Keep each section concise (under 200 words) and use bullet or numbered lists for clarity."

Note: This feature is currently in beta for Pro-tier users, and pricing will be announced later.


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.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 14, 2025

WASM runtime size check:

Compared to target branch

Moonbase runtime: 1996 KB (+8 KB) ⚠️

Moonbeam runtime: 2116 KB (+8 KB) ⚠️

Moonriver runtime: 2116 KB (+8 KB) ⚠️

Compared to latest release (runtime-4001)

Moonbase runtime: 1996 KB (+224 KB compared to latest release) ⚠️

Moonbeam runtime: 2116 KB (+252 KB compared to latest release) ⚠️

Moonriver runtime: 2116 KB (+252 KB compared to latest release) ⚠️

@github-actions
Copy link
Contributor

github-actions bot commented Nov 14, 2025

Coverage Report

@@                        Coverage Diff                        @@
##           master   manuel/upgrade-xcm-transactor      +/-   ##
=================================================================
+ Coverage   74.71%                          74.73%   +0.02%     
+ Files         397                             405       +8     
+ Lines       96483                           97981    +1498     
=================================================================
+ Hits        72085                           73219    +1134     
+ Misses      24398                           24762     +364     
Files Changed Coverage
/pallets/xcm-transactor/src/encode.rs 68.87% (-31.13%) 🔽
/pallets/xcm-transactor/src/lib.rs 89.67% (+0.20%) 🔼
/pallets/xcm-transactor/src/mock.rs 66.48% (-3.52%) 🔽
/precompiles/gmp/src/mock.rs 31.78% (+2.61%) 🔼
/precompiles/relay-encoder/src/lib.rs 66.67% (+1.20%) 🔼
/precompiles/relay-encoder/src/mock.rs 39.13% (+1.99%) 🔼
/precompiles/relay-encoder/src/tests.rs 98.59% (+0.06%) 🔼
/precompiles/xcm-transactor/src/mock.rs 73.57% (-1.81%) 🔽
/precompiles/xtokens/src/mock.rs 63.70% (+0.21%) 🔼
/runtime/moonbase/src/genesis_config_preset.rs 71.77% (+1.56%) 🔼
/runtime/moonbase/src/xcm_config.rs 52.50% (-4.23%) 🔽
/runtime/moonbase/tests/xcm_mock/parachain.rs 71.78% (-0.20%) 🔽
/runtime/moonbeam/src/xcm_config.rs 52.03% (-1.18%) 🔽
/runtime/moonbeam/tests/xcm_mock/parachain.rs 71.78% (-0.20%) 🔽
/runtime/moonriver/src/xcm_config.rs 52.03% (-1.18%) 🔽
/runtime/moonriver/tests/xcm_mock/parachain.rs 72.95% (-0.24%) 🔽
/runtime/relay-encoder/src/westend.rs 99.14% (+0.02%) 🔼

Coverage generated Mon Nov 17 09:44:03 UTC 2025

@manuelmauro manuelmauro added B7-runtimenoteworthy Changes should be noted in any runtime-upgrade release notes D5-nicetohaveaudit⚠️ PR contains trivial changes to logic that should be properly reviewed. not-breaking Does not need to be mentioned in breaking changes and removed D3-trivial PR contains trivial changes in a runtime directory that do not require an audit labels Nov 16, 2025
@manuelmauro manuelmauro marked this pull request as ready for review November 16, 2025 12:00
@manuelmauro manuelmauro added the B5-clientnoteworthy Changes should be mentioned in any downstream projects' release notes label Nov 16, 2025
@manuelmauro manuelmauro removed the B5-clientnoteworthy Changes should be mentioned in any downstream projects' release notes label Nov 16, 2025
pub enum Transactors {
/// Relay Chain (Westend for Moonbase)
Relay,
/// AssetHub system parachain (para 1000)
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
/// AssetHub system parachain (para 1000)
/// AssetHub system parachain

Transactors::Relay => Location::parent(),
Transactors::AssetHub => Location {
parents: 1,
interior: [Parachain(1000)].into(),
Copy link
Contributor

Choose a reason for hiding this comment

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

On Moonbase Alpha, the AssetHub ParachainID is 1001

Suggested change
interior: [Parachain(1000)].into(),
interior: [Parachain(1001)].into(),

@manuelmauro manuelmauro marked this pull request as draft November 20, 2025 14:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

B7-runtimenoteworthy Changes should be noted in any runtime-upgrade release notes D5-nicetohaveaudit⚠️ PR contains trivial changes to logic that should be properly reviewed. not-breaking Does not need to be mentioned in breaking changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants