Resuming can no longer hang on a transcript path that is a directory or pipe.
What's wrong with this entry?
Before reading the start and end of a transcript file, Claude Code now checks that the path is a regular file and returns empty content otherwise. This closes a case where a resume candidate that was a directory, device or named pipe could hang or return garbage.
- The check runs on both the path and the opened handle, and only on read-only opens.
- Resolving resume paths now goes through a shared helper that falls back to the original path when the real path cannot be determined.
{ head: "", tail: "" }
Strings lifted out of the shipped bundle, so the claim above can be checked against them.