Repository navigation
fix(device): isolate and bound receiver pre-authentication admission - #251
Merged
Merged
Conversation
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.
Summary
Separate bounded direct/relay pre-authentication admission from the authenticated lane. Introduce explicit two-second handshake and cert-less bootstrap deadlines, close-safe admission cleanup, aggregate counters, and opt-in rate-bounded diagnostics. Document the limits in four languages.
Closes #233
Type
Checklist
Verified against
Python 3.13.7/websockets 17.1, macOS arm64,
-X dev -W error::ResourceWarning: independently reran 22 admission/i18n tests. Worker relay suite passed 155. Genuine paired direct and relay requests succeed with eight idle/slow-TLS direct sockets; over-deadline fixtures never invoke native delivery. Independent read-only review follow-up completed.Notes
Direct pre-authentication limit 16, relay limit 2, authenticated limit 8; this is isolation and bounded resource use, NOT arbitrary-flood availability. Two seconds is each protocol deadline, not a total socket-lifetime claim: closing may add time. Authentication-lane saturation and high-latency peers remain limitations. No production settings, service restart or release; draft only.