Repository navigation
feat(node): show traceroute request states and mark MQTT hops - #7969
Merged
Merged
Conversation
A refused traceroute read the same as an unanswered one, and the 30 s limit showed only as a disabled control. Requests now read waiting, answered, no response or rate limited, the cooldown shows its seconds, and a hop last heard over MQTT is marked (meshtastic/design#165).
Contributor
|
Warning Review limit reachedYou've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Next included review available in 19 minutes. View limit details
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. |
jamesarich
marked this pull request as ready for review
November 8, 2026 22:47
jamesarich
enabled auto-merge
November 8, 2026 22:47
2 of 4 tasks
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.
A refused traceroute read the same as an unanswered one, and the radio's 30 s limit showed only as a disabled control, so the operator met it as a failure. This covers the two Android gaps in meshtastic/design#165: requirement 10 (request states, the limit surfaced before it is hit) and requirement 12 (MQTT hops marked).
✨ Features
RATE_LIMIT_EXCEEDEDreads Rate limited, anything else No Response.(MQTT)in the log and in the result alert, once, even with a local display name.🧪 Testing Performed
TracerouteRequestStateTestcovers each state, a NAK for another request and an answer that arrives after a refusal.CommonNodeRequestActionsTestchecks that a rate-limit NAK is recorded against its request id.RouteDiscoveryTestchecks the MQTT mark, including when the long name already carries it and for an unknown hop.spotlessCheck,detekt,:core:model,:core:dataand:feature:nodeallTests, andkmpSmokeCompilepass locally with-PwarningsAsErrors=true.Requirement 13 already holds: a hop with no reported SNR renders
?. Telling an MQTT or UDP hop's placeholder SNR from a real one needs the firmware signal in design#165's open question.Before/After screenshots to follow.