8a61515819
Extension-scheduled setInterval/setTimeout/detached callbacks ran outside the handler-dispatch try/catch, so a throw surfaced as a process-level uncaughtException and the global postmortem handler tore down the whole session instead of isolating the misbehaving extension. - Added ManagedTimers backing sanctioned ctx.setInterval/setTimeout/clearTimer: callbacks run with handler-dispatch isolation (throw/rejection logged and routed through onError), handles are unref'd, and all are cleared on session_shutdown. - Wired the helpers into ExtensionRunner.createContext and the runner-less command-context fallback; onSession now inherits the runner context. - Documented in-process no-isolation behavior and the managed timers in docs/extensions.md and docs/skills/authoring-extensions.md. Fixes #5664