Vals-Smith

/ astral-sh / uv

PUBLIC

Updated 7/19/2026

An extremely fast Python package and project manager, written in Rust.

843 Branches 9737 Commits 469 Contributors 53 Tasks

Key Takeaways

  • Claude Fable 5 leads with 35 of 53 tasks resolved, with GPT-5.6 Sol and Kimi K3 one task behind.
  • GPT-5.6 Terra is the strongest efficiency option at 32 tasks, $0.56 per test, 190 seconds, and 0.73M tokens.
  • GPT 5.5 and Kimi K3 resolve 38 of 53 tasks together even though neither model leads the aggregate leaderboard.

Cost / Test vs. Accuracy

GPT-5.6 Terra resolves 32 tasks for $0.56 per test; GPT-5.6 Sol adds two tasks for $2.26, and Claude Fable 5 adds one more for $7.60.

Latency vs. Accuracy

GPT-5.6 Terra resolves 32 tasks in 190 seconds, compared with 34 in 547 seconds for GPT-5.6 Sol and 35 in 1,050 seconds for Claude Fable 5.

Average token use / test

Input
Output
Reasoning
Cache read
Cache write
Claude Sonnet 5
10.2M
Claude Opus 4.7
6.4M
Claude Opus 4.8
5.0M
Claude Fable 5
4.1M
Gemini 3.5 Flash
3.7M
GLM 5.2 (Fireworks)
3.5M
Claude Haiku 4.5 (Nonthinking)
2.8M
GPT-5.6 Luna
2.8M
Kimi K3
2.7M
Muse Spark 1.1
2.5M
GPT 5.5
2.5M
GPT-5.6 Sol
1.8M
Gemini 3.1 Pro Preview (02/26)
1.4M
Grok 4.5
1.3M
GPT-5.6 Terra
734K

Tasks with failures

PassedFailed
Model1e96343293761029eb5d22c7676637233153cb805949ac4314f7fd1c4fab9d35792a1d66142e96a83f826e928c07bbc01a7c9685c8688435893df5d8dfd76c8e22984950acf0a2af4cba5f99cda803e26af0a961b0298f9b5af85fb615f83b68cf9bbc286d3be9be78c6511b7d261212dadccccdee7a10e4ba1dbf2830ecf385b7af6e266ff9463b7f98013eff3d01dff3fbde
Claude Fable 5
GPT-5.6 Sol
Kimi K3
Claude Opus 4.8
GPT-5.6 Terra
GPT-5.6 Luna
GPT 5.5
Muse Spark 1.1
Grok 4.5
Claude Sonnet 5
GLM 5.2
Claude Opus 4.7
Gemini 3.1 Pro Preview (02/26)
Gemini 3.5 Flash
Claude Haiku 4.5 (Nonthinking)

Task detail

1e96343a7ccc

Issue statement

When a URL that contains embedded credentials (for example https://user:password@example.com/simple/) is stored in a VerbatimUrl, the struct keeps the original, user-provided string in its given field so that the verbatim form can be reproduced later.

The parsed URL held by VerbatimUrl already redacts credentials when it is formatted (its username/password are shown as ****). However, the Debug output of VerbatimUrl prints the given field as-is, so any credentials that were part of the original string are exposed in plain text.

This is a problem because VerbatimUrl values end up in debug/diagnostic output in several places (for example when settings containing index or publish URLs are dumped, or via verbose logging). A URL such as https://user:password@example.com/simple/ is rendered with the parsed url field correctly masked, but the given field still shows the literal password.

Formatting a VerbatimUrl with {:?} must not reveal credentials that were embedded in the original URL. The credentials in the given field should be masked the same way they are for the parsed URL, while URLs without credentials should continue to be shown unchanged.

Hidden tests
diff --git a/crates/uv-pep508/src/verbatim_url.rs b/crates/uv-pep508/src/verbatim_url.rsindex 730ef8a..0bfc9f1 100644--- a/crates/uv-pep508/src/verbatim_url.rs+++ b/crates/uv-pep508/src/verbatim_url.rs@@ -948,4 +948,17 @@ mod tests {             },         );     }++    #[test]+    fn debug_redacts_given_credentials() {+        // The `given` field preserves the URL exactly as the user provided it, including any+        // embedded credentials. The `Debug` output must not leak those credentials.+        let raw = "https://user:s3cr3t-token@example.com/simple/";+        let url = VerbatimUrl::parse_url(raw).unwrap().with_given(raw);+        let debug = format!("{url:?}");+        assert!(+            !debug.contains("s3cr3t-token"),+            "credentials leaked in Debug output: {debug}"+        );+    } } 

Head-to-head

VS

Accuracy

66.04%Δ 1.89%

64.15%

Cost / test

$7.60

$2.26Δ $5.34

Latency

1050s

547sΔ 503s

Cost distribution

$0.00$14.00$28.00

Latency distribution

0s2276s4553s

Input token distribution

09.7M19.4M

Output token distribution

073.7K147.4K

Task outcomes

53 tasks

Both
A only
B only
Neither