From 1419490c5632e2c278b89dc8df4df2af080f5502 Mon Sep 17 00:00:00 2001 From: Landon Cox Date: Tue, 21 Apr 2026 12:16:40 -0700 Subject: [PATCH 1/2] fix(guard): remove unused org-ownership functions from backend.rs Remove get_cached_owner_is_org and is_repo_org_owned which are never called outside of tests. These were added for future use but currently trigger -D warnings (dead_code) failures in CI release builds. The cache setter (set_cached_owner_is_org) is retained as it's called during is_repo_private lookups to populate the cache. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../rust-guard/src/labels/backend.rs | 39 ------------------- 1 file changed, 39 deletions(-) diff --git a/guards/github-guard/rust-guard/src/labels/backend.rs b/guards/github-guard/rust-guard/src/labels/backend.rs index c14decfd..d53f0e92 100644 --- a/guards/github-guard/rust-guard/src/labels/backend.rs +++ b/guards/github-guard/rust-guard/src/labels/backend.rs @@ -60,13 +60,6 @@ fn set_cached_repo_visibility(repo_id: &str, is_private: bool) { } } -fn get_cached_owner_is_org(repo_id: &str) -> Option { - repo_owner_type_cache() - .lock() - .ok() - .and_then(|cache| cache.get(repo_id).copied()) -} - fn set_cached_owner_is_org(repo_id: &str, is_org: bool) { if let Ok(mut cache) = repo_owner_type_cache().lock() { cache.insert(repo_id.to_string(), is_org); @@ -271,21 +264,6 @@ pub fn is_repo_private_with_callback( get_cached_repo_visibility(&repo_id) } -/// Check whether a repository is owned by an organization (vs a personal account). -/// This is determined from the `owner.type` field in the search_repositories response, -/// which is cached alongside repo visibility during `is_repo_private` calls. -/// -/// Returns: -/// - `Some(true)` if the owner is an Organization -/// - `Some(false)` if the owner is a User (personal account) -/// - `None` if the owner type could not be determined -pub fn is_repo_org_owned(owner: &str, repo: &str) -> Option { - if owner.is_empty() || repo.is_empty() { - return None; - } - let repo_id = format!("{}/{}", owner, repo); - get_cached_owner_is_org(&repo_id) -} /// Fetch pull request facts used for integrity derivation. pub fn get_pull_request_facts_with_callback( @@ -1309,23 +1287,6 @@ mod tests { }); assert_eq!(extract_owner_is_org(&response, "myorg/myrepo"), None); } - - #[test] - fn test_is_repo_org_owned_uses_cache() { - clear_owner_type_cache_for_tests(); - set_cached_owner_is_org("cached-org/repo", true); - assert_eq!(is_repo_org_owned("cached-org", "repo"), Some(true)); - - set_cached_owner_is_org("cached-user/repo", false); - assert_eq!(is_repo_org_owned("cached-user", "repo"), Some(false)); - clear_owner_type_cache_for_tests(); - } - - #[test] - fn test_is_repo_org_owned_empty_args() { - assert_eq!(is_repo_org_owned("", "repo"), None); - assert_eq!(is_repo_org_owned("owner", ""), None); - } } fn repo_visibility_from_items(value: &Value, repo_id: &str) -> Option { From c75059bb9889e662f7148c3ef6be650cb0a76e15 Mon Sep 17 00:00:00 2001 From: Landon Cox Date: Tue, 21 Apr 2026 14:04:39 -0700 Subject: [PATCH 2/2] fix: also remove orphaned clear_owner_type_cache_for_tests helper Was only called by the test functions removed in the previous commit. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- guards/github-guard/rust-guard/src/labels/backend.rs | 6 ------ 1 file changed, 6 deletions(-) diff --git a/guards/github-guard/rust-guard/src/labels/backend.rs b/guards/github-guard/rust-guard/src/labels/backend.rs index d53f0e92..c9df29eb 100644 --- a/guards/github-guard/rust-guard/src/labels/backend.rs +++ b/guards/github-guard/rust-guard/src/labels/backend.rs @@ -1195,12 +1195,6 @@ mod tests { // --- Owner type (org vs user) tests --- - fn clear_owner_type_cache_for_tests() { - if let Ok(mut cache) = repo_owner_type_cache().lock() { - cache.clear(); - } - } - #[test] fn test_owner_type_from_repo_object_org() { let item = serde_json::json!({