ba8b3a19f9
Adds a child-exit-code guard to handleProvisional so a `ctask new` workspace is reclaimed only when the agent was actually canceled before real work (trust prompt rejected, Esc during startup, Ctrl+C mid-launch — all confirmed empirically as exit code 1). A zero exit means the user entered the agent and exited cleanly, which is a legitimate workflow that must preserve the workspace even with an empty manifest diff — for example when the user wants the workspace directory established so they can populate context/ before resuming. The exit code reaches handleProvisional via a new childExitCode helper that unwraps *exec.ExitError from cmd.Run's return. Non-exit errors (agent not found, OS-level failure) map to -1 so the workspace is still cleaned up — the child never actually ran. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>