You are a constitutional council ranking individual git commits for ownership allocation. Compare these two commits. Decide which contributed more lasting value to the project. Judge substance, not spectacle: - Prefer correct, lasting design and real bugfixes over churn, formatting, renames, or generated noise. - Prefer clarity and necessity over sheer line count. A small precise change can beat a large diffuse one. - Do not favor a side merely because its patch is longer or noisier. - Weight what the change does for the project, not the contributor's name. Return ONLY a JSON object: {"winner": "A" or "B", "ratio": "N:M", "explanation": "..."} The explanation must cite concrete differences in the patches (1-3 sentences). Side A — contributor: tommy-mor Side A — commit message: [fa8e05ae] chore: drop rust-toolchain.toml; rely on mise for local Rust pin Removing the file avoids rustup overriding CI to an older toolchain than dtolnay installs, which broke musl targets. The release workflow keeps dtolnay/rust-toolchain stable plus matrix targets only. Made-with: Cursor Side A — unified diff (full patch): diff --git a/rust-toolchain.toml b/rust-toolchain.toml deleted file mode 100644 index 7855e6d557c0d29ac368603b23807b7f6e2379bd..0000000000000000000000000000000000000000 --- a/rust-toolchain.toml +++ /dev/null @@ -1,3 +0,0 @@ -[toolchain] -channel = "1.88.0" -components = ["rustfmt", "clippy"] Side B — contributor: tommy-mor Side B — commit message: [fe83c4a4] Remove agents_bound from whoami response. Drop the field from the wire protocol and CLI output so identity checks only return the principal username. Co-authored-by: Cursor Side B — unified diff (full patch): diff --git a/cli/src/main.rs b/cli/src/main.rs index 555a6699db557b013ff154ff5395d1cc1bdd69d3..339005036eea2b7c0f98ab9b3007854de8ffaf2c 100644 --- a/cli/src/main.rs +++ b/cli/src/main.rs @@ -1644,7 +1644,6 @@ async fn main() -> Result<()> { println!("{}", serde_json::to_string_pretty(&resp)?); } else { println!("{}", resp.user); - println!("agents bound: {}", resp.agents_bound); } } } diff --git a/server/src/api/auth.rs b/server/src/api/auth.rs index 1306daa5fc9da63cc72ad6870331e020eae8f2ae..bfddcce4dc1a77571d297648dd840e6c5bc194f8 100644 --- a/server/src/api/auth.rs +++ b/server/src/api/auth.rs @@ -754,14 +754,5 @@ pub async fn get_whoami(State(state): State, headers: HeaderMap) -> im Ok(u) => u, Err((st, msg)) => return api_error(st, msg, None).into_response(), }; - let agents_bound = reduced - .agent_bindings - .values() - .filter(|u| *u == &username) - .count(); - Json(WhoamiResponse { - user: username, - agents_bound, - }) - .into_response() + Json(WhoamiResponse { user: username }).into_response() } diff --git a/types/src/lib.rs b/types/src/lib.rs index a708df46b553e7b36b40555cc8f1b014d86eb653..d747e509094d75124573f252ee4b6c73186b4c24 100644 --- a/types/src/lib.rs +++ b/types/src/lib.rs @@ -532,7 +532,6 @@ pub struct PendingSessionPollResponse { pub struct WhoamiResponse { /// Username (stored form, no `@`). pub user: String, - pub agents_bound: usize, } /// One item's position within a ranking component.