Every send uses maxRetries: 0n so the RPC's generic retry is disabled
and we own the rebroadcast loop. (kit downcasts the bigint to 0 in the
JSON-RPC payload.)
Rebroadcast = resend the SAME signed bytes. We never decode, mutate, or
re-sign the transaction, and we return config.signature verbatim — so
there is no double-charge risk.
Termination is delegated to ConfirmationTracker's lastValidBlockHeight
bound; we add no arbitrary cap.
Sends and rebroadcasts until confirmed or blockhash expiry.
Correctness invariants (see CLAUDE.md):
maxRetries: 0nso the RPC's generic retry is disabled and we own the rebroadcast loop. (kit downcasts the bigint to0in the JSON-RPC payload.)config.signatureverbatim — so there is no double-charge risk.lastValidBlockHeightbound; we add no arbitrary cap.