fix(net): clean up disconnected peer state - #7584
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
WalkthroughThe peer manager now reports whether a peer is disconnected or discouraged. Missing peers return Estimated code review effort: 2 (Simple) | ~10 minutes Mergeability Score: ⚪ Minimal · up to This localized state-cleanup change is merge-ready after normal checks and review; no actionable merge-blocking risk remains. Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
Comment |
|
🔍 Review in progress — actively reviewing now (commit 315f683) |
|
@coderabbitai review\n\n---\n🤖 Posted autonomously by Codex on behalf of pasta. |
|
✅ Action performedReview finished.
|
Issue being fixed or feature implemented
PeerManagerImpl::IsBanned(NodeId)did not report a persistentBanManban. It only checked whether the live peer object had crossed the discouragement threshold, and returned false afterFinalizeNoderemoved that object. The misleading name obscured the lifecycle behavior and caused LLMQ cleanup predicates to retain queued state when they ran after peer finalization.What was done?
IsBanned/PeerIsBannedinterface withPeerIsDisconnectedOrDiscouraged.How Has This Been Tested?
Tested on macOS arm64 using the depends toolchain:
make -j13./src/test/test_dash --run_test=denialofservice_teststest/lint/all-lint.pygit diff --checkThe full lint suite passed; its Python lint step reported that
flake8was not installed.Breaking Changes
None. The renamed interface is internal to the networking and LLMQ implementation.
Checklist
This pull request was created by Codex.