Files
amethyst/quic
Claude 03c00621d6 fix(quic): restore Retry fields + LevelState VN reset after lock-split merge
Tier 1 lock-split agent's worktree was based on main and didn't carry
the Retry-handling work (fields retryToken / retryConsumed, applyRetry
method's references to them). Merge with -X theirs nuked those.

Restored:
  - retryToken + retryConsumed @Volatile fields on QuicConnection,
    re-attached to applyRetry in the lock-split-merged file.
  - LevelState.resetForVersionNegotiation now uses pnSpace.resetForRetry()
    to reset the PN counter in place — pnSpace is `val` post-refactor,
    direct re-assignment doesn't compile. The naming is historical;
    the underlying semantics (zero PN counter + clear received side)
    are correct for both VN and Retry-with-fresh-PN cases.
  - openBidiStream split into the public suspend wrapper +
    openBidiStreamLocked() (caller holds streamsLock). Restores the
    batched prepareRequests path's ability to open N streams under one
    lock hold.
  - close() — local var firedQlog hoisted out of withLock block.

Test suite runs clean. Three deprecation warnings remain on
PtoCryptoRetransmitTest + QlogObserverTest still using the
backward-compat conn.lock alias; left for follow-up cleanup.

https://claude.ai/code/session_01HcvfQq1ttPV9PkRoJb4nyT
2026-05-07 02:28:26 +00:00
..