What
A self-hosted runner is a machine you run yourself that starts Claude Code sessions as separate processes. When one of those processes fails, the runner now gives a clearer reason:
- A process that never started is reported as "child failed to start (): ..." instead of being treated as an exit.
- A start error of class
e2big, meaning the launch configuration was too large, counts as a session configuration error (SESSION_FAILURE_KIND_SESSION_CONFIG_ERROR) instead of a runner crash. - Messages for other start errors include the size of the longest argument and the longest environment entry.
- If the process dies before it finishes starting and its error output contains "disabled by your organization's managed settings (disableSideloadFlags)", the user sees "This machine's managed settings (disableSideloadFlags) refused the launch."
The disableSideloadFlags error text is now built from a shared constant. The wording is unchanged.
Why
Before, every failure was reported as the process exiting and classed as a runner crash. Operators can now tell a configuration problem, such as a launch that is too large or one blocked by the managed setting disableSideloadFlags, from a real crash.