Loading
Commits on Source 25
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
-
cznic authored
The eval-timeout deadline (SetEvalTimeout) is an absolute wall-clock time armed by configureInterrupt, which only the Eval* functions call. Call, CallValue and ExecutePendingJobs run JS too but did not re-arm it, so the deadline set by the last Eval kept ticking through idle wall-clock time; once the timeout elapsed, every later Call or drain was interrupted (InternalError: interrupted) even though it had not itself run long. An embedding host that dispatches events via Call after an idle period thus saw JS stop working permanently. Re-arm the deadline in these three entry points, as Eval does; a call that genuinely runs past the timeout is still interrupted. Co-Authored-By:Claude Opus 4.8 (1M context) <noreply@anthropic.com>