pub fn mask_engine_tag(s: &str) -> String {
if let Some(rest) = strip_case_insensitive_prefix(s, "llm_") {
if !rest.is_empty() && rest.chars().all(|c| c.is_ascii_alphanumeric() || c == '_' || c == '-') {
return "AI-derived".to_string();
}
}
if let Some(rest) = s.strip_prefix("VECTOR_") {
if !rest.is_empty() {
return "Engine signal".to_string();
}
}
if let Some(rest) = s.strip_prefix("DM_") {
if !rest.is_empty() {
return "Policy decision".to_string();
}
}
s.to_string()
}
pub fn mask_fixture_label(s: &str) -> String {
let lower = s.to_ascii_lowercase();
if lower.starts_with("mock_")
|| lower.starts_with("fixture_")
|| lower.starts_with("stub_")
|| lower.starts_with("test_")
|| lower == "mock"
|| lower == "fixture"
|| lower == "stub"
{
return String::new();
}
s.to_string()
}
fn strip_case_insensitive_prefix<'a>(s: &'a str, prefix: &str) -> Option<&'a str> {
if s.len() < prefix.len() {
return None;
}
let head = &s[..prefix.len()];
if head.eq_ignore_ascii_case(prefix) {
Some(&s[prefix.len()..])
} else {
None
}
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn vector_verdict_masks_to_engine_signal() {
assert_eq!(mask_engine_tag("VECTOR_VERDICT"), "Engine signal");
}
#[test]
fn vector_event_masks_to_engine_signal() {
assert_eq!(mask_engine_tag("VECTOR_EVENT"), "Engine signal");
}
#[test]
fn vector_arbitrary_suffix_masks_to_engine_signal() {
assert_eq!(mask_engine_tag("VECTOR_NEW_LABEL_2026"), "Engine signal");
}
#[test]
fn dm_threshold_block_masks_to_policy_decision() {
assert_eq!(mask_engine_tag("DM_THRESHOLD_BLOCK"), "Policy decision");
}
#[test]
fn dm_arbitrary_suffix_masks_to_policy_decision() {
assert_eq!(mask_engine_tag("DM_FUTURE_RULE"), "Policy decision");
}
#[test]
fn llm_anthropic_masks_to_ai_derived() {
assert_eq!(mask_engine_tag("llm_anthropic"), "AI-derived");
assert_eq!(mask_engine_tag("LLM_OPENAI"), "AI-derived");
assert_eq!(mask_engine_tag("Llm_Mistral-7b"), "AI-derived");
}
#[test]
fn allow_passes_through_unchanged() {
assert_eq!(mask_engine_tag("ALLOW"), "ALLOW");
assert_eq!(mask_engine_tag("DENY"), "DENY");
assert_eq!(mask_engine_tag("WARN"), "WARN");
assert_eq!(mask_engine_tag("ALLOWED_NO_FINDINGS"), "ALLOWED_NO_FINDINGS");
assert_eq!(mask_engine_tag("INSUFFICIENT_DATA"), "INSUFFICIENT_DATA");
}
#[test]
fn unrelated_labels_pass_through() {
assert_eq!(mask_engine_tag("manual"), "manual");
assert_eq!(mask_engine_tag("policy-engine-v1"), "policy-engine-v1");
assert_eq!(mask_engine_tag(""), "");
}
#[test]
fn prefix_alone_does_not_mask() {
assert_eq!(mask_engine_tag("VECTOR_"), "VECTOR_");
assert_eq!(mask_engine_tag("DM_"), "DM_");
assert_eq!(mask_engine_tag("llm_"), "llm_");
assert_eq!(mask_engine_tag("VECTOR"), "VECTOR");
assert_eq!(mask_engine_tag("DM"), "DM");
}
#[test]
fn mock_label_hides_entirely() {
assert_eq!(mask_fixture_label("mock_npm_fixture"), "");
assert_eq!(mask_fixture_label("MOCK_npm_fixture"), "");
assert_eq!(mask_fixture_label("mock"), "");
assert_eq!(mask_fixture_label("Mock"), "");
}
#[test]
fn fixture_label_hides_entirely() {
assert_eq!(mask_fixture_label("fixture_stale"), "");
assert_eq!(mask_fixture_label("Fixture_corpus"), "");
assert_eq!(mask_fixture_label("fixture"), "");
}
#[test]
fn stub_label_hides_entirely() {
assert_eq!(mask_fixture_label("stub_value"), "");
assert_eq!(mask_fixture_label("stub"), "");
}
#[test]
fn test_prefix_label_hides_entirely() {
assert_eq!(mask_fixture_label("test_input"), "");
assert_eq!(mask_fixture_label("TEST_seed"), "");
}
#[test]
fn customer_facing_label_passes_through() {
assert_eq!(mask_fixture_label("Cleanstart-curated catalog"), "Cleanstart-curated catalog");
assert_eq!(mask_fixture_label("npm"), "npm");
assert_eq!(mask_fixture_label("policy-decision"), "policy-decision");
assert_eq!(mask_fixture_label(""), "");
}
}