GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||||||||||||||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||||||||||||||||||
GeezerVison is showing github.com — Fix Pipenv matrix flake on 503/DNS transport blips by mikolalysenko · Pull Request #419 · SocketDev/socket-patch Conversation
|
| Signature | Legs | Covered by this PR |
|---|---|---|
A hosted case ERRORs with Max retries exceeded ... /patch/pypi/urllib3/1.26.18/... (Caused by ResponseError('too many 503 error responses')) (pip fetching the hosted patch wheel) |
3 (one incident, run 36699362953) | yes |
macOS hosted case ERRORs with NewConnectionError ... [Errno 8] nodename nor servname provided |
1 (job 108949673510) | yes |
A single hosted cell FAILs warmInstallReplacesUpstream plus one lock-only/dry-run check, with lock-only applied=0 and no exception text in the summary table |
7 | only if the CLI log in the case dir carries the request error or 5xx. Not confirmed from the summary tails |
Old Pipenv (2020.11.15, 2021.11.23) resolver SystemExit: 1, root cause truncated |
2 | no |
Agent / agent-oot rescanIdempotent / scanApplied |
2 | no |
Example (job 109834889963):
| 2023.12.1 | direct | hosted | in-dir | ERROR | ...urllib3-1.26.18-py2.py3-none-any.whl (Caused by ResponseError('too many 503 error responses')) ERROR: Couldn't install package ...
scripts/backtest-pipenv.py installs real wheels, both from PyPI and from the public patch service's hosted wheel URLs. Unlike the Bun (retry_network_cell), PDM (NETWORK_RE + Run(retry=True)) and vlt (run_with_retries) harnesses, it has no transport retry. One 503 burst or DNS blip fails the case, so the leg exits 1.
The applied=0 cluster looks like the same outage reaching the CLI's hosted fetch, but the summary table hides the CLI's output. The case logs are not uploaded as an artifact; only summary.* is. The retry recorded here (transportRetries) will show in summary.json whether those rows were transport failures. The other two clusters are left for a follow-up.
retry_transport wraps each case in the scheduler. When a case raises or fails its checks and its error text or one of its *.log* files matches a narrow transport signature, it re-runs the case from a fresh case directory, with at most 3 attempts and a 10s/20s backoff. backtest_case already rmtrees the case dir, and the shared native lock is only cached after pipenv lock succeeds. Signatures: pip's too many 5xx error responses / Max retries exceeded with url / NewConnectionError / ConnectTimeoutError / ReadTimeoutError / DNS (Temporary failure in name resolution, macOS nodename nor servname provided) / connection reset, plus the CLI's own error sending request for url ( / API request failed with status 5xx (the same regex the Bun and vlt harnesses use).
attempts/<case>/<n>/, and the final row records transportRetries, so a retried pass shows up in summary.json.case_dir was factored out so the scheduler and the case runner agree on the path.No assertions were weakened and no tests were removed or moved. The workflow and job names are unchanged.
PipenvTransportRetryTests in scripts/tests/test_backtest_harnesses.py, run by the workflow's "Harness unit tests" step):
python3 -B -m unittest scripts/tests/test_backtest_harnesses.py: 59 tests OK (re-run after merging main at acbce34).ruff check: same 4 errors as on main, none new.main was merged in at acbce34 because Fix Poetry venv discovery to match Poetry (#327, #329) #330 changed python_crawler.rs venv discovery, which the Pipenv matrix exercises. CI is re-running on that head.The tests are unchanged. The Pipenv matrix still runs on PRs that touch its paths and on every push to main.
🤖 Generated with Claude Code
Sorry, something went wrong.
There was an error while loading. Please reload this page.
The Pipenv compatibility matrix downloads real wheels from PyPI and
talks to the public patch service, but unlike the Bun, PDM and vlt
harnesses it had no transport retry. A single PyPI 503 burst ("too
many 503 error responses") turned a whole matrix leg red, and the
run had to be re-run by hand: 15 failed legs across 10 runs in the
last two weeks went green on re-run of the same commit.
Re-run a failed case from a fresh case directory, at most three
attempts, only when its error text or logs show a transport error
(pip giving up on PyPI, connection errors, a CLI request error or a
patch API 5xx). Functional failures are never retried. Earlier
attempts' logs are kept under attempts/ and listed on the row.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
Claude-Session: https://claude.ai/code/session_01TrR5uqMbj9sJcU2Gpm9y9R
|
bugbot run Generated by Claude Code |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_01TrR5uqMbj9sJcU2Gpm9y9R
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Stale Bugbot comment from a previous run.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
bugbot run Generated by Claude Code |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
Stale Bugbot comment from a previous run.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
[burn-down agent] Ready for review on
Generated by Claude Code |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
|
bugbot run Generated by Claude Code |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
✅ Bugbot reviewed your changes and found no new issues!
Comment @cursor review or bugbot run to trigger another review on this PR
Reviewed by Cursor Bugbot for commit acbce34. Configure here.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.