Hashes whose proof arrived before send() registered the handle. With a
zero-latency (mock) transport the proof round-trip completes inside
outlet.send's await — before the handle is stored — so we stash those
hashes and reconcile when send() lands.
Detach the proof listener and clear armed timers (on channel shutdown).
Only-if-larger timeout bump used by Channel._updatePacketTimeouts.
Re-send the exact wire bytes of a previously-sent packet (identical hash → identical proof). Returns the same handle.
Token-encrypt and send a CHANNEL DATA packet. Returns a handle whose hash is the proof-correlation id.
(Re)arm the timeout for a packet. Each call replaces the prior callback and
restarts the countdown at timeoutSeconds.
OptionaltimeoutSeconds: numberTear the underlying link down (retry-count exhaustion).
ChannelOutletBase backed by a import("./link.js").Link.
Adapts the channel to our link's proof model: the link fires a
proofevent for every validated link-DATA proof (regardless of context). We match proofs to in-flight envelopes by packet hash and arm timeouts withsetTimeout.Retransmission re-sends the identical encrypted packet bytes (same hash, same proof) rather than re-encrypting, so the receiver's re-proof resolves the original envelope.