refactor(cli): extract shared execx.SpawnDetached helper
main·
Commit

Collapse the two near-identical detached-spawn platform trios (telemetry __send_analytics, trail __refresh_trail_enablement) into a single portable execx.SpawnDetached. execx already owns the sibling detachFromTTY process-attr logic, so both platforms reuse it; the Unix side now uses Setsid (full session detach) instead of Setpgid.
SpawnDetached is a no-op under in-process go test, so unit tests can never accidentally fork the test binary; call sites keep their spawn seams for assertions.
Also drop issue-number references from comments and test messages in favor of self-contained descriptions.
Co-Authored-By: Claude Fable 5 noreply@anthropic.com Entire-Checkpoint: 01KXJQ2497WRN65JJT79EA7NXZ
Checkpoints
Checkpoint 1