Repository navigation
Benchmark progress: socket-patch scan #575
Replies: 8 comments
|
[agent] Bench: mirror test. The bench/ledger workflow posted this comment. Daily runs add their summaries after it. Generated by Claude Code |
|
[agent] Bench: run 2026-10-03, main
Generated by Claude Code |
|
[agent] Janitor: state drift. The body still lists #579 as an open regression ( Generated by Claude Code |
|
[agent] Bench: run 2026-10-04, main
Generated by Claude Code |
|
[agent] Bench: run 2026-10-05, main
Generated by Claude Code |
|
[agent] Bench: run 2026-10-06, main
Generated by Claude Code |
|
[agent] Bench: run 2026-10-07, main
Generated by Claude Code |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
[agent] Bench: progress log for the
socket-patch scanbenchmark suite (crates/socket-patch-bench,.github/workflows/bench.yml). The daily benchmark steward rewrites this body on every run and posts one comment per run. Machine-readable history is inhistory.jsonon thebench/ledgerbranch. The first run (2026-10-02) was logged in #580 and backfilled there.Last run
9c43dfc9(Cache the macOS vexctl build in the test job, Cache the macOS vexctl build in the CI test job #874). Unchanged since the 10-06 run, so there was no daily A/B.main, plushatch/*from Bench: cover Gradle and Hatch hosted modes #925, measured with the Bench: cover Gradle and Hatch hosted modes #925 bench binary on the same main CLI.gradle/*(also in Bench: cover Gradle and Hatch hosted modes #925) was not re-measured today.compare.hatch/*. Request counts match 10-06 in every scenario.2463257av5 prerelease: scan → vex → vendor workflow, hosted by default #277 →9c43dfc9; the 7-day SHAf6b7fb9epredates the v5 output):npm/hostedand +12.6% to +15.8% onnpm/rescan, over two rounds. Filed as Perf regression: npm/hosted wall +15% (2463257a..9c43dfc9) #993.npm/dry-run(+15.1%) andnpm/public-proxy(+10.1%) move the same way. There is no single culprit: about half lands before045d7ec7and half after, and neither half is significant alone. Callgrind shows +9.4% instructions, from new npm lock passes in VEX discovery (Fix npm rewiring git/URL/file lock entries (#326) #345, Fix npm overrides of git deps being refused (#490) #491, Fix npm VEX attesting a patch the twin lock lacks (#798) #799) and the shared lock cache (Full Gradle support in agent, hosted and vendored modes #646).pip/rescanwas flagged at +12.7%, but the confirmation round gave +8.9% [+2.3, +15.8], under the gate, so it is not confirmed. Watch it.Scoreboard
Day: no daily A/B today (main unchanged). Week: wall ratio vs
2463257a(#277). The median ms/pkg across*/hostedis 0.1553; hatch is excluded until it lands.npm/hosted's 439.7 ms median comes from a noisy 3-sample run (min 331.6 ms). The compare medians of 317–322 ms are the better figure.npm/hostednpm/rescanpnpm/hostedpnpm/rescanyarn-classic/hostedyarn-classic/rescanyarn-berry/hostedyarn-berry/rescanbun/hostedbun/rescanbun-isolated/hostedbun-isolated/rescanvlt/hostedvlt/rescanpip/hostedpip/rescanuv/hosteduv/rescanpylock/hostedpylock/rescanpoetry/hostedpoetry/rescanpipenv/hostedpipenv/rescanpdm/hostedpdm/rescanbundler/hostedbundler/rescancomposer/hostedcomposer/rescancargo/hostedcargo/rescangolang/hostedgolang/rescannuget/hostednuget/rescanmaven/hostedmaven/rescannpm/dry-runnpm/public-proxynpm/latencyhatch/hosted(new, in #925)hatch/rescan(new, in #925)Trends
Median
<pm>/hostedwall time per run, oldest → newest (ms). Runners differ between runs (10-05 and 10-07 were about 1.3-1.4x slower everywhere), so read these as trends only.Open issues and PR
bench/refresh): Bench: cover Gradle and Hatch hosted modes. Today it gainedhatch/hostedandhatch/rescan(5b9ae8ea).state: ready, with a fresh CI run on the new head.Standing slow-systems list
A package manager is slow when its hosted ms/pkg is more than 2x the median across
*/hosted(0.1553 today), or when any of its scenarios takes over 500 ms (npm/latencyis excluded). An issue opens after 3 consecutive runs, capped at 3 new issues per run.utils::poetry_lock::rewrite_poetry_lock_in, 77% (whole lock re-parsed per patch). Callgrind 10-04redirect::vlt(callgrind 10-02)utils::pdm_lock::rewrite_pdm_lock_in, 77% (same per-patch re-parse as Poetry). Callgrind 10-04formats::cargo::CargoLock::parseinsiderewrite_cargo, 79%. Callgrind 10-04PythonLockSession::rewrite39%, mostlyDocumentMutDisplay (whole lock re-serialized per patched dep). Callgrind 10-05PythonLockSession::rewrite38%; vexpypi_locks::extract31%. Callgrind 10-05patch::redirect::pipenv::entries69% inclusive (pipenv::properties45%): Pipfile.lock re-tokenized per patch. Callgrind 10-07. It flips around 2x (10-05 2.4x, 10-06 1.8x)No scenario's peak RSS is above 2x the median (34.2 MiB). Scenarios over 500 ms: vlt/hosted, vlt/rescan (npm/latency is excluded by design). The new hatch/hosted runs at 0.086 ms/pkg (0.55x), so it is not slow.
Coverage-gap backlog
main hasn't changed since 10-06.
gradle(Full Gradle support in agent, hosted and vendored modes #646): covered bygradle/*in Bench: cover Gradle and Hatch hosted modes #925.hatch(Fix uv/Hatch hosted re-pin to a newer patch (#742, #650) #743/Fix Hatch takeover leaving direct-ref permission (#674) #680): covered byhatch/*in Bench: cover Gradle and Hatch hosted modes #925 (locklesshatch.tomlenv pins).[tool.hatch.envs]in pyproject only (no hatch.toml), a hatch project with arequirements.txt(confirmation via requirements), and the uv-installer refusal path.gradle/verification-metadata.xmlrewrite andmavenLocal()m2 gating are all uncovered (Full Gradle support in agent, hosted and vendored modes #646).nodeLinker: pnpm, Fix npm crawler missing Bun, Deno and Yarn 4 stores (#366, #373, #405, #495) #496): uncovered.npm:…::__archiveUrlpins (Fix yarn berry hosted pin leaking npm auth (#404) #465): uncovered.bun_binaryrewriter and codec (Fix Bun/vlt bundled copies left unpatched (#469, #471) #472) are unbenchmarked.redirect_*_bundled_instance_skippedpaths (Fix Bun/vlt bundled copies left unpatched (#469, #471) #472, Fix in-run hosted VEX attesting npm bundled copies (#325) #669).UV_PROJECT_ENVIRONMENT/ PDM venv locations (Fix Python env discovery ignoring uv/PDM env (#502, #525, #528) #540),.egg-info(Fix Python crawler missing .egg-info installs (#447) #452), Poetryenvs.toml(Fix Poetry venv selection ignoring envs.toml (#476, #526) #527) and lock-onlyrequirements.txt(Fix lock-only requirements.txt discovery (#412, #523) #530) are uncovered..bundle/config(Fix Bundler settings resolution order (#483, #507) #532, Gem settings resolution skips Bundler's global config (~/.bundle/config/BUNDLE_USER_CONFIG), so a globalcache_pathorgemfilegets no warning or refusal and VEX attests an unpatched install #577),gems.locked(Fix gem lock readers ignoring gems.locked (#736) #750) and Bundler 4 standalone (Fix gem crawler missing Bundler 4 standalone bundle (#796) #797): uncovered.Stale / redundant scenarios
None yet. Merging hosted/rescan pairs needs 14+ days of history; there are 6 days so far. Candidate:
bun/rescanoverlapsbun-isolated/rescanon the lockfile path.Generated by Claude Code
All reactions