Conversation
…mote_challenges reference
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves the design question we deferred earlier — initial_max_path_id/MAX_PATH_ID are both peer-controlled values already bounded by our own max_path_id, so a mid-connection increase shouldn't be treated any more cautiously than the handshake-time case, which already eagerly creates stock paths via _setup_paths_in_stock().
Both directions of "max_path_id rising" now trigger eager stock setup, matching the handshake-time behavior:
Both are guarded by if self._multipath_negotiated:, matching the existing convention at the two pre-existing _setup_paths_in_stock() call sites, and both reuse _setup_paths_in_stock()'s own idempotency (it skips any path ID already present in either dict), so calling it repeatedly is safe.
4 new tests covering both directions' eager-creation and non-increasing-value-is-a-no-op cases, confirming both that the right path IDs get created and that each new stock entry already has its own host_cids populated (ready to send a CID for that path). Zero regressions (143 tests, same 18 pre-existing failures/errors).