Fix xcm config for coretime. (#3768)

Fixes https://github.com/paritytech/polkadot-sdk/issues/3762 .

---------

Co-authored-by: eskimor <eskimor@no-such-url.com>
Co-authored-by: Adrian Catangiu <adrian@parity.io>
This commit is contained in:
eskimor
2024-03-23 06:46:15 +01:00
committed by GitHub
parent 9a04ebbfb0
commit 19490abae0
+10 -10
View File
@@ -41,10 +41,11 @@ use xcm_builder::{
AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses, AccountId32Aliases, AllowExplicitUnpaidExecutionFrom, AllowKnownQueryResponses,
AllowSubscriptionsFrom, AllowTopLevelPaidExecutionFrom, ChildParachainAsNative, AllowSubscriptionsFrom, AllowTopLevelPaidExecutionFrom, ChildParachainAsNative,
ChildParachainConvertsVia, DescribeAllTerminal, DescribeFamily, FrameTransactionalProcessor, ChildParachainConvertsVia, DescribeAllTerminal, DescribeFamily, FrameTransactionalProcessor,
FungibleAdapter, HashedDescription, IsConcrete, MintLocation, OriginToPluralityVoice, FungibleAdapter, HashedDescription, IsChildSystemParachain, IsConcrete, MintLocation,
SignedAccountId32AsNative, SignedToAccountId32, SovereignSignedViaLocation, TakeWeightCredit, OriginToPluralityVoice, SignedAccountId32AsNative, SignedToAccountId32,
TrailingSetTopicAsId, UsingComponents, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, SovereignSignedViaLocation, TakeWeightCredit, TrailingSetTopicAsId, UsingComponents,
XcmFeeManagerFromComponents, XcmFeeToAccount, WeightInfoBounds, WithComputedOrigin, WithUniqueTopic, XcmFeeManagerFromComponents,
XcmFeeToAccount,
}; };
use xcm_executor::XcmExecutor; use xcm_executor::XcmExecutor;
@@ -142,13 +143,12 @@ impl Contains<Location> for OnlyParachains {
} }
} }
pub struct CollectivesOrFellows; pub struct Fellows;
impl Contains<Location> for CollectivesOrFellows { impl Contains<Location> for Fellows {
fn contains(location: &Location) -> bool { fn contains(location: &Location) -> bool {
matches!( matches!(
location.unpack(), location.unpack(),
(0, [Parachain(COLLECTIVES_ID)]) | (0, [Parachain(COLLECTIVES_ID), Plurality { id: BodyId::Technical, .. }])
(0, [Parachain(COLLECTIVES_ID), Plurality { id: BodyId::Technical, .. }])
) )
} }
} }
@@ -172,8 +172,8 @@ pub type Barrier = TrailingSetTopicAsId<(
AllowTopLevelPaidExecutionFrom<Everything>, AllowTopLevelPaidExecutionFrom<Everything>,
// Subscriptions for version tracking are OK. // Subscriptions for version tracking are OK.
AllowSubscriptionsFrom<OnlyParachains>, AllowSubscriptionsFrom<OnlyParachains>,
// Collectives and Fellows plurality get free execution. // Messages from system parachains or the Fellows plurality need not pay for execution.
AllowExplicitUnpaidExecutionFrom<CollectivesOrFellows>, AllowExplicitUnpaidExecutionFrom<(IsChildSystemParachain<ParaId>, Fellows)>,
), ),
UniversalLocation, UniversalLocation,
ConstU32<8>, ConstU32<8>,