interface-spec
interface-spec copied to clipboard
feat: specify ic0.call_cycles_try_add128
This PR specifies a new system API ic0.call_cycles_try_add128 which behaves analogously to ic0.call_cycles_add128, but does not trap if the canister balance would decrease below the canister's freezing limit after transferring the specified amount of cycles onto the call. Since a canister cannot reliably derive its freezing limit, this new system API is necessary to avoid spurious traps when attaching cycles onto a call.