What Happened
- The gateway `cancel_run` flow was fixed to avoid spurious 409 conflicts when two cancellation requests hit the same active run. It now rechecks the run state after a failed `cancel()` and treats already-interrupted or already-removed runs as a successful no-op (202), while still returning 409 for truly completed/error/timeout terminal states.
- The gateway `cancel_run` flow was fixed to avoid spurious 409 conflicts when two cancellation requests hit the same active run. It now rechecks the run state after a failed `cancel()` and treats already-interrupted or already-removed runs as a successful no-op (202), while still returning 409 for truly completed/error/timeout terminal states.
- 1 evidence item attached for review.