fix: create fresh httpx.Client per R2 presigned PUT to prevent SSLV3_ALERT_BAD_RECORD_MAC
Wall 3: ssl.OP_NO_TICKET was insufficient — first 13 PUTs succeed, 14th fails. The shared httpx.Client context accumulates TLS state across connections even with max_keepalive_connections=0 and OP_NO_TICKET. Moving _make_r2_client() call inside _presigned_put() gives each PUT a completely fresh TLS stack with zero shared state.
TDD: TestT17R2ClientPerPut (2 tests) — 17/17 pass in test_presign_upload.py.
sha256:4206ddcd041718a4d3a21a84c5d992cb624952b57ed5497dcb37c89d9e93cdb9
sha
sha256:e908c32ff0dc4fac8c376444c9feb6d1d9b9ccf3890d2884e702801a2e582dff
snapshot
0 comments
To add a comment, use the Muse CLI:
muse hub commit comment sha256:4206ddcd041718a4d3a21a84c5d992cb624952b57ed5497dcb37c89d9e93cdb9 --body "your comment"
No comments yet. Be the first to start the discussion.