Replica Error: not allowed to call ic00 method provisional_create_canister_with_cycles

We’ve encountered unexpected behavior in DFX 0.15.0 and 0.15.1.

After attempting to update the canister from my local DFX using the command dfx deploy identity_manager --network stage --no-wallet I received the following error: The replica returned a replica error: Replica Error: reject code CanisterReject, reject message Caller lh6kg-7ebfk-bwa26-zgl6l-l27vx-xnnr4-ow2n4-mm4cq-tfjky-rs5gq-5ae is not allowed to call ic00 method provisional_create_canister_with_cycles, error code Some("IC0516").

The same error occurred in my colleagues’ environments on other canisters (Ehoj3i-aiaaa-aaaak-qcl7a-cai, jiept-kaaaa-aaaao-aajsa-cai ).

Rolling back DFX to version 0.12.0 resumed the upgrade command’s functionality. Some of our pipelines are affected.

Do we need to wait for an update with a fix, or are there any actions required from the developers to use the latest DFX version ?

3 Likes

Can you share the definition of the network staging? It looks like for some reason dfx does not recognize staging as mainnet and tries to do things that are only possible locally

1 Like

Hey, Severin. This is what we have in dfx.json

1 Like

As part of this the definition of what dfx recognises as mainnet was changed. dfx now treats https://icp0.io as mainnet. If you change every https://ic0.app to https://icp0.io things should work again as before. If you’re wondering why ic0.app is no longer recognised I don’t have a good answer. We probably should have kept that in

In case you’re interested: here is how the detection is defined

3 Likes

Thank you Severin. Now it works!

4 Likes

Thank you @Severin . We encountered a similar issue with provider: "https://icp-api.io/".

1 Like