high95%
ShellSession times out when command output lacks trailing newline
ShellSession._collect_output uses readline() and checks data.startswith(marker), so when the last output line lacks a trailing newline, the marker is merged with the output, the check fails, and the command times out.
