From 8a76fd84dffd19cbd016ef046e681683ce2c7647 Mon Sep 17 00:00:00 2001 From: Pitchfork-and-Torch <297513015+Pitchfork-and-Torch@users.noreply.github.com> Date: Fri, 4 Sep 2026 15:09:20 -0400 Subject: [PATCH] Stop dropping civic-integrity labels on in-network TimelineHome. --- visibility-filtering/rules/golden_corpus.rs | 14 +++++++++++--- visibility-filtering/rules/registry.rs | 2 +- visibility-filtering/rules/tweet_rules.rs | 12 ++++++------ 3 files changed, 18 insertions(+), 10 deletions(-) diff --git a/visibility-filtering/rules/golden_corpus.rs b/visibility-filtering/rules/golden_corpus.rs index cc4da723..56601acb 100644 --- a/visibility-filtering/rules/golden_corpus.rs +++ b/visibility-filtering/rules/golden_corpus.rs @@ -500,12 +500,12 @@ fn tweet_label_cases() -> Vec { expected_decided_by: Some("FosnrAbuseDropRule"), }, Case { - name: "fosnr_civic_integrity_label_drops", + name: "fosnr_civic_integrity_label_allows_in_network", level: TimelineHome, viewer: viewer(VIEWER_ID), candidate: labeled(SafetyLabelType::FOSNR_CIVIC_INTEGRITY), - expected_action: Drop(FilteredReason::PossiblyUndesirable), - expected_decided_by: Some("FosnrCivicIntegrityDropRule"), + expected_action: Allow, + expected_decided_by: None, }, ] } @@ -895,6 +895,14 @@ fn oon_tweet_label_cases() -> Vec { expected_action: Drop(FilteredReason::PossiblyUndesirable), expected_decided_by: Some("DoNotAmplifyOonDropRule"), }, + Case { + name: "fosnr_civic_integrity_label_drops_oon", + level: TimelineHomeRecommendations, + viewer: viewer(VIEWER_ID), + candidate: labeled(SafetyLabelType::FOSNR_CIVIC_INTEGRITY), + expected_action: Drop(FilteredReason::PossiblyUndesirable), + expected_decided_by: Some("FosnrCivicIntegrityDropRule"), + }, Case { name: "malicious_url_label_drops_oon", level: TimelineHomeRecommendations, diff --git a/visibility-filtering/rules/registry.rs b/visibility-filtering/rules/registry.rs index af79ac33..4c4b622c 100644 --- a/visibility-filtering/rules/registry.rs +++ b/visibility-filtering/rules/registry.rs @@ -221,7 +221,6 @@ rust_vf: "FosnrHatefulConductDropRule", "FosnrViolentSpeechDropRule", "FosnrAbuseDropRule", - "FosnrCivicIntegrityDropRule", "NullcastedTweetDropRule", "DropStaleTweetsRule", "DropLegalTakendownPostRule", @@ -249,6 +248,7 @@ rust_vf: "GoreAndViolenceOonDropRule", "NsfwCardImageOonDropRule", "DoNotAmplifyOonDropRule", + "FosnrCivicIntegrityDropRule", "MaliciousUrlOonDropRule", "SpamHighRecallDropRule", "NsfwTextTweetLabelDropRule", diff --git a/visibility-filtering/rules/tweet_rules.rs b/visibility-filtering/rules/tweet_rules.rs index 15db052e..fe7f9b25 100644 --- a/visibility-filtering/rules/tweet_rules.rs +++ b/visibility-filtering/rules/tweet_rules.rs @@ -53,12 +53,6 @@ pub(super) const TWEET_LABEL_DROPS: &[RuleSpec] = &[ action: RuleAction::Drop(FilteredReason::PossiblyUndesirable), exempt_author: true, }, - RuleSpec::Tweet { - name: "FosnrCivicIntegrityDropRule", - when: |tweet| tweet.has_safety_label(SafetyLabelType::FOSNR_CIVIC_INTEGRITY), - action: RuleAction::Drop(FilteredReason::PossiblyUndesirable), - exempt_author: true, - }, ]; pub(super) const NSFW_MEDIA_INTERSTITIALS: &[RuleSpec] = &[ @@ -128,6 +122,12 @@ pub(super) const OON_TWEET_LABEL_DROPS: &[RuleSpec] = &[ action: RuleAction::Drop(FilteredReason::PossiblyUndesirable), exempt_author: true, }, + RuleSpec::Tweet { + name: "FosnrCivicIntegrityDropRule", + when: |tweet| tweet.has_safety_label(SafetyLabelType::FOSNR_CIVIC_INTEGRITY), + action: RuleAction::Drop(FilteredReason::PossiblyUndesirable), + exempt_author: true, + }, RuleSpec::Tweet { name: "MaliciousUrlOonDropRule", when: |tweet| tweet.has_safety_label(SafetyLabelType::MALICIOUS_URL),