test(transport): deterministically exercise cold-path failover
Commit

TestColdPathFailoverWhenRedirectTargetUnreachable adopted replicas [dead, alive] from the cold-path redirect, then relied on doWithFailover's random start offset to try the dead node first so it would be marked failed. Each iteration had a 1/2 chance of hitting the alive replica first (which serves immediately and resets the node list via its X-Entire-Replicas header), so across 8 iterations the dead node was never marked failed in (1/2)^8 ≈ 0.39% of runs — an intermittent failure.
Pin the dead replica as the first node tried via stickyNode (the same in-package idiom used by the redirect/sticky tests) so the redirect-target-unreachable failover path runs deterministically, and drop the now-pointless 8-iteration probabilistic loop. No production change.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com Entire-Checkpoint: 2cb795c79075