A sandbox's time limit can be set or changed after it starts
:update (sandbox.update() in the SDKs, or the CLI's runtime sandboxes update --timeout) takes timeoutSeconds, a new limit counted from now, sooner or later than before (0 removes it), and onTimeout, what its end does. A sandbox made without a limit can now get one. E2B's setTimeout to an earlier time works under withruntime/e2b instead of throwing. See Sandboxes in the API guide.