0

I have custom parachain with pallet_proxy configured on it. I have created a pure proxy. But when I tried to add a second proxy to the anonymous account, I got the following error:

system.CallFiltered

It seems to be a pretty straightforward error. However, the runtime configuration doesn't filter any proxy transaction-related at all. In fact, I have even tried removing all the filters, but still fails. Am I missing something?

3
  • Can you reproduce this on Rococo?There it is easier to see for everyone what is going wrong. Faucet is here faucet.polkadot.io Commented Apr 8 at 16:40
  • @OliverTale-Yazdi I tried to reproduce it in paseo and it worked, so something is wrong in my code, but still haven't figured out where the error is
    – magecnion
    Commented Apr 8 at 19:19
  • Can I have your chain's repo link?
    – AurevoirXavier
    Commented Apr 9 at 8:32

1 Answer 1

0

Indeed, my configuration for the pallet_proxy was incorrect; this piece of code was missing:

impl InstanceFilter<RuntimeCall> for ProxyType {
    // missing function
    fn is_superset(&self, o: &Self) -> bool {
        match (self, o) {
            (x, y) if x == y => true,
            (ProxyType::Any, _) => true,
        }
    }
}

As far as I could understand, when proxy-related actions are performed through a proxy, it has to be checked that such proxy is a superset type. For example, it wouldn't make sense to be able to create an Any proxy type from a less restrictive proxy (e.g. Staking). Hope that makes sense.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.