Changing some error codes

Exactly. The corner case we’re addressing is in the CDK timers library, so it’s confusing. Let me try again:

  1. The canister is above the freezing threshold.
  2. The global timer is scheduled by the IC.
  3. The timers CDK library successfully executes and schedules user handler execution.
  4. But user handler execution is not happening, as the canister goes below the freezing threshold.

After this reclassification, the timers CDK library will be retrying the user handler execution, as the CanisterOutOfCycles error is SYS_TRANSIENT now.