Summary
The upstream CI logs for main report three dead-code warnings in the peer host turn tracker. Evidence from GitHub Actions run 33035362609 (reproduced across runs 33050974141 and 33047041028):
warning: method drain_session_turns is never used --> src/apps/cli/src/peer_host/state.rs:426:19
warning: function session_tree_keys is never used --> src/apps/cli/src/peer_host/state.rs:662:4
warning: function remove_completed_background_sources_for_session is never used --> src/apps/cli/src/peer_host/state.rs:737:4
Cross-checking the crate: PeerTurnTracker::drain_session_turns has zero non-test references, and session_tree_keys / remove_completed_background_sources_for_session are called only by drain_session_turns itself and by tests that exclusively exercise it. Four unit tests exist solely to exercise drain_session_turns.
Root Cause Analysis
- After the upstream transactional session rollback rework, session-level turn cleanup moved into the Agent Runtime rollback path. The old session-scoped drain entry point on
PeerTurnTracker lost all production callers, and its two private helpers plus the four tests that only exercise it became dead weight.
- rustc therefore reports all three symbols as dead code on every full CI run of
main (runs 33035362609 / 33050974141 / 33047041028).
Proposed Fix
Delete the three dead symbols (drain_session_turns, session_tree_keys, remove_completed_background_sources_for_session) together with the four tests that exclusively exercise drain_session_turns:
draining_a_parent_session_after_root_completion_returns_the_active_child_only
draining_a_child_session_releases_its_early_follow_up_reservation
draining_a_sibling_child_does_not_release_another_childs_reservation
explicit_drains_quarantine_removed_turn_ids
Live peer-turn functionality (PeerTurnDrain, interrupt_event_stream, drain_peer_turns, peer_turns_for_cancellation, and the remaining 70+ peer_host tests) is untouched. No #[allow(dead_code)] suppression is involved.
Summary
The upstream CI logs for
mainreport three dead-code warnings in the peer host turn tracker. Evidence from GitHub Actions run 33035362609 (reproduced across runs 33050974141 and 33047041028):warning: method drain_session_turns is never used-->src/apps/cli/src/peer_host/state.rs:426:19warning: function session_tree_keys is never used-->src/apps/cli/src/peer_host/state.rs:662:4warning: function remove_completed_background_sources_for_session is never used-->src/apps/cli/src/peer_host/state.rs:737:4Cross-checking the crate:
PeerTurnTracker::drain_session_turnshas zero non-test references, andsession_tree_keys/remove_completed_background_sources_for_sessionare called only bydrain_session_turnsitself and by tests that exclusively exercise it. Four unit tests exist solely to exercisedrain_session_turns.Root Cause Analysis
PeerTurnTrackerlost all production callers, and its two private helpers plus the four tests that only exercise it became dead weight.main(runs 33035362609 / 33050974141 / 33047041028).Proposed Fix
Delete the three dead symbols (
drain_session_turns,session_tree_keys,remove_completed_background_sources_for_session) together with the four tests that exclusively exercisedrain_session_turns:draining_a_parent_session_after_root_completion_returns_the_active_child_onlydraining_a_child_session_releases_its_early_follow_up_reservationdraining_a_sibling_child_does_not_release_another_childs_reservationexplicit_drains_quarantine_removed_turn_idsLive peer-turn functionality (
PeerTurnDrain,interrupt_event_stream,drain_peer_turns,peer_turns_for_cancellation, and the remaining 70+ peer_host tests) is untouched. No#[allow(dead_code)]suppression is involved.