Task · GCI-0135

Restore deterministic legacy RPC body-read phase proof without weakening deadlines

Description

Loop23 composed main ef164dd157f682e752dab17b7153caf6ab41ee55 failed tests/test_netbound.py::test_legacy_complete_transport_body_read_has_wall_time_bound[rpc]: the call timed out before the fixture observed body-read entry. Host load was high but causation unknown. Existing DNS warm-up proof repair GCI-0131 (start DNS deadline after pool warm-up) is Done and is not reopened. The RPC read closure constructs a real urllib opener before entering the mocked open/body boundary, so phase-isolation setup may consume the short budget. This is an acceptance blocker requiring deterministic process-edge evidence, not permission to increase any deadline or skip the phase.

Acceptance Criteria

Definition of Done

Implementation Plan

Bounded tests/test_netbound.py-only repair packet: first reproduce original RPC/query narrowly and inject deterministic delayed opener construction to establish whether pre-body setup consumes body phase. If proven, isolate mocked opener construction/open at process edge before starting unchanged body clock while preserving real helper/bounded caller and read-entry assertion; add separate never-returning opener/setup phase to prove complete caller fence remains. All timeouts/assertions unchanged, production untouched. Guarded independent review/CodeRabbit before root land; final composed gate and exact CI.

Implementation Notes

Loop23 one implementation attempt, zero review-repair rounds. Candidate delayed-opener negative control failed original body-entry proof, corrected real helper/body and new separate setup proofs retained every original deadline and entry assertion. New setup check fault control detected bypassed fence at unchanged process bound. Security review PASS; CodeRabbit complete zero findings/all one file; root landed e1f854d74564dd9370c0a223b48db7cf3864f7eb. Exact composed just check: 2703 passed, 2 pre-existing skips, 26726 subtests, Tofu37, identifier history clean; CI38300327556 required jobs success. Earlier host-load cause remains unknown, no production behavior change. RSS581.5MiB is pytest process only.

Final Summary

Separated body and opener-setup witnesses without weakening complete caller deadline proof; exact composed gate and required CI passed.

References

View the source file on GitHub