-
Notifications
You must be signed in to change notification settings - Fork 134
chore(pegboard-gateway): remove TunnelAck
#3488
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: 11-19-chore_engine-runner_remove_echo_close_on_toclientwebsocketclose
Are you sure you want to change the base?
chore(pegboard-gateway): remove TunnelAck
#3488
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
3 Skipped Deployments
|
Pull Request Review: Remove
|
972242d to
556b074
Compare
4adef6f to
759df3e
Compare
556b074 to
972242d
Compare
759df3e to
4adef6f
Compare
PR Review: Remove
|
Code Review - PR #3488: Remove
|
PR Review: Remove
|
Pull Request Review: Remove
|
4adef6f to
759df3e
Compare
972242d to
556b074
Compare
Code Review: Remove TunnelAckSummaryThis PR removes the ✅ Positive Observations
|
PR Review: Remove
|
556b074 to
972242d
Compare
759df3e to
4adef6f
Compare
Pull Request Review: Remove
|
Code Review: Remove TunnelAck from ProtocolThis PR removes the TunnelAck mechanism from the runner protocol. I've identified several critical issues that need to be addressed: CRITICAL ISSUE 1: Memory Leak - Pending Messages Never Removed The pending_msgs vector is still being populated (line 179) and checked in GC logic (line 447-451), but the TunnelAck handler that would remove messages is now just a TODO comment (line 228-249). This means:
Recommendation: Either remove pending_msgs entirely OR implement the ToGatewayKeepAlive handler. CRITICAL ISSUE 2: Gateway ID Migration Problem The v2→v3 conversion sets gateway_id to [0; 16] (all zeros), but the code uses this to route messages via GatewayReceiverSubject. A zero UUID likely won't route to a valid gateway. Recommendation: Add validation to reject zero UUIDs, or clarify if v2 clients are still supported. HIGH PRIORITY: Inverted GC Logic? The GC uses <= instead of > for timeout comparison, which seems backwards. It triggers GC when messages are NOT expired rather than when they ARE expired. MEDIUM PRIORITY: TODO Comments POSITIVE:
RECOMMENDATION: Fix critical issues 1 and 2 before merging. The incomplete removal of the ack mechanism will cause memory leaks and incorrect timeout behavior in production. |
972242d to
556b074
Compare
4adef6f to
759df3e
Compare
Pull Request Review: Remove
|
Code Review: Remove
|

No description provided.