The HTTP wait/foreground cancellation work introduced parallel *_cancelable paths through operation execution. They are behaviorally intended to match the existing non-cancelable paths, but session lifecycle, outcome mapping, and error handling now have to stay synchronized by hand.
Follow-up: collapse the duplicated operation/session/launch/run helpers into shared implementations that take Option<CancellationToken> or an equivalent execution option, keeping the public behavior unchanged.
Scope notes:
- Keep this as a no-behavior-change refactor.
- Preserve existing tests for normal run/launch, HTTP wait disconnect, foreground interrupt, and detach behavior.
- Avoid mixing in launch setup-step cancellation or other cancellation semantics changes.
The HTTP wait/foreground cancellation work introduced parallel
*_cancelablepaths through operation execution. They are behaviorally intended to match the existing non-cancelable paths, but session lifecycle, outcome mapping, and error handling now have to stay synchronized by hand.Follow-up: collapse the duplicated operation/session/launch/run helpers into shared implementations that take
Option<CancellationToken>or an equivalent execution option, keeping the public behavior unchanged.Scope notes: