[Bug] Worktree isolation fails silently when directory creation fails, allowing undetected modifications to parent repo

Resolved 💬 1 comment Opened May 18, 2026 by Crazytieguy Closed May 20, 2026

Bug Description
When spawning a background subagent with isolation: "worktree", the harness sometimes fails to actually create the worktree directory but still launches the agent with its cwd set to the non-existent path. The shell's cwd then silently falls through to the parent repo, so ls . returns the main worktree's contents and the agent unknowingly edits and commits in the main repo. Combined with no error surfaced to the parent agent and no worktreePath recorded in the agent's meta.json, this is undetectable from inside the subagent — it has no signal that anything is wrong.

Environment Info

  • Platform: darwin
  • Terminal: WezTerm
  • Version: 2.1.143
  • Feedback ID: 15e66f72-a4bb-4174-b8d8-d56977aa024f

Errors

[{"error":"MaxFileReadTokenExceededError: [REDACTED] content (38251 tokens) exceeds maximum allowed tokens (25000). Use offset and limit parameters to read specific portions of the file, or search for specific content instead of reading the whole file.\n    at UHK (/$bunfs/root/src/entrypoints/cli.js:4946:13303)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T22:38:49.188Z"},{"error":"SyntaxError: JSON Parse error: Property name must be a string literal\n    at <parse> (:0)\n    at parse (unknown)\n    at owq (/$bunfs/root/src/entrypoints/cli.js:182:10088)\n    at O (/$bunfs/root/src/entrypoints/cli.js:138:18426)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:184:1658)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:5267:743)\n    at map (native:1:11)\n    at N2_ (/$bunfs/root/src/entrypoints/cli.js:5267:561)\n    at DSK (/$bunfs/root/src/entrypoints/cli.js:9089:11780)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T22:39:04.914Z"},{"error":"MaxFileReadTokenExceededError: [REDACTED] content (38251 tokens) exceeds maximum allowed tokens (25000). Use offset and limit parameters to read specific portions of the file, or search for specific content instead of reading the whole file.\n    at UHK (/$bunfs/root/src/entrypoints/cli.js:4946:13303)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T22:39:48.173Z"},{"error":"MaxFileReadTokenExceededError: [REDACTED] content (38251 tokens) exceeds maximum allowed tokens (25000). Use offset and limit parameters to read specific portions of the file, or search for specific content instead of reading the whole file.\n    at UHK (/$bunfs/root/src/entrypoints/cli.js:4946:13303)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T22:40:34.301Z"},{"error":"SyntaxError: JSON Parse error: Property name must be a string literal\n    at <parse> (:0)\n    at parse (unknown)\n    at owq (/$bunfs/root/src/entrypoints/cli.js:182:10088)\n    at O (/$bunfs/root/src/entrypoints/cli.js:138:18426)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:184:1658)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:5267:743)\n    at map (native:1:11)\n    at N2_ (/$bunfs/root/src/entrypoints/cli.js:5267:561)\n    at DSK (/$bunfs/root/src/entrypoints/cli.js:9089:11780)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T22:57:59.478Z"},{"error":"MaxFileReadTokenExceededError: [REDACTED] content (44550 tokens) exceeds maximum allowed tokens (25000). Use offset and limit parameters to read specific portions of the file, or search for specific content instead of reading the whole file.\n    at UHK (/$bunfs/root/src/entrypoints/cli.js:4946:13303)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T23:14:10.002Z"},{"error":"SyntaxError: JSON Parse error: Property name must be a string literal\n    at <parse> (:0)\n    at parse (unknown)\n    at owq (/$bunfs/root/src/entrypoints/cli.js:182:10088)\n    at O (/$bunfs/root/src/entrypoints/cli.js:138:18426)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:184:1658)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:5267:743)\n    at map (native:1:11)\n    at N2_ (/$bunfs/root/src/entrypoints/cli.js:5267:561)\n    at DSK (/$bunfs/root/src/entrypoints/cli.js:9089:11780)\n    at processTicksAndRejections (native:7:39)","timestamp":"2026-05-16T23:34:33.826Z"},{"error":"SyntaxError: JSON Parse error: Unable to parse JSON string\n    at <parse> (:0)\n    at parse (unknown)\n    at owq (/$bunfs/root/src/entrypoints/cli.js:182:10088)\n    at O (/$bunfs/root/src/entrypoints/cli.js:138:18426)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:184:1658)\n    at <anonymous> (/$bunfs/root/src/entrypoints/cli.js:5267:743)\n    at map (native:1:11)\n    at N2_ (/$bunfs/root/src/entrypoints/cli.js:5267:561)\n    at DSK (/$bunfs/root/src/entrypoints/cli.js:9089:11780)\n    at processTicksAndRejections (native:7:3…

Note: Content was truncated.

View original on GitHub ↗

This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗