Merged
Conversation
39 tasks
acatangiu
reviewed
Mar 4, 2025
This was referenced Mar 6, 2025
Contributor
|
Either nest or do smth like |
# Conflicts: # polkadot/xcm/pallet-xcm/src/lib.rs
Contributor
|
/cmd prdoc --audience runtime_dev --bump patch |
…time_dev --bump patch'
This PR fixes compile errors introduced in #7730, which adds nested error reporting and instruction index tracking to `pallet-xcm`, `xcm-executor`, and related components. Specifically: - Updates all usage sites to match the new nested structure. - Ensures proper propagation of the index field in `Outcome::Error` and `Outcome::Incomplete`. - Adjusts method signatures and error handling to reflect the new error format. This change helps improve XCM observability and debugging by explicitly identifying the failing instruction in error contexts.
|
All GitHub workflows were cancelled due to failure one of the required jobs. |
ordian
added a commit
that referenced
this pull request
Jun 4, 2025
* master: omni-node: fix `benchmark pallet` to work with `--runtime` (#8594) Handle and suppress "New unknown `FromSwarm` libp2p event" warning (#8731) Implement detailed logging for XCM failures (#8724) [pallet-revive] contract's nonce starts at 1 (#8734) sync/fix: Clear gap sync on known imported blocks (#8445) [PoP] Add personhood tracking pallets (#8164) client/net: Use litep2p as the default network backend (#8461) Unflake `returns_status_for_pruned_blocks` (#8709) [AHM] Report the weights of epmb pallet to expose kusama and polkadot weights (#8704) Remove all XCM dependencies from `pallet-revive` (#8584) Docker master image tag fix (#8711) Record ed as part of the storage deposit (#8718) [pallet-revive] update dry-run logic (#8662) feat: add collator peer ID to ParachainInherentData (#8708) Nest errors in pallet-xcm (#7730) pallet-assets ERC20 precompile (#8554) Broker: Introduce min price + adjust renewals to lower market. (#8630) [AHM] Staking async fixes for XCM and election planning (#8422) Staking (EPMB): Add defensive error handling to voter snapshot creation and solution verification (#8687)
pgherveou
pushed a commit
that referenced
this pull request
Jun 11, 2025
Errors in `pallet-xcm` are frustrating. You execute an XCM instruction and get `LocalExecutionIncomplete`: no details, no context. Was it insufficient balance? An account conversion failure? You're left guessing. To fix this, we introduce `LocalExecutionIncompleteWithError`, which nests an `ExecutionError` enum inside `LocalExecutionIncomplete`. This provides specific error details, like insufficient balance or asset transaction failures, making debugging easier for users and applications. FRAME errors are limited to 4 bytes, and we were only using one. By nesting `ExecutionError`, we utilize the full 4 bytes with a compact enum that mirrors `XcmError` for consistency. To make this robust, we reworked problematic errors. For instance, `FailedToTransactAsset` previously took a string, which couldn’t fit in 4 bytes. We’ve replaced it with a unit variant in `ExecutionError`, logging the string for debugging while keeping the encoding compact. This ensures detailed, efficient error reporting. --------- Co-authored-by: Raymond Cheung <178801527+raymondkfcheung@users.noreply.github.com> Co-authored-by: cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Adrian Catangiu <adrian@parity.io> Co-authored-by: Andrii <ndk@parity.io>
21 tasks
fellowship-merge-bot bot
pushed a commit
to polkadot-fellows/runtimes
that referenced
this pull request
Aug 7, 2025
This brings in `stable2506` Polkadot SDK, and integrates many new features. Integrated breaking changes to be verified by the original authors: - [x] ~paritytech/polkadot-sdk#8127 @kianenigma @Ank4n~ This will come in with AHM, and not before. - [x] paritytech/polkadot-sdk#7597 @gui1117 - [x] paritytech/polkadot-sdk#8254 @bkchr - [x] paritytech/polkadot-sdk#7592 @bkontur - [x] paritytech/polkadot-sdk#8382 @UtkarshBhardwaj007 - [x] paritytech/polkadot-sdk#8021 @serban300 - [x] paritytech/polkadot-sdk#8344 @serban300 - [x] paritytech/polkadot-sdk#8262 @athei - [x] paritytech/polkadot-sdk#8584 @athei - [x] paritytech/polkadot-sdk#8299 @skunert - [x] paritytech/polkadot-sdk#8652 @pgherveou - [x] paritytech/polkadot-sdk#8554 @pgherveou - [x] paritytech/polkadot-sdk#8281 @mrshiposha - [x] paritytech/polkadot-sdk#7730 @franciscoaguirre - [x] paritytech/polkadot-sdk#8599 @yrong @claravanstaden - [x] paritytech/polkadot-sdk#8531 @bkontur - [x] paritytech/polkadot-sdk#8409 @kianenigma - [x] paritytech/polkadot-sdk#9137 @franciscoaguirre - [x] paritytech/polkadot-sdk#7944 @bkontur - [x] paritytech/polkadot-sdk#8179 @bkontur - [x] paritytech/polkadot-sdk#8037 @yrong --------- Co-authored-by: GitHub Action <action@github.com> Co-authored-by: claravanstaden <claravanstaden64@gmail.com> Co-authored-by: Branislav Kontur <bkontur@gmail.com> Co-authored-by: Bastian Köcher <git@kchr.de> Co-authored-by: Alain Brenzikofer <alain@integritee.network> Co-authored-by: kianenigma <kian@parity.io> Co-authored-by: Francisco Aguirre <franciscoaguirreperez@gmail.com> Co-authored-by: ron <yrong1997@gmail.com> Co-authored-by: joe petrowski <25483142+joepetrowski@users.noreply.github.com> Co-authored-by: Overkillus <maciej.zyszkiewicz@parity.io>
alvicsam
pushed a commit
that referenced
this pull request
Oct 17, 2025
Errors in `pallet-xcm` are frustrating. You execute an XCM instruction and get `LocalExecutionIncomplete`: no details, no context. Was it insufficient balance? An account conversion failure? You're left guessing. To fix this, we introduce `LocalExecutionIncompleteWithError`, which nests an `ExecutionError` enum inside `LocalExecutionIncomplete`. This provides specific error details, like insufficient balance or asset transaction failures, making debugging easier for users and applications. FRAME errors are limited to 4 bytes, and we were only using one. By nesting `ExecutionError`, we utilize the full 4 bytes with a compact enum that mirrors `XcmError` for consistency. To make this robust, we reworked problematic errors. For instance, `FailedToTransactAsset` previously took a string, which couldn’t fit in 4 bytes. We’ve replaced it with a unit variant in `ExecutionError`, logging the string for debugging while keeping the encoding compact. This ensures detailed, efficient error reporting. --------- Co-authored-by: Raymond Cheung <178801527+raymondkfcheung@users.noreply.github.com> Co-authored-by: cmd[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Adrian Catangiu <adrian@parity.io> Co-authored-by: Andrii <ndk@parity.io>
6 tasks
6 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Errors in
pallet-xcmare frustrating. You execute an XCM instruction and getLocalExecutionIncomplete: no details, no context. Was it insufficient balance? An account conversion failure? You're left guessing.To fix this, we introduce
LocalExecutionIncompleteWithError, which nests anExecutionErrorenum insideLocalExecutionIncomplete. This provides specific error details, like insufficient balance or asset transaction failures, making debugging easier for users and applications. FRAME errors are limited to 4 bytes, and we were only using one. By nestingExecutionError, we utilize the full 4 bytes with a compact enum that mirrorsXcmErrorfor consistency.To make this robust, we reworked problematic errors. For instance,
FailedToTransactAssetpreviously took a string, which couldn’t fit in 4 bytes. We’ve replaced it with a unit variant inExecutionError, logging the string for debugging while keeping the encoding compact. This ensures detailed, efficient error reporting.