I discovered yesterday that Query calls cannot emit messages. My hope was that I could have a bunch of bucket canisters, and one “root” canister that could interact with them acting like a facade.
However, since query calls can’t emit messages, all my get calls have to reach consensus like an update call would. Making this impractical.
What’s the workaround here, and is there a hopeful future where we can execute intercanister query → query calls?
The obvious solution is treat the root canister as a registry, that returns the address of the correct canister to the user, which then on the FE instantiates a canister js instance and executes the call.