I’m wanting to know if canister custodians (not canister controllers) are authorized to push updates to canisters? Like, if I’m the custodian of a canister, am i able to effect and implement code changes to the canister that i am custodian to?
The concept of a custodian is not something the IC itself knows - the spec does not even contain the word ‘custodian.’ Since this is a concept that’s entirely defined within canisters, it all depends on the implementation. I’m not sure a canister can be its own controller and self-update, but with a proxy canister (say you’re custodian of A and tell A to upgrade, A sends this command over to B. B is a controller of A, and upgrades A’s code) this would 100% be possible.
Do you know if a canister is able to set its own canister controller from within the canister itself?
If a canister is its own controller I don’t see why it shouldn’t be allowed to