x-algorithm changelog (unofficial)

Unofficial, community-maintained project. Not affiliated with, endorsed by, or operated by X Corp. or xAI. Notes are generated from the public git history of xai-org/x-algorithm and may contain mistakes; the upstream diff is the source of truth.

· 47c1bcd · 2,053 files, +363,246/−11,640

Aug 13 release: ranking parameters, visibility filtering, labelers, Phoenix training code

ads blendersartifactsbotmaker rulescandidate hydratorscandidate sourcesconstantsfiltersnumeric tweaksparamsscorersselectorsside effects

The biggest drop in the repo's history (2,053 files, +363,246/−11,640). The upstream README's "August 13th, 2026" notes cover it.

  • Ranking configuration is now public. home-mixer/params/param.rs appears with 189 param! feature-switch defaults, including the action weights that blend predicted engagement probabilities into one score (for example ReplyWeight, ShareViaCopyLinkWeight and the negative ReportWeight/BlockAuthorWeight). See the parameter tracker on this site for how they've changed since.
  • Visibility filtering: visibility-filtering/ decides whether a post is shown, dropped, or shown behind an interstitial.
  • The systems that produce the labels it reads: rule engines (botmaker/, botmaker-rules/, scarecrow/), account-scoring models (agatha/, bdsm/, user-cred-v2/), media models (media-model-proxy/, clip/) and enforcement (abuse-enforcement-service/).
  • Phoenix: the demo model is replaced by the training code plus synthetic data generation.
  • SimClusters (simclusters/) is added as another out-of-network candidate source, alongside Thunder and Phoenix retrieval.
  • New home-mixer filters include ad_adjacent_served_filter, following_retweet_deduplication_filter, self_reply_chain_filter and oon_nsfw_simclusters_filter. See the full analysis for the complete list.
  • docs/BIDIRECTIONAL_BOOST_CHANGE.md is a worked example of a changelog. It walks through the July 2026 rollout of the bidirectional-follow reply boost (A/B tested at 5/10/15/20 from July 10, broadly launched at 20 on July 13, set to 15 on July 24) and says future updates will be published to the repo so readers "should be able to understand what changed by checking the diffs."

Full analysis → Summary: hand-written notes, checked against the diff

Automatic analysis

Config parameters (param! defaults)

Added parameterTypeDefaultFile
AdsBlenderTypeString"partition_organic_low_risk"home-mixer/params/param.rs
AdsTimeGapClampHif642.0home-mixer/params/param.rs
AdsTimeGapClampLof640.5home-mixer/params/param.rs
AdsTimeGapMinOrganicGapu323home-mixer/params/param.rs
AdsTimeGapTSecf644.0home-mixer/params/param.rs
AuthorDiversityDecayf640.5home-mixer/params/param.rs
AuthorDiversityFloorf640.25home-mixer/params/param.rs
AuthorIsControlboolfalsehome-mixer/params/param.rs
AuthorIsTreatmentboolfalsehome-mixer/params/param.rs
AuthorPhoenixMoeEnabledboolfalsehome-mixer/params/param.rs
AuthorServedMetricsAuthorIdsVec<u64>vec![]home-mixer/params/param.rs
BidirectionalFollowDwellWeightBoostf640.0home-mixer/params/param.rs
BidirectionalFollowReplyWeightBoostf6415.0home-mixer/params/param.rs
BlockAuthorWeightf64-31.2home-mixer/params/param.rs
ClickDwellLowFavRatePenaltyAlphaf640.5home-mixer/params/param.rs
ClickDwellLowFavRatePenaltyBaselinef640.01home-mixer/params/param.rs
ClickDwellLowFavRatePenaltyCapf641.0home-mixer/params/param.rs
ClickDwellLowFavRatePenaltyFloorf640.01home-mixer/params/param.rs
ClickWeightf640.4home-mixer/params/param.rs
ColdStartFollowerCapi641000home-mixer/params/param.rs
ColdStartImpressionThresholdu321000home-mixer/params/param.rs
ColdStartMaxPostAgeSecsu6486400home-mixer/params/param.rs
ColdStartSlotMaxu3216home-mixer/params/param.rs
ColdStartSlotMinu3215home-mixer/params/param.rs
ContActiveSecs5mResidualNormWeightf640.0home-mixer/params/param.rs
ContClickDwellTimeWeightf640.0home-mixer/params/param.rs
ContDwellTimeWeightf640.004home-mixer/params/param.rs
DwellRegretAlphaFavoritef641.0home-mixer/params/param.rs
DwellRegretAlphaQuotef641.0home-mixer/params/param.rs
DwellRegretAlphaReplyf641.0home-mixer/params/param.rs
DwellRegretAlphaRetweetf641.0home-mixer/params/param.rs
DwellRegretAlphaSharef641.0home-mixer/params/param.rs
DwellRegretAlphaShareViaCopyLinkf641.0home-mixer/params/param.rs
DwellRegretAlphaShareViaDmf641.0home-mixer/params/param.rs
DwellRegretDwellFloorf641.0home-mixer/params/param.rs
DwellRegretGateBiasf641.033918home-mixer/params/param.rs
DwellRegretGateHysteresisBandf640.0home-mixer/params/param.rs
DwellRegretGateThresholdf64-0.634264home-mixer/params/param.rs
DwellRegretGateWeightsString"seq_len:0.530298,n_fav:-0.082139,n_reply:0.485541,n_rt_quote:0.056561,n_vqv:-0.home-mixer/params/param.rs
DwellRegretNegBlockAuthorf64-8000.0home-mixer/params/param.rs
DwellRegretNegMuteAuthorf64-15000.0home-mixer/params/param.rs
DwellRegretNegNotInterestedf64-10000.0home-mixer/params/param.rs
DwellRegretNegReportf64-60000.0home-mixer/params/param.rs
DwellRegretTemperaturef6410.0home-mixer/params/param.rs
DwellWeightf640.0home-mixer/params/param.rs
EnableAdAdjacentServedFilterboolfalsehome-mixer/params/param.rs
EnableAdsInjectionLoggingbooltruehome-mixer/params/param.rs
EnableAdsSourcebooltruehome-mixer/params/param.rs
EnableAllAuthorFollowHydrationbooltruehome-mixer/params/param.rs
EnableAuthorDiversitybooltruehome-mixer/params/param.rs
EnableAuthorServedMetricsExperimentBucketboolfalsehome-mixer/params/param.rs
EnableBidirectionalFollowHydrationbooltruehome-mixer/params/param.rs
EnableCachedPostsbooltruehome-mixer/params/param.rs
EnableClickDwellLowFavRatePenaltyboolfalsehome-mixer/params/param.rs
EnableContextFeaturesbooltruehome-mixer/params/param.rs
EnableEngagementCountsHydrationbooltruehome-mixer/params/param.rs
EnableEntryIdRandomHashboolfalsehome-mixer/params/param.rs
EnableExplicitEngagementSignalsbooltruehome-mixer/params/param.rs
EnableFeedSurveyboolfalsehome-mixer/params/param.rs
EnableFollowingRepliedUsersFacepileboolfalsehome-mixer/params/param.rs
EnableImplicitEngagementSignalsbooltruehome-mixer/params/param.rs
EnableInferredGenderHydrationbooltruehome-mixer/params/param.rs
EnableInventoryHoldoutboolfalsehome-mixer/params/param.rs
EnableIpFeaturebooltruehome-mixer/params/param.rs
EnableJetfuelFrameMlbCarouselboolfalsehome-mixer/params/param.rs
EnableJetfuelFrameNflboolfalsehome-mixer/params/param.rs
EnableJetfuelFrameNflTimelinePinnedboolfalsehome-mixer/params/param.rs
EnableJetfuelFrameNflTimelineRotationboolfalsehome-mixer/params/param.rs
EnableJetfuelFrameSoccerboolfalsehome-mixer/params/param.rs
EnableJetfuelFramesboolfalsehome-mixer/params/param.rs
EnableMpnScoringboolfalsehome-mixer/params/param.rs
EnableMultiplicativePostUnexploredboolfalsehome-mixer/params/param.rs
EnableMutualFollowJaccardHydrationboolfalsehome-mixer/params/param.rs
EnableNewUserMinEngagementFilterboolfalsehome-mixer/params/param.rs
EnableOonRescoreForInNetworkRepliesRetweetsbooltruehome-mixer/params/param.rs
EnablePhoenixMOESourceboolfalsehome-mixer/params/param.rs
EnablePhoenixRequestCacheSideEffectbooltruehome-mixer/params/param.rs
EnablePhoenixRetrievalFallbackboolfalsehome-mixer/params/param.rs
EnablePhoenixRetrievalStatsExperimentBucketboolfalsehome-mixer/params/param.rs
EnablePhoenixSourcebooltruehome-mixer/params/param.rs
EnablePromptsbooltruehome-mixer/params/param.rs
EnablePublishSeenIdsToKafkabooltruehome-mixer/params/param.rs
EnableQuotedVqvDurationCheckboolfalsehome-mixer/params/param.rs
EnableRankingbooltruehome-mixer/params/param.rs
EnableRetrievalSequenceHydrationbooltruehome-mixer/params/param.rs
EnableScoringSequenceHydrationbooltruehome-mixer/params/param.rs
EnableSemanticIdHydrationbooltruehome-mixer/params/param.rs
EnableServedFilterAllRequestsbooltruehome-mixer/params/param.rs
EnableSimclustersSourcebooltruehome-mixer/params/param.rs
EnableTopicFeedbackContextboolfalsehome-mixer/params/param.rs
EnableTweetMixerSourceboolfalsehome-mixer/params/param.rs
EnableUrtMigrationComponentsbooltruehome-mixer/params/param.rs
EnableUserInstalledAppsHydrationbooltruehome-mixer/params/param.rs
EnableUserInstalledAppsV2boolfalsehome-mixer/params/param.rs
EnableVMRankerbooltruehome-mixer/params/param.rs
EnableViewerColdStartbooltruehome-mixer/params/param.rs
EnableWhoToFollowModulebooltruehome-mixer/params/param.rs
EnableXaiVfClientbooltruehome-mixer/params/param.rs
EngagementSignalsMaxPerTypeusize15home-mixer/params/param.rs
ExcludeServedTweetIdsDurationu3210home-mixer/params/param.rs
ExcludeServedTweetIdsNumberusize100home-mixer/params/param.rs
FavoriteWeightf640.5home-mixer/params/param.rs
FeedSurveyFatigueHoursu3224home-mixer/params/param.rs
FollowAuthorWeightf644.0home-mixer/params/param.rs
FollowingRepliedUsersFacepileMaxPostsi640home-mixer/params/param.rs
FollowingRepliedUsersFacepileMinUsersi640home-mixer/params/param.rs
InventoryHoldoutOriginalsPercentu320home-mixer/params/param.rs
InventoryHoldoutRepliesPercentu320home-mixer/params/param.rs
InventoryHoldoutRetweetsPercentu320home-mixer/params/param.rs
LogSlateContextboolfalsehome-mixer/params/param.rs
LowImpressionsMaxPositionRatiof640.85home-mixer/params/param.rs
MaxPostsToCacheusize750home-mixer/params/param.rs
MaxSeqLengthRetrievalu321024home-mixer/params/param.rs
MaxSeqLengthScoringu321024home-mixer/params/param.rs
MinVideoDurationMsi3210_000home-mixer/params/param.rs
MultiplicativePostUnexploredAlphaf640.0home-mixer/params/param.rs
MuteAuthorWeightf64-58.8home-mixer/params/param.rs
NewUserAgeThresholdSecsu640home-mixer/params/param.rs
NewUserMinEngagementFilterMaxAccountAgeSecsu641800home-mixer/params/param.rs
NewUserMinEngagementFilterMaxResurrectionAgeSecsu641800home-mixer/params/param.rs
NewUserMinEngagementFilterMetricString"fav"home-mixer/params/param.rs
NewUserMinEngagementFilterUseRatioboolfalsehome-mixer/params/param.rs
NewUserMinEngagementThresholdf640.0home-mixer/params/param.rs
NotDwelledWeightf64-0.02home-mixer/params/param.rs
NotInterestedWeightf64-43.2home-mixer/params/param.rs
OonWeightFactorf640.75home-mixer/params/param.rs
OpenLinkWeightf640.2home-mixer/params/param.rs
PhoenixAggregationTypeString"DENSE_WITH_SHORT_DWELL"home-mixer/params/param.rs
PhoenixInferenceClusterIdString"Experiment1Fou"home-mixer/params/param.rs
PhoenixMOEMaxResultsu32200home-mixer/params/param.rs
PhoenixMaxResultsu321000home-mixer/params/param.rs
PhoenixMoeCodivertViewerIsControlboolfalsehome-mixer/params/param.rs
PhoenixMoeCodivertViewerIsTreatmentboolfalsehome-mixer/params/param.rs
PhoenixRankerNewUserHistoryThresholdu640home-mixer/params/param.rs
PhoenixRankerNewUserInferenceClusterIdString"Experiment1Fou"home-mixer/params/param.rs
PhoenixRequestCacheSideEffectTtlSecondsu6410800home-mixer/params/param.rs
PhoenixRetrievalAggregationTypeString"DENSE_WITH_SHORT_DWELL"home-mixer/params/param.rs
PhoenixRetrievalInferenceClusterIdString"Experiment1Fou"home-mixer/params/param.rs
PhoenixRetrievalMOEInferenceClusterIdString"Experiment1Fou"home-mixer/params/param.rs
PhoenixRetrievalNewUserHistoryThresholdu640home-mixer/params/param.rs
PhoenixRetrievalNewUserInferenceClusterIdString"Experiment1Lap7"home-mixer/params/param.rs
PhoenixRetrievalTopicInferenceClusterIdString"Experiment2Fou"home-mixer/params/param.rs
PhoenixScoresResultSizeu322800home-mixer/params/param.rs
PhoenixXdsRetrievalMaxRetriesu320home-mixer/params/param.rs
PhotoExpandWeightf640.05home-mixer/params/param.rs
PostUnexploredWeightf640.02home-mixer/params/param.rs
PostUnexploredWeightInNetworkOnlybooltruehome-mixer/params/param.rs
ProfileClickWeightf640.0home-mixer/params/param.rs
QuoteWeightf645.0home-mixer/params/param.rs
QuotedClickWeightf640.05home-mixer/params/param.rs
QuotedVqvWeightf640.0home-mixer/params/param.rs
ReplyWeightf645.0home-mixer/params/param.rs
ReportWeightf64-234.0home-mixer/params/param.rs
RetweetWeightf641.0home-mixer/params/param.rs
ShadowTrafficDefaultPercentf640.3home-mixer/params/param.rs
ShadowTrafficPhoenixClusterRatesVec<String>vec!["Experiment6Fou:1.5".to_string()]home-mixer/params/param.rs
ShadowTrafficPhoenixClustersListVec<String>vec![]home-mixer/params/param.rs
ShadowTrafficPhoenixRetrievalClustersListVec<String>vec![]home-mixer/params/param.rs
ShareViaCopyLinkWeightf6420.0home-mixer/params/param.rs
ShareViaDmWeightf645.0home-mixer/params/param.rs
ShareWeightf642.0home-mixer/params/param.rs
SidServerEndpointString"xds:home-mixer/params/param.rs
ThunderAlgorithmString"default"home-mixer/params/param.rs
ThunderClusterIdString"amp"home-mixer/params/param.rs
ThunderMaxResultsu321200home-mixer/params/param.rs
TopicFilteringIdString"PostBased50Pct"home-mixer/params/param.rs
TopicFilteringOverridesString""home-mixer/params/param.rs
TopicOonWeightFactorf640.5home-mixer/params/param.rs
TweetMixerMaxResultsu32800home-mixer/params/param.rs
UasSourceDataTypeString"NEW_UUA_ARROW"home-mixer/params/param.rs
UseEngagementCounterViewCountForImpressionBoostbooltruehome-mixer/params/param.rs
UseXdsForUasbooltruehome-mixer/params/param.rs
UserActionsClusterIdString"Fou"home-mixer/params/param.rs
VMRankerClusterIdString"Experiment3"home-mixer/params/param.rs
VMRankerDppMaxSelectedRanku32150home-mixer/params/param.rs
VMRankerDppThetaf640.65home-mixer/params/param.rs
VMRankerEnableFallbackboolfalsehome-mixer/params/param.rs
VMRankerSendHeadWeightsboolfalsehome-mixer/params/param.rs
VMRankerValueModelIdString"dpp"home-mixer/params/param.rs
ValueModelModeString"weighted"home-mixer/params/param.rs
VideoOpenWeightf640.05home-mixer/params/param.rs
VqvWeightf640.05home-mixer/params/param.rs
WhoToFollowFatigueHoursu3230home-mixer/params/param.rs
TestBoostf641.0home-mixer/util/author_rules.rs
TestCapf6410.0home-mixer/util/author_rules.rs

Pipeline components

KindChangeFile
Scoreraddedbdsm/runtime/gpu_scorer.py
Scoreraddedbdsm/runtime/manhattan_scorer.py
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/AgathaSpamProduction__ApplySearchTopTweetLabel.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/BBQDuplicateTextProd.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/BBQDuplicateTextRepliesProd.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/FollowFromActorWithPinnedLowQualityOrBadUrl.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/GroxTweetProcessor.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/LQ_Tweets_With_LQ_URL_Verdict_At_Mention_To_NonFollower.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/LQ_Tweets_With_LQ_URL_Verdict_At_Mention_To_NonFollower_v2.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/NSFW_Card_Image_Media_To_URL_Verdict.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/NSFW_Card_Image_URL_to_Tweet_Verdict.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/NSFW_Grok_Generated_Image_To_URL_Verdict.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/NSFW_Grok_Share.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/NsfwTweetMediaProcessor.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/PinnedLowQualityOrBadUrl.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/ProductionAgatha__FilterOutOrganicNotifications.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/Tweet_Search_Blacklist_RTF_All_UNSAFE_URL_Sources.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/Tweet_Spam_High_Recall_RTF_All_Bad_URL_Sources.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/ViolenceAndGore_ImageModel_MTT.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/nsfw_user_write_user_label.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/rtf_tweets_on_unsafe_verdict.bot
Botmaker ruleaddedbotmaker-rules/scarecrow/bot/tweet_rtf_or_unrtf_on_bad_verdict.bot
Filteraddedbotmaker/src/java/com/twitter/botmaker/function/collection/Filter.java
Filteraddedgrox/flows/mm_emb/task_filter.py
Filteraddedgrox/flows/ptos/task_filter.py
Filteraddedgrox/flows/ptos/task_safety_ptos_min_traction_dedupe_filter.py
Scoreraddedgrox/flows/reply_spam/classifier_simple_reply_scorer.py
Filteraddedgrox/flows/upa/task_filter.py
Ads blenderaddedhome-mixer/ads/following_ad_blender.rs
Ads blenderaddedhome-mixer/ads/time_gap_blender.rs
Candidate hydratoraddedhome-mixer/candidate_hydrators/bidirectional_follow_hydrator.rs
Candidate hydratoraddedhome-mixer/candidate_hydrators/broadcast_liveness_hydrator.rs
Candidate hydratoraddedhome-mixer/candidate_hydrators/conversation_gap_ancestor_hydrator.rs
Candidate hydratoraddedhome-mixer/candidate_hydrators/media_info_hydrator.rs
Candidate hydratoraddedhome-mixer/candidate_hydrators/semantic_id_hydrator.rs
Candidate hydratoraddedhome-mixer/candidate_hydrators/topic_feedback_context_hydrator.rs
Filteraddedhome-mixer/filters/ad_adjacent_served_filter.rs
Filteraddedhome-mixer/filters/following_retweet_deduplication_filter.rs
Filteraddedhome-mixer/filters/invalid_conversation_module_filter.rs
Filteraddedhome-mixer/filters/inventory_holdout_filter.rs
Filteraddedhome-mixer/filters/new_user_min_engagement_filter.rs
Filteraddedhome-mixer/filters/oon_nsfw_simclusters_filter.rs
Filteraddedhome-mixer/filters/oon_retweet_reply_filter.rs
Filteraddedhome-mixer/filters/popular_topics_author_dedup_filter.rs
Filteraddedhome-mixer/filters/push_to_home_dedup_filter.rs
Filteraddedhome-mixer/filters/result_size_filter.rs
Filteraddedhome-mixer/filters/self_reply_chain_filter.rs
Candidate hydratoraddedhome-mixer/query_hydrators/explicit_engagement_signals_query_hydrator.rs
Candidate hydratoraddedhome-mixer/query_hydrators/implicit_engagement_signals_query_hydrator.rs
Candidate hydratoraddedhome-mixer/query_hydrators/user_installed_apps_query_hydrator.rs
Scoreraddedhome-mixer/scorers/author_cold_start.rs
Scoreraddedhome-mixer/scorers/phoenix_scores_ranking_scorer.rs
Scoreraddedhome-mixer/scorers/value_model_gate.rs
Selectoraddedhome-mixer/selectors/following_blender_selector.rs
Selectoraddedhome-mixer/selectors/passthrough_selector.rs
Side effectaddedhome-mixer/side_effects/author_served_metrics_side_effect.rs
Side effectaddedhome-mixer/side_effects/debug_side_effect.rs
Side effectaddedhome-mixer/side_effects/served_ad_history_cache_side_effect.rs
Candidate sourceaddedhome-mixer/sources/feed_survey_source.rs
Candidate sourceaddedhome-mixer/sources/following_night_owl_source.rs
Candidate sourceaddedhome-mixer/sources/jetfuel_frame_source.rs
Candidate sourceaddedhome-mixer/sources/popular_topics_source.rs
Candidate sourceaddedhome-mixer/sources/reverse_chron_posts_source.rs
Candidate sourceaddedhome-mixer/sources/seed_candidates_source.rs
Candidate sourceaddedhome-mixer/sources/simclusters_source.rs
Filteraddedphoenix/xrex/data/recsys/safety_filter.py
Candidate sourceaddedsimclusters/simclusters_v2/candidate_source/SimClustersANNCandidateSource.scala
Candidate sourceaddedsimclusters/simclusters_v2/candidate_source/SimClustersANNWrapperCandidateSource.scala
Candidate sourceaddedsimclusters/simclustersann/candidate_source/SimClustersANNCandidateSource.scala
Filteraddedsimclusters/simclustersann/filters/GetTweetCandidatesResponseStatsFilter.scala
Filteraddedsimclusters/simclustersann/filters/SimClustersAnnVariantFilter.scala
Candidate hydratoraddedvisibility-filtering/hydration/exclusive_content_hydrator.rs
Candidate hydratoraddedvisibility-filtering/hydration/gizmoduck_hydrator.rs
Candidate hydratoraddedvisibility-filtering/hydration/safety_label_hydrator.rs
Candidate hydratoraddedvisibility-filtering/hydration/socialgraph_hydrator.rs
Candidate hydratoraddedvisibility-filtering/hydration/tes_hydrator.rs
Candidate hydratoraddedvisibility-filtering/hydration/viewer_hydrator.rs
Candidate hydratorremovedhome-mixer/candidate_hydrators/ads_brand_safety_hydrator.rs
Candidate hydratorremovedhome-mixer/candidate_hydrators/has_media_hydrator.rs
Candidate hydratorremovedhome-mixer/candidate_hydrators/video_duration_candidate_hydrator.rs
Filterremovedhome-mixer/filters/new_user_topic_ids_filter.rs
Candidate hydratorremovedhome-mixer/query_hydrators/inferred_grok_topics_query_hydrator.rs
Candidate hydratorremovedhome-mixer/query_hydrators/user_action_seq_query_hydrator.rs
Candidate hydratorremovedhome-mixer/query_hydrators/user_features_query_hydrator.rs
Scorerremovedhome-mixer/scorers/author_diversity_scorer.rs
Scorerremovedhome-mixer/scorers/oon_scorer.rs
Scorerremovedhome-mixer/scorers/weighted_scorer.rs
Side effectremovedhome-mixer/side_effects/cache_request_info_side_effect.rs
Filterrenamed from task_filtersgrox/flows/reply_spam/task_filter.py
Side effectrenamed from for_you_response_stats_side_effecthome-mixer/side_effects/response_stats_side_effect.rs
Candidate hydratormodifiedcandidate-pipeline/query_hydrator.rs
Ads blendermodifiedhome-mixer/ads/partition_organic_blender.rs
Ads blendermodifiedhome-mixer/ads/safe_gap_blender.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/ads_brand_safety_vf_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/core_data_candidate_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/engagement_counts_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/filtered_topics_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/following_replied_users_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/gizmoduck_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/language_code_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/mutual_follow_jaccard_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/quote_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/subscription_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/tweet_type_metrics_hydrator.rs
Candidate hydratormodifiedhome-mixer/candidate_hydrators/vf_candidate_hydrator.rs
Filtermodifiedhome-mixer/filters/author_socialgraph_filter.rs
Filtermodifiedhome-mixer/filters/dedup_conversation_filter.rs
Filtermodifiedhome-mixer/filters/drop_duplicates_filter.rs
Filtermodifiedhome-mixer/filters/ineligible_subscription_filter.rs
Filtermodifiedhome-mixer/filters/muted_keyword_filter.rs
Filtermodifiedhome-mixer/filters/previously_seen_posts_backup_filter.rs
Filtermodifiedhome-mixer/filters/previously_seen_posts_filter.rs
Filtermodifiedhome-mixer/filters/previously_served_posts_filter.rs
Filtermodifiedhome-mixer/filters/retweet_deduplication_filter.rs
Filtermodifiedhome-mixer/filters/topic_ids_filter.rs
Filtermodifiedhome-mixer/filters/vf_filter.rs
Filtermodifiedhome-mixer/filters/video_filter.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/followed_grok_topics_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/followed_starter_packs_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/followed_user_ids_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/impressed_posts_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/impression_bloom_filter_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/retrieval_sequence_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/scoring_sequence_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/served_history_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/user_demographics_query_hydrator.rs
Candidate hydratormodifiedhome-mixer/query_hydrators/user_inferred_gender_query_hydrator.rs
Scorermodifiedhome-mixer/scorers/phoenix_scorer.rs
Scorermodifiedhome-mixer/scorers/ranking_scorer.rs
Scorermodifiedhome-mixer/scorers/vm_ranker.rs
Selectormodifiedhome-mixer/selectors/blender_selector.rs
Side effectmodifiedhome-mixer/side_effects/ads_injection_logging_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/client_events_kafka_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/mutual_follow_stats_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/phoenix_experiments_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/phoenix_request_cache_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/publish_seen_ids_to_kafka_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/redis_post_candidate_cache_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/reranking_kafka_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/scored_stats_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/served_candidates_kafka_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/truncate_served_history_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/update_past_request_timestamps_side_effect.rs
Side effectmodifiedhome-mixer/side_effects/update_served_history_side_effect.rs
Candidate sourcemodifiedhome-mixer/sources/ads_source.rs
Candidate sourcemodifiedhome-mixer/sources/phoenix_moe_source.rs
Candidate sourcemodifiedhome-mixer/sources/phoenix_source.rs
Candidate sourcemodifiedhome-mixer/sources/phoenix_topics_source.rs
Candidate sourcemodifiedhome-mixer/sources/prompts_source.rs
Candidate sourcemodifiedhome-mixer/sources/push_to_home_source.rs
Candidate sourcemodifiedhome-mixer/sources/scored_posts_source.rs
Candidate sourcemodifiedhome-mixer/sources/thunder_source.rs
Candidate sourcemodifiedhome-mixer/sources/tweet_mixer_source.rs
Candidate sourcemodifiedhome-mixer/sources/who_to_follow_source.rs

Changed constants & literal values

NameOldNewFile
DEFAULT_SYSTEM_PROMPT"""Represent this X post for retrieving relevant X posts by content, topic, sentiment, or interest groups"grox/flows/mm_emb/embedder.py
FOLLOWER_COUNT_THRESHOLD_FOR_REPLY_RANKING""15000grox/flows/reply_spam/task_filter.py
IN_NETWORK_EVENTS_DEST"""kafka.phoenix-bootstrap.example.invalid"thunder/kafka_utils.rs
IN_NETWORK_EVENTS_TOPIC"""innetwork_post"thunder/kafka_utils.rs
TWEET_EVENT_DEST"""kafka.tweet-events.example.invalid"thunder/kafka_utils.rs
TWEET_EVENT_TOPIC"""tweet_events"thunder/kafka_utils.rs
Old lineNew lineFile
.with_max_batch_size(150),.with_max_batch_size(50),home-mixer/candidate_pipeline/phoenix_candidate_pipeline.rs
let semaphore = Arc::new(Semaphore::new(3));let semaphore = Arc::new(Semaphore::new(1));thunder/kafka/tweet_events_listener_v2.rs

Modules touched

ModuleFiles addedModifiedRemovedLines +Lines −
phoenix/301211+117,520−4,361
botmaker/49200+61,527−0
simclusters/23200+35,797−0
home-mixer/1128715+28,683−2,249
thunder/1380+29,940−293
grox/1402533+12,788−4,313
visibility-filtering/6300+15,861−0
abuse-enforcement-service/3100+12,622−0
bdsm/4510+9,897−0
phoenix-rankall/3500+7,652−0
agatha/9000+5,629−0
media-model-proxy/9800+4,167−0
under-the-hood/2600+4,138−0
scarecrow/3200+3,231−0
visibility-filtering-client/700+2,999−0
clip/2000+2,856−0
phoenix-rankall-strato/1700+1,699−0
botmaker-rules/7300+1,578−0
vm-ranker/1000+1,302−0
user-cred-v2/900+805−0
safety-label-user-agg/300+617−0
candidate-pipeline/190+395−192
(repo root)/011+354−232
docs/100+495−0
adult-content/800+482−0
pnsfwmedia/100+212−0

Files (2,053)

Show file list
PathLinesNote
D.gitignore+0/−1
MREADME.md+354/−231
Aabuse-enforcement-service/server/src/main.rs+104/−0
Aabuse-enforcement-service/service-lib/rules/enforcement_post.yaml+82/−0
Aabuse-enforcement-service/service-lib/rules/enforcement_user.yaml+210/−0
Aabuse-enforcement-service/service-lib/src/ais_client.rs+595/−0
Aabuse-enforcement-service/service-lib/src/allowlist.rs+172/−0
Aabuse-enforcement-service/service-lib/src/api_doc.rs+212/−0
Aabuse-enforcement-service/service-lib/src/auth.rs+227/−0
Aabuse-enforcement-service/service-lib/src/bin/validate_rules_yaml.rs+33/−0
Aabuse-enforcement-service/service-lib/src/config.rs+336/−0
Aabuse-enforcement-service/service-lib/src/decision.rs+38/−0
Aabuse-enforcement-service/service-lib/src/dedup_cache.rs+791/−0
Aabuse-enforcement-service/service-lib/src/entities.rs+62/−0
Aabuse-enforcement-service/service-lib/src/facts.rs+1008/−0
Aabuse-enforcement-service/service-lib/src/fixtures/mock_rules_post.yaml+14/−0
Aabuse-enforcement-service/service-lib/src/fixtures/mock_rules_user.yaml+24/−0
Aabuse-enforcement-service/service-lib/src/gizmoduck.rs+175/−0
Aabuse-enforcement-service/service-lib/src/gizmoduck_labels.rs+6/−0
Aabuse-enforcement-service/service-lib/src/growthbook.rs+473/−0
Aabuse-enforcement-service/service-lib/src/growthbook_writer.rs+257/−0
Aabuse-enforcement-service/service-lib/src/lib.rs+1955/−0
Aabuse-enforcement-service/service-lib/src/limiter.rs+145/−0
Aabuse-enforcement-service/service-lib/src/manhattan.rs+103/−0
Aabuse-enforcement-service/service-lib/src/metrics.rs+445/−0
Aabuse-enforcement-service/service-lib/src/rules.rs+1202/−0
Aabuse-enforcement-service/service-lib/src/service.rs+2598/−0
Aabuse-enforcement-service/service-lib/src/sliding_window.rs+672/−0
Aabuse-enforcement-service/service-lib/src/strato.rs+283/−0
Aabuse-enforcement-service/service-lib/src/test_user.rs+75/−0
Aabuse-enforcement-service/types/src/allowlist.rs+315/−0
Aabuse-enforcement-service/types/src/config.rs+8/−0
Aabuse-enforcement-service/types/src/lib.rs+2/−0
Aadult-content/BUILD+11/−0
Aadult-content/calibration.py+97/−0
Aadult-content/config.py+44/−0
Aadult-content/dataset_utils.py+66/−0
Aadult-content/scripts/BUILD+28/−0
Aadult-content/scripts/calibrate_model_scores.py+54/−0
Aadult-content/scripts/train_model.py+97/−0
Aadult-content/training.py+85/−0
Aagatha/hub/agatha/BUILD+13/−0
Aagatha/hub/agatha/Bijections.scala+10/−0
Aagatha/hub/agatha/builder/BUILD+31/−0
Aagatha/hub/agatha/builder/Builder.scala+65/−0
Aagatha/hub/agatha/job/AgathaJobTemplates.scala+180/−0
Aagatha/hub/agatha/job/BUILD.bazel+27/−0
Aagatha/hub/agatha/labels/BUILD+38/−0
Aagatha/hub/agatha/labels/LabelGenerator.scala+10/−0
Aagatha/hub/agatha/labels/LabelManager.scala+21/−0
Aagatha/hub/agatha/predict/Aggregators.scala+54/−0
Aagatha/hub/agatha/predict/BUILD+14/−0
Aagatha/hub/agatha/predict/Predict.scala+84/−0
Aagatha/hub/agatha/predict/package.scala+7/−0
Aagatha/hub/agatha/thrift/BUILD+14/−0
Aagatha/hub/agatha/thrift/agatha.thrift+52/−0
Aagatha/hub/agatha/thrift/featureSource.thrift+29/−0
Aagatha/hub/agatha/util/BUILD+10/−0
Aagatha/hub/agatha/util/CrossedPMIStatToModelledFeature.scala+31/−0
Aagatha/hub/pmi/BUILD+11/−0
Aagatha/hub/pmi/ModelCommon.scala+85/−0
Aagatha/hub/pmi/PMI.scala+353/−0
Aagatha/hub/pmi/PMISetExtractors.scala+106/−0
Aagatha/hub/pmi/PMITypes.scala+115/−0
Aagatha/hub/pmi/PreProcessors.scala+50/−0
Aagatha/hub/pmi/examples/BUILD.bazel+33/−0
Aagatha/hub/pmi/examples/TopFollowPmi.scala+128/−0
Aagatha/hub/pmi/math/BUILD+7/−0
Aagatha/hub/pmi/math/Math.scala+103/−0
Aagatha/hub/pmi/math/aggregators/BUILD+10/−0
Aagatha/hub/pmi/math/aggregators/Moments.scala+160/−0
Aagatha/hub/pmi/math/aggregators/Percentiles.scala+30/−0
Aagatha/scalding/AgathaFeaturesPredictJob.scala+88/−0
Aagatha/scalding/NSFWBuildJob.scala+57/−0
Aagatha/scalding/RateBasedBuildJob.scala+60/−0
Aagatha/scalding/SpagathaBuildJob.scala+56/−0
Aagatha/scalding/blink/BlinkScoreJobTemplate.scala+338/−0
Aagatha/scalding/blink/ManhattanImportInjection.scala+14/−0
Aagatha/scalding/data/ActiveUserFeaturesJob.scala+64/−0
Aagatha/scalding/data/BUILD.bazel+112/−0
Aagatha/scalding/data/DataLoader.scala+15/−0
Aagatha/scalding/data/DataLoaderUtil.scala+53/−0
Aagatha/scalding/data/FeatureExtractionTemplate.scala+57/−0
Aagatha/scalding/data/loaders/AbuseReportGraphDataLoader.scala+12/−0
Aagatha/scalding/data/loaders/BUILD.bazel+287/−0
Aagatha/scalding/data/loaders/BlockGraphDataLoader.scala+12/−0
Aagatha/scalding/data/loaders/CombinedUserDataLoader.scala+192/−0
Aagatha/scalding/data/loaders/ContributorGraphDataLoader.scala+12/−0
Aagatha/scalding/data/loaders/DirectMessageGraphDataLoader.scala+34/−0
Aagatha/scalding/data/loaders/FavGraphDataLoader.scala+41/−0
Aagatha/scalding/data/loaders/FavedTweetsDataLoader.scala+38/−0
Aagatha/scalding/data/loaders/FollowGraphDataLoader.scala+12/−0
Aagatha/scalding/data/loaders/HashtagTweetsDataLoader.scala+64/−0
Aagatha/scalding/data/loaders/LegitTattleGraphDataLoader.scala+39/−0
Aagatha/scalding/data/loaders/ListFollowerGraphDataLoader.scala+13/−0
Aagatha/scalding/data/loaders/ListMembershipGraphDataLoader.scala+13/−0
Aagatha/scalding/data/loaders/MostRecentEdgeSourceDataLoader.scala+49/−0
Aagatha/scalding/data/loaders/MuteGraphDataLoader.scala+12/−0
Aagatha/scalding/data/loaders/NonLegitTattlesNoBlocksGraphDataLoader.scala+41/−0
Aagatha/scalding/data/loaders/RetweetedTweetsDataLoader.scala+43/−0
Aagatha/scalding/data/loaders/TweetAuthorEngagementGraph.scala+83/−0
Aagatha/scalding/labels/AgathaLabelManager.scala+21/−0
Aagatha/scalding/labels/BUILD.bazel+43/−0
Aagatha/scalding/labels/LabelExtractionTemplate.scala+72/−0
Aagatha/scalding/labels/LabelUtil.scala+62/−0
Aagatha/scalding/labels/blocks_per_fav/BUILD.bazel+55/−0
Aagatha/scalding/labels/blocks_per_fav/BlocksPerFav.scala+34/−0
Aagatha/scalding/labels/favs/BUILD.bazel+33/−0
Aagatha/scalding/labels/favs/Favs.scala+69/−0
Aagatha/scalding/labels/nsfw/BUILD.bazel+79/−0
Aagatha/scalding/labels/nsfw/NSFWLabel.scala+15/−0
Aagatha/scalding/labels/nsfw/NSFWLabelExtraction.scala+50/−0
Aagatha/scalding/labels/nsfw/NsfwAgathaLabelManager.scala+8/−0
Aagatha/scalding/labels/rate_based_labels/BUILD.bazel+89/−0
Aagatha/scalding/labels/rate_based_labels/RateBasedLabels.scala+230/−0
Aagatha/scalding/labels/rate_based_labels/RateBasedLabelsExtraction.scala+23/−0
Aagatha/scalding/labels/reports_per_fav/BUILD.bazel+57/−0
Aagatha/scalding/labels/reports_per_fav/ReportsPerFav.scala+38/−0
Aagatha/scalding/labels/spam_reports_per_fav/BUILD.bazel+57/−0
Aagatha/scalding/labels/spam_reports_per_fav/SpamReportsPerFav.scala+35/−0
Aagatha/scalding/labels/spam_suspended/BUILD.bazel+74/−0
Aagatha/scalding/labels/spam_suspended/SpamSuspendedLabel.scala+20/−0
Aagatha/scalding/labels/spam_suspended/SpamSuspendedLabelExtraction.scala+35/−0
Aagatha/scalding/quantile/BUILD.bazel+69/−0
Aagatha/scalding/quantile/QuantileFeatureExport.scala+210/−0
Aagatha/scalding/util/BUILD.bazel+38/−0
Aagatha/scalding/util/FeaturesToLabels.scala+120/−0
Aagatha/scalding/util/GetActiveUsers.scala+27/−0
Aagatha/scalding/util/GetSuspendedUsers.scala+28/−0
Aagatha/scalding/util/PredictionsToDataSetPipe.scala+123/−0
Aagatha/thrift/agatha.thrift+23/−0
Abdsm/README.md+114/−0
Abdsm/proto/abuse_inference.proto+130/−0
Abdsm/pyproject.toml+44/−0
Rbdsm/runtime/__init__.py+0/−0sync metadata
Abdsm/runtime/action_names.json+198/−0
Abdsm/runtime/batch_prefetcher.py+1029/−0
Abdsm/runtime/feature_norm.py+70/−0
Abdsm/runtime/gizmoduck_age.py+90/−0
Abdsm/runtime/gpu_scorer.py+250/−0
Abdsm/runtime/heads.py+130/−0
Abdsm/runtime/labels.py+24/−0
Abdsm/runtime/load_backbone.py+39/−0
Abdsm/runtime/login_starter_pack_counter.py+110/−0
Abdsm/runtime/loss.py+50/−0
Abdsm/runtime/manhattan_arrow_adapter.py+255/−0
Abdsm/runtime/manhattan_scorer.py+85/−0
Abdsm/runtime/metrics.py+14/−0
Abdsm/runtime/model.py+334/−0
Abdsm/runtime/pipeline_security.py+41/−0
Abdsm/runtime/proto_gen/__init__.py+0/−0
Abdsm/runtime/proto_gen/abuse_inference_pb2.py+40/−0
Abdsm/runtime/score_layout.py+70/−0
Abdsm/runtime/score_results_sink_focal.py+1640/−0
Abdsm/runtime/sequence_cache.py+274/−0
Abdsm/runtime/sink_policy.yaml+35/−0
Abdsm/runtime/starter_pack_follows.py+103/−0
Abdsm/runtime/task_heads.py+46/−0
Abdsm/rust/abuse-v3-features/Cargo.toml+30/−0
Abdsm/rust/abuse-v3-features/src/derived.rs+149/−0
Abdsm/rust/abuse-v3-features/src/lib.rs+646/−0
Abdsm/rust/accumulator/Cargo.lock+1953/−0
Abdsm/rust/accumulator/Cargo.toml+24/−0
Abdsm/rust/accumulator/Dockerfile+31/−0
Abdsm/rust/accumulator/src/main.rs+776/−0
Abdsm/rust/accumulator/src/trace.rs+379/−0
Abdsm/tests/conftest.py+7/−0
Abdsm/tests/test_feature_norm.py+35/−0
Abdsm/tests/test_heads.py+33/−0
Abdsm/tests/test_labels.py+50/−0
Abdsm/tests/test_loss.py+56/−0
Abdsm/tests/test_pipeline_security.py+26/−0
Abdsm/tests/test_score_layout.py+74/−0
Abdsm/tests/test_sink_policy.py+45/−0
Abdsm/tests/test_train_head.py+82/−0
Abdsm/training/__init__.py+0/−0
Abdsm/training/train_head.py+286/−0
Abotmaker-rules/scarecrow/bot/AgathaSpamProduction__ApplySearchTopTweetLabel.bot+31/−0
Abotmaker-rules/scarecrow/bot/BBQDuplicateTextProd.bot+77/−0
Abotmaker-rules/scarecrow/bot/BBQDuplicateTextRepliesProd.bot+62/−0
Abotmaker-rules/scarecrow/bot/FollowFromActorWithPinnedLowQualityOrBadUrl.bot+50/−0
Abotmaker-rules/scarecrow/bot/GroxTweetProcessor.bot+40/−0
Abotmaker-rules/scarecrow/bot/LQ_Tweets_With_LQ_URL_Verdict_At_Mention_To_NonFollower.bot+54/−0
Abotmaker-rules/scarecrow/bot/LQ_Tweets_With_LQ_URL_Verdict_At_Mention_To_NonFollower_v2.bot+22/−0
Abotmaker-rules/scarecrow/bot/NSFW_Card_Image_Media_To_URL_Verdict.bot+33/−0
Abotmaker-rules/scarecrow/bot/NSFW_Card_Image_URL_to_Tweet_Verdict.bot+39/−0
Abotmaker-rules/scarecrow/bot/NSFW_Grok_Generated_Image_To_URL_Verdict.bot+31/−0
Abotmaker-rules/scarecrow/bot/NSFW_Grok_Share.bot+25/−0
Abotmaker-rules/scarecrow/bot/NsfwTweetMediaProcessor.bot+43/−0
Abotmaker-rules/scarecrow/bot/PinnedLowQualityOrBadUrl.bot+45/−0
Abotmaker-rules/scarecrow/bot/ProductionAgatha__FilterOutOrganicNotifications.bot+39/−0
Abotmaker-rules/scarecrow/bot/Tweet_Search_Blacklist_RTF_All_UNSAFE_URL_Sources.bot+64/−0
Abotmaker-rules/scarecrow/bot/Tweet_Spam_High_Recall_RTF_All_Bad_URL_Sources.bot+51/−0
Abotmaker-rules/scarecrow/bot/ViolenceAndGore_ImageModel_MTT.bot+107/−0
Abotmaker-rules/scarecrow/bot/nsfw_user_write_user_label.bot+14/−0
Abotmaker-rules/scarecrow/bot/rtf_tweets_on_unsafe_verdict.bot+38/−0
Abotmaker-rules/scarecrow/bot/tweet_rtf_or_unrtf_on_bad_verdict.bot+41/−0
Abotmaker-rules/scarecrow/derived-feature/AddToHLLForDataCenter.df+12/−0
Abotmaker-rules/scarecrow/derived-feature/AddTwitterSupportGuanoNote.df+33/−0
Abotmaker-rules/scarecrow/derived-feature/ApplyNsfwUserLabel.df+54/−0
Abotmaker-rules/scarecrow/derived-feature/ApplyNsfwUserLabelOrCreateReport.df+93/−0
Abotmaker-rules/scarecrow/derived-feature/BQ_to_BM_namespace.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/Coalesce.df+6/−0
Abotmaker-rules/scarecrow/derived-feature/CreateRemediationFatigueNamespace.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/DayInSecs.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/EmptyLongList.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/EmptyStringSet.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/FollowerCountFromGizmoduck.df+7/−0
Abotmaker-rules/scarecrow/derived-feature/GetDataCenterName.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/GetExpandedUrlsForTweet.df+22/−0
Abotmaker-rules/scarecrow/derived-feature/GetGrokShareIdsFromGrokMediaId.df+24/−0
Abotmaker-rules/scarecrow/derived-feature/GetHLLCountFromDataCenters.df+13/−0
Abotmaker-rules/scarecrow/derived-feature/GetTweetAuthorId.df+7/−0
Abotmaker-rules/scarecrow/derived-feature/GetTweetCardOrEmptyObject.df+34/−0
Abotmaker-rules/scarecrow/derived-feature/GetTweetFullText.df+10/−0
Abotmaker-rules/scarecrow/derived-feature/GetTweetLabelInfoFromURL.df+30/−0
Abotmaker-rules/scarecrow/derived-feature/GetTweetOrNull.df+6/−0
Abotmaker-rules/scarecrow/derived-feature/GetUrlResolutionChains.df+12/−0
Abotmaker-rules/scarecrow/derived-feature/GetUserLabels.df+17/−0
Abotmaker-rules/scarecrow/derived-feature/GetUserPinnedTweetIds.df+12/−0
Abotmaker-rules/scarecrow/derived-feature/GetVerifiedFollowers.df+12/−0
Abotmaker-rules/scarecrow/derived-feature/HasBigQuerytoBotmakerLabel.df+5/−0
Abotmaker-rules/scarecrow/derived-feature/HasLabel.df+5/−0
Abotmaker-rules/scarecrow/derived-feature/HasRemediationFatigueLabel.df+7/−0
Abotmaker-rules/scarecrow/derived-feature/HighPageRankThreshold.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/IsHighPageRankUser.df+30/−0
Abotmaker-rules/scarecrow/derived-feature/IsHighPrecisionNsfw.df+10/−0
Abotmaker-rules/scarecrow/derived-feature/IsHighPrecisionNsfwNewModelLogic.df+7/−0
Abotmaker-rules/scarecrow/derived-feature/IsHighRecallNsfw.df+10/−0
Abotmaker-rules/scarecrow/derived-feature/IsHighRecallNsfwNewModelLogic.df+12/−0
Abotmaker-rules/scarecrow/derived-feature/IsNearPerfectNsfw.df+10/−0
Abotmaker-rules/scarecrow/derived-feature/IsNearPerfectNsfwNewModelLogic.df+7/−0
Abotmaker-rules/scarecrow/derived-feature/IsTweetFound.df+7/−0
Abotmaker-rules/scarecrow/derived-feature/IsUserGoldVerified.df+13/−0
Abotmaker-rules/scarecrow/derived-feature/IsUserGrayVerified.df+13/−0
Abotmaker-rules/scarecrow/derived-feature/OneDayInMillis.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/OneDayInSecs.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/OneMinuteInSecs.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/OneWeekInSecs.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/RULE_ID.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/RemediationFatigueLabel.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/SetBigQuerytoBotmakerLabel.df+5/−0
Abotmaker-rules/scarecrow/derived-feature/SetRemediationFatigueLabel.df+14/−0
Abotmaker-rules/scarecrow/derived-feature/SetTweetRtfApplyLabelWithExpirationMs.df+22/−0
Abotmaker-rules/scarecrow/derived-feature/SevenDaysInSecs.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/SpammerIdString.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/StringIdListToLongList.df+5/−0
Abotmaker-rules/scarecrow/derived-feature/SubLongList.df+16/−0
Abotmaker-rules/scarecrow/derived-feature/ThirtyDaysInSecs.df+4/−0
Abotmaker-rules/scarecrow/derived-feature/TwitterSafetyUserId.df+6/−0
Abotmaker/BUILD.bazel+0/−0
Abotmaker/CONFIG.ini+3/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/BUILD+17/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/LocalAggregator.scala+228/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/MoniodAggregator.scala+132/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/BloomFilterAggregator.scala+67/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/ComboAggregator.scala+101/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/CounterAggregator.scala+34/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/HllAggregator.scala+64/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/LocalAggregatorConfigs.scala+112/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/QTreeAggregator.scala+63/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/SetAggregator.scala+50/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/SimpleStatsAggregator.scala+60/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/config/SketchMapAggregator.scala+83/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/function/BloomFilterFunctions.scala+47/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/function/HllFunctions.scala+46/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/function/QTreeFunctions.scala+68/−0
Abotmaker/botmaker_aggregator/src/main/scala/com/twitter/botmaker/runtime/function/SketchMapFunctions.scala+69/−0
Abotmaker/botmaker_app/src/main/resources/BUILD+3/−0
Abotmaker/botmaker_app/src/main/resources/logback.xml+111/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/client/AppClient.scala+469/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/client/BUILD.bazel+10/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/client/BotMakerAppClient.scala+237/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/module/AppBotMaker.scala+85/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/module/BUILD+25/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/module/BotMakerApp.scala+153/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/module/BotMakerAppController.scala+252/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/module/BotMakerAppModule.scala+215/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/module/InjectionNamedConstants.scala+16/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/publisher/function/Arguments.scala+50/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/publisher/function/WriteToConfigBus.scala+76/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/publisher/function/WriteToFile.scala+81/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/runtime/BUILD.bazel+17/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/runtime/StdBotMakerAppRuntime.scala+40/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/server/BUILD.bazel+68/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/server/BotMakerAppServer.scala+80/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/server/BotMakerAppThriftController.scala+12/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/util/BUILD+9/−0
Abotmaker/botmaker_app/src/main/scala/com/twitter/botmaker/app/util/JsonUtils.scala+53/−0
Abotmaker/botmaker_common/src/main/scala/com/twitter/botmaker/common/BUILD+11/−0
Abotmaker/botmaker_common/src/main/scala/com/twitter/botmaker/common/UserAgent.scala+87/−0
Abotmaker/botmaker_common/src/main/scala/com/twitter/botmaker/common/UserAgentProperties.scala+81/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/BUILD.bazel+16/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/EventBusContainer.scala+12/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/EventPublisher.scala+170/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/EventSubscriber.scala+129/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/KafkaConsumer.scala+143/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/KafkaProducer.scala+247/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/KafkaSerdes.scala+121/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/TwitterKafkaUtil.scala+28/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/config/EventBusConfigs.scala+7/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/config/EventPublisherConfigs.scala+59/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/config/EventSubscriberConfigs.scala+118/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/config/KafkaConsumerConfigs.scala+114/−0
Abotmaker/botmaker_eventbus/src/main/scala/com/twitter/botmaker/runtime/config/KafkaProducerConfigs.scala+86/−0
Abotmaker/botmaker_http/src/main/scala/com/twitter/botmaker/BUILD+14/−0
Abotmaker/botmaker_http/src/main/scala/com/twitter/botmaker/runtime/HttpEndpoint.scala+190/−0
Abotmaker/botmaker_http/src/main/scala/com/twitter/botmaker/runtime/config/HttpEndpointConfigs.scala+61/−0
Abotmaker/botmaker_loader/src/main/scala/com/twitter/botmaker/loader/BUILD+11/−0
Abotmaker/botmaker_loader/src/main/scala/com/twitter/botmaker/loader/BotmakerRulesConfigbusLoader.scala+46/−0
Abotmaker/botmaker_loader/src/main/scala/com/twitter/botmaker/loader/ConfigbusLoader.scala+134/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/BUILD+15/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/runtime/ManhattanClient.scala+459/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/runtime/ManhattanContainer.scala+3/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/runtime/ManhattanEndpoint.scala+70/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/runtime/config/ManhattanClientConfigs.scala+76/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/runtime/config/ManhattanConfigs.scala+3/−0
Abotmaker/botmaker_manhattan/src/main/scala/com/twitter/botmaker/runtime/config/ManhattanEndpointConfigs.scala+49/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/BUILD+13/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/MemCachedClient.scala+158/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/MemCachedContainer.scala+3/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/MemCachedCounter.scala+260/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/MemCachedEndpoint.scala+72/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/config/MemCachedClientConfigs.scala+74/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/config/MemCachedConfigs.scala+6/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/config/MemCachedCounterConfigs.scala+72/−0
Abotmaker/botmaker_memcached/src/main/scala/com/twitter/botmaker/runtime/config/MemCachedEndpointConfigs.scala+52/−0
Abotmaker/botmaker_package/src/main/scala/com/twitter/botmaker/botmaker_package/BUILD.bazel+11/−0
Abotmaker/botmaker_package/src/main/scala/com/twitter/botmaker/botmaker_package/BotMakerPackageDetails.scala+49/−0
Abotmaker/botmaker_thrift/src/main/scala/com/twitter/botmaker/BUILD+19/−0
Abotmaker/botmaker_thrift/src/main/scala/com/twitter/botmaker/runtime/ScribePublisher.scala+118/−0
Abotmaker/botmaker_thrift/src/main/scala/com/twitter/botmaker/runtime/ThriftEndpoint.scala+339/−0
Abotmaker/botmaker_thrift/src/main/scala/com/twitter/botmaker/runtime/config/ScribePublisherConfigs.scala+83/−0
Abotmaker/botmaker_thrift/src/main/scala/com/twitter/botmaker/runtime/config/ThriftEndpointConfigs.scala+114/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/BUILD+68/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfArkoseVerifyEvent.java+31/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceBaseEvent.java+24/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceCoHostJoinEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceCoHostLeaveEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceEndEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceListenerJoinEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceListenerLeaveEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpacePublishEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceReplayToggleOffEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceScheduledEvent.java+33/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceSpeakerPublishEvent.java+35/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceTopicsUpdatedEvent.java+37/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceTranscriptionEvent.java+33/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceUserBannedEvent.java+53/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAudioSpaceUserUnbannedEvent.java+50/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAuthCompletion.java+498/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfAuthTransactionLog.java+74/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfBirdwatchStatusChangeEvent.java+44/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfBookmarkEvent.java+27/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfBotSmyterLabel.java+30/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfBouncerEvent.java+115/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCastleEvent.java+33/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfClientApplicationEvent.java+42/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfClientEventTcoResolution.java+42/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityEvent.java+30/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityJoinEvent.java+30/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityJoinRequestsAutoEnrollData.java+30/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityPinEntryData.java+38/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityRuleCreateData.java+35/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityRuleRemoveData.java+28/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityRuleUpdateData.java+45/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityTweetHideData.java+28/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityTweetReportData.java+35/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfCommunityUnpinEntryData.java+39/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfDMConversationReport.java+32/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfDMReport.java+39/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfDestroyStatus.java+36/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfEmailChange.java+38/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfEventBusFanoutEvent.java+285/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfExploreClientEvent.java+93/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfFavorite.java+41/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfFilteredAuthRequest.java+49/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfGrokShareEvent.java+35/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfHealthGenericEntityEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfHealthSideEffectEvent.java+255/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfHmlSignupPredictionEvent.java+25/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfInAppReport.java+331/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfListReport.java+28/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfLoginChallengeAction.java+57/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfMediaUpdate.java+184/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfNsfwFlag.java+56/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfPeriscopePublishBroadcastEvent.java+59/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfPinkStealthResolutionsNotification.java+157/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfPromotedTweet.java+74/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfPublishedTicket.java+59/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfReportAsSpam.java+35/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfRtpCaseUpdateEvent.java+446/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsBlockGraphEvent.java+64/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsFollowGraphEvent.java+69/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListCreateRequestResult.java+48/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListMemberAddRequestResult.java+49/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListMemberRemoveRequestResult.java+49/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListRemoveRequestResult.java+47/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListSubscribeRequestResult.java+49/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListUnsubscribeRequestResult.java+49/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsListUpdateRequestResult.java+58/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsMuteGraphEvent.java+64/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSgsWriteRequestResult.java+53/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSoftFollowEvent.java+37/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfSqrlEvent.java+29/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfThornInfo.java+97/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTitleUpdatedEvent.java+27/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTweet.java+318/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTweetCreate.java+65/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTweetDelete.java+40/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTweetReport.java+106/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTweetSafetyLabelEvent.java+82/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTweetUndelete.java+59/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfTwitterContext.java+62/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUnbookmarkEvent.java+27/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUnfavorite.java+41/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUnifiedPostAnnotationsEvent.java+73/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUrlEvent.java+157/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUrlReputationChange.java+45/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUserCreate.java+57/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUserModification.java+74/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfUserReport.java+85/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfXchatMessageCreateEvent.java+53/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/FeaturesOfXchatMessageEvent.java+111/−0
Abotmaker/scarecrow_features/src/main/java/com/twitter/scarecrow/features/SqrlEventThriftSimpleJSONProtocol.java+33/−0
Abotmaker/src/antlr/com/twitter/botmaker/BUILD+7/−0
Abotmaker/src/antlr/com/twitter/botmaker/CONFIG.ini+3/−0
Abotmaker/src/antlr/com/twitter/botmaker/antlr/BotMaker.g+248/−0
Abotmaker/src/java/com/twitter/botmaker/ASTNode.java+462/−0
Abotmaker/src/java/com/twitter/botmaker/BUILD+16/−0
Abotmaker/src/java/com/twitter/botmaker/CONFIG.ini+3/−0
Abotmaker/src/java/com/twitter/botmaker/Context.java+378/−0
Abotmaker/src/java/com/twitter/botmaker/ContextBuilder.java+107/−0
Abotmaker/src/java/com/twitter/botmaker/Extractor.java+174/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/ActionLevel.java+12/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/BotMakerDoc.java+286/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/BotMakerFunction.java+28/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/ClassCache.java+79/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Compiler.java+1617/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/CompilerBuilder.java+261/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/CompilerContext.java+478/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/CompilerScope.java+140/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/CompilerUnit.java+299/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/DerivedFeature.java+168/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/DerivedFeatureProvider.java+91/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Fingerprint.java+91/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/InterruptibleCharSequence.java+48/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Mock.java+163/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Parameter.java+95/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Parser.java+244/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/RegexCache.java+162/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Serializer.java+1903/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/Timeout.java+6/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/UsageUnit.java+103/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/BadFetchedDataException.java+10/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/ContextCancelledException.java+9/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/FunctionFailure.java+58/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/MissingFeatureException.java+9/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/ParseFailure.java+11/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/RegexTimeoutException.java+10/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/RuntimeFailure.java+17/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/exceptions/SemanticCheckFailure.java+12/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/FieldMetaData.java+18/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/FieldValueMetaData.java+51/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/ListMetaData.java+28/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/MapMetaData.java+31/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/PrimitiveValueMetaData.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/SetMetaData.java+28/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/TBaseStructMetaData.java+28/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/TEnumMetaData.java+26/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/TFieldRequirementType.java+12/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/TType.java+24/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/ThriftEnumMetaData.java+25/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/thrift/ThriftStructMetaData.java+27/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/OutputKey.java+19/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/Pair.java+56/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/StackFrame.java+32/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/StructTuple.java+80/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/Symbol.java+30/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/Try.java+34/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/TryWithStack.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/Tuple.java+111/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/Tuple3.java+61/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/tuples/Tuple4.java+68/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/FieldAccessibleType.java+16/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/StructTupleType.java+201/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/Symbol.java+34/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/ThriftEnumType.java+21/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/ThriftStructType.java+838/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/ThriftType.java+464/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/TupleType.java+85/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/Type.java+692/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/TypeCompiler.java+114/−0
Abotmaker/src/java/com/twitter/botmaker/compiler/types/TypeContext.java+16/−0
Abotmaker/src/java/com/twitter/botmaker/config/ConfigContainer.java+27/−0
Abotmaker/src/java/com/twitter/botmaker/config/ConfigNode.java+59/−0
Abotmaker/src/java/com/twitter/botmaker/function/Block.java+157/−0
Abotmaker/src/java/com/twitter/botmaker/function/Constant.java+181/−0
Abotmaker/src/java/com/twitter/botmaker/function/DerivedFeatureCall.java+238/−0
Abotmaker/src/java/com/twitter/botmaker/function/Do.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/DoAsync.java+63/−0
Abotmaker/src/java/com/twitter/botmaker/function/DoSequential.java+89/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode.java+79/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode0.java+72/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode1.java+74/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode1O1.java+110/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode1O3.java+119/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode2.java+77/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode2O1.java+108/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode3.java+79/−0
Abotmaker/src/java/com/twitter/botmaker/function/FunctionNode6O5.java+169/−0
Abotmaker/src/java/com/twitter/botmaker/function/GeneralNode.java+68/−0
Abotmaker/src/java/com/twitter/botmaker/function/IfThenElse.java+121/−0
Abotmaker/src/java/com/twitter/botmaker/function/Val.java+68/−0
Abotmaker/src/java/com/twitter/botmaker/function/Variable.java+56/−0
Abotmaker/src/java/com/twitter/botmaker/function/With.java+149/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseAnd.java+36/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseInvert.java+53/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseOp.java+39/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseOr.java+41/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseSignedLeftShift.java+36/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseSignedRightShift.java+36/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseUnsignedRightShift.java+36/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/BitwiseXor.java+36/−0
Abotmaker/src/java/com/twitter/botmaker/function/bitwise/ReverseBits.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Any.java+175/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Contains.java+92/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Copy.java+181/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Count.java+73/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Distinct.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ElementAtIndex.java+61/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Filter.java+218/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/First.java+51/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/FirstN.java+59/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Flatten.java+63/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Fold.java+190/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ForEach.java+183/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/IndexAccessor.java+160/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/IsCollection.java+56/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Last.java+51/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/LastN.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ListAppend.java+73/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ListConcat.java+64/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ListJoin.java+69/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ListOperator.java+57/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ListPrepend.java+73/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapContains.java+63/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapEntries.java+62/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapGet.java+76/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapKeys.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapMerge.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapOperator.java+72/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapRemove.java+78/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/MapValues.java+53/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/PairFirst.java+53/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/PairSecond.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Range.java+83/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/SetDiff.java+61/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/SetIntersect.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/SetOperator.java+57/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/SetSymmetricDiff.java+61/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/SetUnion.java+62/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Slice.java+105/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/Sort.java+171/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ToStructTuple.java+76/−0
Abotmaker/src/java/com/twitter/botmaker/function/collection/ToTuple.java+53/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/Cast.java+163/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/FromBase64.java+53/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/FromHex.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/StringFromBase64.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/StringToBase64.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ThriftFromDict.java+83/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToBase64.java+57/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToBinary.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToDouble.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToHex.java+50/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToList.java+60/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToLong.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToMap.java+83/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToPair.java+95/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToScript.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToSet.java+60/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToString.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/conversion/ToThrift.java+78/−0
Abotmaker/src/java/com/twitter/botmaker/function/datetime/CurrentTimeMs.java+48/−0
Abotmaker/src/java/com/twitter/botmaker/function/datetime/StringToTimeMs.java+84/−0
Abotmaker/src/java/com/twitter/botmaker/function/datetime/TimeMsToString.java+87/−0
Abotmaker/src/java/com/twitter/botmaker/function/exception/Assert.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/function/exception/Try.java+128/−0
Abotmaker/src/java/com/twitter/botmaker/function/exception/TryOrElse.java+107/−0
Abotmaker/src/java/com/twitter/botmaker/function/exception/TryWithStack.java+139/−0
Abotmaker/src/java/com/twitter/botmaker/function/feature/Exists.java+64/−0
Abotmaker/src/java/com/twitter/botmaker/function/feature/GetOrElse.java+96/−0
Abotmaker/src/java/com/twitter/botmaker/function/feature/InputFeature.java+61/−0
Abotmaker/src/java/com/twitter/botmaker/function/feature/OutputFeature.java+61/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/BatchedOr.java+149/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/Conjunction.java+158/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/Disjunction.java+160/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/Equals.java+48/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/GreaterThan.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/GreaterThanOrEquals.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/LessThan.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/LessThanOrEquals.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/logic/NotEquals.java+63/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Abs.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/ArithmeticOperation.java+194/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Ceil.java+48/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Exp.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Floor.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Ln.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Max.java+62/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Min.java+62/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Mod.java+58/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Negate.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Pow.java+59/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Random.java+46/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Round.java+50/−0
Abotmaker/src/java/com/twitter/botmaker/function/math/Sqrt.java+57/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/DebugOutput.java+60/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/FarmFingerprintAsLong.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/GetMurmur3Hashes.java+56/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/GetStackTrace.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/InstanceOf.java+53/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/Nop.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/Print.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/SHA256.java+51/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/TestRun.java+89/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/TypeName.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/misc/UUID.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/Chr.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/Concat.java+56/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/CosineDist.java+63/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/EndsWith.java+54/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/HammingDist.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/IndexOf.java+71/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/Join.java+60/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/LastIndexOf.java+71/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/Quotes.java+51/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/RegexExtract.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/RegexMatch.java+47/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/Replace.java+70/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/SplitString.java+66/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/StartsWith.java+65/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/StrLen.java+51/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/StringFormat.java+55/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/ToLower.java+49/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/ToUpper.java+50/−0
Abotmaker/src/java/com/twitter/botmaker/function/string/Trim.java+52/−0
Abotmaker/src/java/com/twitter/botmaker/function/thrift/FieldAccessor.java+123/−0
Abotmaker/src/java/com/twitter/botmaker/function/thrift/ThriftOperator.java+140/−0
Abotmaker/src/java/com/twitter/botmaker/function/thrift/ThriftStructOperator.java+139/−0
Abotmaker/src/java/com/twitter/botmaker/runtime/Runtime.java+5/−0
Abotmaker/src/java/com/twitter/botmaker/util/TriConsumer.java+18/−0
Abotmaker/src/scala/com/twitter/botmaker/BUILD+23/−0
Abotmaker/src/scala/com/twitter/botmaker/CONFIG.ini+3/−0
Abotmaker/src/scala/com/twitter/botmaker/FunctionUnit.scala+403/−0
Abotmaker/src/scala/com/twitter/botmaker/FunctionUnitGen.scala+12644/−0
Abotmaker/src/scala/com/twitter/botmaker/common/AsyncRateLimiter.scala+131/−0
Abotmaker/src/scala/com/twitter/botmaker/common/BatchDispatcher.scala+133/−0
Abotmaker/src/scala/com/twitter/botmaker/common/FeatureDataConverter.scala+568/−0
Abotmaker/src/scala/com/twitter/botmaker/common/RatelimitedLogger.scala+115/−0
Abotmaker/src/scala/com/twitter/botmaker/common/TypedFeatureDataInjection.scala+452/−0
Abotmaker/src/scala/com/twitter/botmaker/common/Using.scala+160/−0
Abotmaker/src/scala/com/twitter/botmaker/compiler/types/ScalaType.scala+251/−0
Abotmaker/src/scala/com/twitter/botmaker/loader/Loader.scala+70/−0
Abotmaker/src/scala/com/twitter/botmaker/loader/Scheduler.scala+141/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/ActionRateLimiter.scala+32/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/BotMaker.scala+1072/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/ConfigContainer.scala+206/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/DerivedFeatureContainer.scala+116/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/EventContext.scala+146/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/EventEvaluator.scala+32/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/EventOutput.scala+462/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/EventProcessor.scala+18/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/ExceptionCategory.scala+9/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/ExprCache.scala+107/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/ExtractorVisitorUnit.scala+11/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/FailureCollector.scala+23/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/InputProvider.scala+96/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/OutputCollector.scala+27/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/Package.scala+26/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/ProfilingCollector.scala+24/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/RuleAst.scala+411/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/RuleAstExtractorForAnalysis.scala+91/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/RuleContainer.scala+349/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/RuleContext.scala+160/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/RuleEvaluator.scala+299/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/RuleResult.scala+7/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/StatCollector.scala+23/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/config/SystemConfigs.scala+133/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/CacheGet.scala+90/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/CacheSet.scala+56/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/FeatureDataMapToInputFeatures.scala+31/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/GetFunctionOrFeatureDirectUsages.scala+39/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/GetRule.scala+25/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/InputFeatures.scala+108/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/IsFunctionOrFeatureUsed.scala+29/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/function/ResponseCodes.scala+422/−0
Abotmaker/src/scala/com/twitter/botmaker/rule/sys/PreEventOutput.scala+119/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/BatchQueue.scala+474/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/LocalCounter.scala+457/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/LocalStore.scala+375/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/LogWriter.scala+172/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/RegexOptions.scala+153/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/RuntimeDebugger.scala+73/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/RuntimeFailures.scala+3/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/ScheduledEvent.scala+70/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/ServiceContainer.scala+55/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/TwitterRuntime.scala+144/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/BatchQueueConfigs.scala+112/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/EventTypeConfigs.scala+91/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/LocalCounterConfigs.scala+72/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/LocalStoreConfigs.scala+72/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/LogWriterConfigs.scala+43/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/PackageConfigs.scala+57/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/RegexConfigs.scala+54/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/ScheduledEventConfigs.scala+57/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/ServiceConfigs.scala+312/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/StructTupleTypeConfigs.scala+18/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/TeamConfigs.scala+43/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/config/ThriftTypeConfigs.scala+18/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/GetHelp.scala+33/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/IncrementStat.scala+42/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/IncrementStatEventwise.scala+37/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/IncrementStats.scala+33/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/IncrementStatsEventwise.scala+39/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/RPrint.scala+50/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/SampleStat.scala+27/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/SampleStats.scala+33/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/SetStat.scala+24/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/SetStats.scala+33/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/ToFeatureDataMap.scala+72/−0
Abotmaker/src/scala/com/twitter/botmaker/runtime/function/TryAcquire.scala+35/−0
Abotmaker/src/scala/com/twitter/botmaker/util/CodeAnalysisUtil.scala+78/−0
Abotmaker/src/scala/com/twitter/botmaker/util/FileUtil.scala+53/−0
Abotmaker/src/scala/com/twitter/botmaker/util/ThriftUtil.scala+392/−0
Abotmaker/src/thrift/com/twitter/botmaker/app/BUILD+27/−0
Abotmaker/src/thrift/com/twitter/botmaker/app/app.thrift+189/−0
Abotmaker/src/thrift/com/twitter/botmaker/rule/BUILD+20/−0
Abotmaker/src/thrift/com/twitter/botmaker/rule/rule.thrift+53/−0
Abotmaker/src/thrift/com/twitter/botmaker/runtime/BUILD+20/−0
Abotmaker/src/thrift/com/twitter/botmaker/runtime/runtime.thrift+344/−0
Mcandidate-pipeline/candidate_pipeline.rs+62/−129
Mcandidate-pipeline/filter.rs+12/−8
Mcandidate-pipeline/hydrator.rs+23/−16
Mcandidate-pipeline/lib.rs+6/−0
Acandidate-pipeline/pipeline_summary.rs+229/−0
Mcandidate-pipeline/query_hydrator.rs+9/−9
Mcandidate-pipeline/scorer.rs+9/−13
Mcandidate-pipeline/selector.rs+32/−8
Mcandidate-pipeline/side_effect.rs+0/−3comments only
Mcandidate-pipeline/source.rs+13/−6
Aclip/BUILD+115/−0
Aclip/config.py+35/−0
Aclip/datasets/language_image_dataset.py+82/−0
Aclip/datasets/media_cache_dataset.py+117/−0
Aclip/keras_model.py+155/−0
Aclip/model.py+359/−0
Aclip/modules.py+81/−0
Aclip/notebooks/BUILD+9/−0
Aclip/notebooks/create_bq_language_image_dataset.ipynb+225/−0
Aclip/notebooks/create_gcs_language_image_dataset.ipynb+210/−0
Aclip/notebooks/gcs_lifecycle_config.json+9/−0
Aclip/notebooks/media_embeddings_dataflow.ipynb+636/−0
Aclip/scripts/BUILD+24/−0
Aclip/scripts/export_dbv2_image_model.py+64/−0
Aclip/scripts/export_keras_models.py+74/−0
Aclip/training.py+242/−0
Aclip/utils/data_utils.py+284/−0
Aclip/utils/io_utils.py+52/−0
Aclip/utils/model_utils.py+31/−0
Aclip/utils/train_utils.py+52/−0
Adocs/BIDIRECTIONAL_BOOST_CHANGE.md+495/−0
Dgrox/classifiers/content/banger_initial_screen.py+0/−160
Dgrox/classifiers/content/classifier.py+0/−98
Dgrox/classifiers/content/post_safety_screen_deluxe.py+0/−92
Dgrox/classifiers/content/safety_ptos.py+0/−288
Dgrox/classifiers/content/spam.py+0/−104
Agrox/config/config.py+268/−0
Agrox/core/__init__.py+0/−0
Agrox/core/clients/nightowl_client.py+81/−0
Agrox/core/constants.py+2/−0
Rgrox/core/data_loaders/asr_processor.py+63/−76
Agrox/core/data_loaders/data_types.py+849/−0
Agrox/core/data_loaders/descendant_hydrator.py+41/−0
Agrox/core/data_loaders/descendant_id_provider.py+27/−0
Rgrox/core/data_loaders/kafka_loader.py+95/−100
Agrox/core/data_loaders/media_loader.py+583/−0
Agrox/core/data_loaders/media_processor.py+208/−0
Rgrox/core/data_loaders/message_queue_loader.py+4/−7
Agrox/core/data_loaders/post_mapper.py+387/−0
Rgrox/core/data_loaders/strato_loader.py+15/−33
Agrox/core/dispatcher.py+209/−0
Rgrox/core/engine.py+49/−13
Agrox/core/generators/__init__.py+0/−0
Agrox/core/generators/registry.py+36/−0
Agrox/core/generators/stream_generator.py+48/−0
Rgrox/core/generators/task_generator.py+22/−9
Agrox/core/lib/utils.py+12/−0
Agrox/core/lm/convo.py+393/−0
Agrox/core/lm/post.py+176/−0
Agrox/core/lm/thread.py+86/−0
Agrox/core/lm/user.py+50/−0
Agrox/core/loading.py+66/−0
Agrox/core/plans/__init__.py+0/−0
Rgrox/core/plans/plan.py+5/−8
Agrox/core/plans/plan_master.py+42/−0
Agrox/core/plans/registry.py+15/−0
Agrox/core/processors.py+47/−0
Agrox/core/registry.py+17/−0
Rgrox/core/schedules/context.py+0/−2
Rgrox/core/schedules/init.py+8/−3
Agrox/core/schedules/types.py+56/−0
Agrox/core/services/__init__.py+0/−0
Agrox/core/services/registry.py+29/−0
Agrox/core/services/service.py+58/−0
Agrox/core/tasks/disable_rules.py+24/−0
Rgrox/core/tasks/task.py+4/−37
Agrox/core/tasks/task_asr.py+151/−0
Agrox/core/tasks/task_filters.py+35/−0
Agrox/core/tasks/task_load_post.py+15/−0
Agrox/core/tasks/task_media.py+13/−0
Agrox/core/tasks/task_rate_limit.py+59/−0
Dgrox/dispatcher.py+0/−370
Dgrox/embedder/multimodal_post_embedder_v2.py+0/−287
Agrox/flows/mm_emb/__init__.py+0/−0
Agrox/flows/mm_emb/constants.py+17/−0
Agrox/flows/mm_emb/disable_rules.py+11/−0
Rgrox/flows/mm_emb/embedder.py+9/−13
Agrox/flows/mm_emb/embedder_v82.py+114/−0
Agrox/flows/mm_emb/generators.py+77/−0
Rgrox/flows/mm_emb/plan_post_embedding_v5.py+16/−8
Rgrox/flows/mm_emb/plan_post_embedding_v5_for_reply.py+13/−10
Agrox/flows/mm_emb/plan_post_embedding_v82.py+32/−0
Agrox/flows/mm_emb/plan_post_embedding_v82_for_reply.py+35/−0
Agrox/flows/mm_emb/renderer.py+195/−0
Agrox/flows/mm_emb/renderer_v82.py+372/−0
Agrox/flows/mm_emb/state.py+6/−0
Agrox/flows/mm_emb/task_embedding_pub.py+56/−0
Agrox/flows/mm_emb/task_filter.py+50/−0
Rgrox/flows/mm_emb/task_multimodal_post_embedding.py+39/−48
Agrox/flows/mm_emb/task_rate_limit.py+23/−0
Agrox/flows/mm_emb/task_write_mm_embedding_sink.py+160/−0
Agrox/flows/ptos/__init__.py+0/−0
Agrox/flows/ptos/classifier.py+543/−0
Agrox/flows/ptos/constants.py+25/−0
Agrox/flows/ptos/disable_rules.py+11/−0
Agrox/flows/ptos/generators.py+90/−0
Agrox/flows/ptos/kafka_loader.py+49/−0
Agrox/flows/ptos/mode.py+28/−0
Agrox/flows/ptos/plan_safety_ptos.py+48/−0
Agrox/flows/ptos/plan_safety_ptos_live_cluster_anchors.py+38/−0
Agrox/flows/ptos/plan_safety_ptos_realtime_with_signals.py+32/−0
Agrox/flows/ptos/prompts.py+57/−0
Agrox/flows/ptos/state.py+125/−0
Agrox/flows/ptos/task_filter.py+86/−0
Agrox/flows/ptos/task_ptos_spam_detection.py+62/−0
Agrox/flows/ptos/task_rate_limit.py+35/−0
Agrox/flows/ptos/task_safety_ptos_category.py+83/−0
Agrox/flows/ptos/task_safety_ptos_min_traction_dedupe_filter.py+65/−0
Agrox/flows/ptos/task_safety_ptos_policy.py+174/−0
Agrox/flows/ptos/task_safety_ptos_safemodel_sex_nudity.py+277/−0
Agrox/flows/ptos/task_write_live_cluster_anchor_verdict_sink.py+183/−0
Rgrox/flows/ptos/task_write_safety_post_annotations_result_sink.py+220/−63
Agrox/flows/reply_spam/__init__.py+0/−0
Agrox/flows/reply_spam/classifier_coordinated_spam.py+218/−0
Rgrox/flows/reply_spam/classifier_reply_ranking.py+36/−23
Agrox/flows/reply_spam/classifier_simple_reply_scorer.py+30/−0
Agrox/flows/reply_spam/constants.py+5/−0
Agrox/flows/reply_spam/generators.py+34/−0
Agrox/flows/reply_spam/plan_coordinated_spam.py+32/−0
Rgrox/flows/reply_spam/plan_reply_ranking.py+11/−8
Agrox/flows/reply_spam/plan_spam_comment.py+30/−0
Agrox/flows/reply_spam/prompts.py+30/−0
Agrox/flows/reply_spam/state_coordinated_spam.py+13/−0
Agrox/flows/reply_spam/state_reply_ranking.py+13/−0
Agrox/flows/reply_spam/strato_loader.py+32/−0
Agrox/flows/reply_spam/task_coordinated_spam.py+48/−0
Rgrox/flows/reply_spam/task_filter.py+81/−203
Rgrox/flows/reply_spam/task_rank_replies.py+6/−6
Agrox/flows/reply_spam/task_rate_limit.py+18/−0
Rgrox/flows/reply_spam/task_spam_detection.py+10/−13
Agrox/flows/reply_spam/task_write.py+193/−0
Agrox/flows/upa/__init__.py+0/−0
Agrox/flows/upa/classifier_banger_initial_screen_gemma.py+154/−0
Agrox/flows/upa/classifier_post_safety_screen_deluxe.py+75/−0
Agrox/flows/upa/constants.py+9/−0
Agrox/flows/upa/generators.py+40/−0
Agrox/flows/upa/models.py+20/−0
Rgrox/flows/upa/plan_initial_banger.py+11/−15
Rgrox/flows/upa/plan_post_safety.py+11/−10
Agrox/flows/upa/prompts.py+22/−0
Agrox/flows/upa/state_initial_banger.py+20/−0
Agrox/flows/upa/state_post_safety.py+14/−0
Rgrox/flows/upa/task_banger_screen.py+15/−18
Agrox/flows/upa/task_filter.py+87/−0
Rgrox/flows/upa/task_grok_upa_action_with_labels.py+16/−10
Rgrox/flows/upa/task_post_safety_screen_deluxe.py+6/−6
Agrox/flows/upa/task_rate_limit.py+13/−0
Agrox/flows/upa/task_write.py+243/−0
Dgrox/generators/stream_generator.py+0/−222
Dgrox/lib/stream.py+0/−46
Dgrox/lib/utils.py+0/−6
Agrox/libs/blobstore_http/__init__.py+0/−0
Agrox/libs/blobstore_http/blobstore.py+156/−0
Agrox/libs/blobstore_http/cdn_downloader.py+71/−0
Agrox/libs/blobstore_http/py.typed+0/−0
Agrox/libs/circuit_breaker/__init__.py+15/−0
Agrox/libs/circuit_breaker/circuit_breaker.py+215/−0
Agrox/libs/circuit_breaker/py.typed+1/−0
Agrox/libs/embed/__init__.py+0/−0
Agrox/libs/embed/embed_http.py+280/−0
Agrox/libs/grok_sampler/__init__.py+0/−0
Agrox/libs/grok_sampler/config.py+34/−0
Agrox/libs/grok_sampler/eapi_sampler.py+214/−0
Agrox/libs/grok_sampler/llm.py+193/−0
Agrox/libs/grok_sampler/oai_sampler.py+69/−0
Agrox/libs/grok_sampler/py.typed+0/−0
Agrox/libs/grok_sampler/text_sampler.py+35/−0
Agrox/libs/grok_sampler/vision_sampler.py+54/−0
Agrox/libs/grpc_cli/__init__.py+0/−0
Agrox/libs/grpc_cli/grpc_client.py+150/−0
Agrox/libs/grpc_cli/py.typed+0/−0
Agrox/libs/html_render/__init__.py+0/−0
Agrox/libs/html_render/py.typed+0/−0
Agrox/libs/html_render/tweet_render_for_grox.py+183/−0
Agrox/libs/kafka_cli/__init__.py+6/−0
Agrox/libs/kafka_cli/config.py+60/−0
Agrox/libs/kafka_cli/consumer.py+239/−0
Agrox/libs/kafka_cli/mtls.py+35/−0
Agrox/libs/kafka_cli/multi_region_consumer.py+203/−0
Agrox/libs/kafka_cli/multi_region_producer.py+160/−0
Agrox/libs/kafka_cli/patched_gssapi.py+15/−0
Agrox/libs/kafka_cli/producer.py+204/−0
Agrox/libs/kafka_cli/py.typed+0/−0
Agrox/libs/kerberos_cli/__init__.py+0/−0
Agrox/libs/kerberos_cli/kerberos.py+103/−0
Agrox/libs/kerberos_cli/py.typed+0/−0
Agrox/libs/video_tools/__init__.py+0/−0
Agrox/libs/video_tools/image.py+154/−0
Agrox/libs/video_tools/py.typed+0/−0
Agrox/libs/video_tools/subtitles.py+79/−0
Agrox/libs/video_tools/video_frames.py+199/−0
Agrox/libs/wily_cli/__init__.py+0/−0
Agrox/libs/wily_cli/config.py+12/−0
Agrox/libs/wily_cli/http_client.py+121/−0
Agrox/libs/wily_cli/py.typed+0/−0
Agrox/libs/wily_cli/wily_client.py+128/−0
Dgrox/main.py+0/−54
Dgrox/plans/plan_master.py+0/−62
Dgrox/plans/plan_post_embedding_with_summary.py+0/−38
Dgrox/plans/plan_post_embedding_with_summary_for_reply.py+0/−38
Dgrox/plans/plan_safety_ptos.py+0/−32
Dgrox/plans/plan_spam_comment.py+0/−29
Dgrox/schedules/types.py+0/−73
Dgrox/summarizer/eapi_summarizer.py+0/−44
Dgrox/summarizer/post_embedding_summarizer.py+0/−55
Dgrox/summarizer/summarizer.py+0/−44
Dgrox/tasks/disable_rules.py+0/−56
Dgrox/tasks/task_asr.py+0/−74
Dgrox/tasks/task_embedding_pub.py+0/−79
Dgrox/tasks/task_load_post_with_not_found_retry.py+0/−35
Dgrox/tasks/task_load_post_with_summary.py+0/−27
Dgrox/tasks/task_load_user_recent_posts.py+0/−23
Dgrox/tasks/task_media.py+0/−21
Dgrox/tasks/task_pub.py+0/−555
Dgrox/tasks/task_rate_limit.py+0/−191
Dgrox/tasks/task_safety_ptos_category.py+0/−61
Dgrox/tasks/task_safety_ptos_policy.py+0/−89
Dgrox/tasks/task_summarizer_for_post_embedding.py+0/−25
Dgrox/tasks/task_write_mm_embedding_sink.py+0/−193
Ahome-mixer/ads/following_ad_blender.rs+188/−0
Mhome-mixer/ads/mod.rs+8/−2
Mhome-mixer/ads/partition_organic_blender.rs+112/−10
Mhome-mixer/ads/safe_gap_blender.rs+16/−4
Ahome-mixer/ads/tests/blender_comparison_test.rs+530/−0
Ahome-mixer/ads/tests/following_ad_blender_tests.rs+250/−0
Ahome-mixer/ads/tests/mod.rs+5/−0
Ahome-mixer/ads/tests/partition_organic_blender_tests.rs+1108/−0
Ahome-mixer/ads/tests/safe_gap_blender_tests.rs+595/−0
Ahome-mixer/ads/tests/time_gap_blender_tests.rs+141/−0
Ahome-mixer/ads/time_gap_blender.rs+271/−0
Mhome-mixer/ads/util.rs+44/−28
Ahome-mixer/bin/pipeline_components_json.rs+76/−0
Dhome-mixer/candidate_hydrators/ads_brand_safety_hydrator.rs+0/−176
Mhome-mixer/candidate_hydrators/ads_brand_safety_vf_hydrator.rs+455/−32
Ahome-mixer/candidate_hydrators/bidirectional_follow_hydrator.rs+215/−0
Ahome-mixer/candidate_hydrators/broadcast_liveness_hydrator.rs+245/−0
Ahome-mixer/candidate_hydrators/conversation_gap_ancestor_hydrator.rs+216/−0
Mhome-mixer/candidate_hydrators/core_data_candidate_hydrator.rs+58/−11
Mhome-mixer/candidate_hydrators/engagement_counts_hydrator.rs+243/−40
Mhome-mixer/candidate_hydrators/filtered_topics_hydrator.rs+3/−5
Mhome-mixer/candidate_hydrators/following_replied_users_hydrator.rs+266/−3
Mhome-mixer/candidate_hydrators/gizmoduck_hydrator.rs+43/−13
Dhome-mixer/candidate_hydrators/has_media_hydrator.rs+0/−85
Mhome-mixer/candidate_hydrators/language_code_hydrator.rs+141/−3
Ahome-mixer/candidate_hydrators/media_info_hydrator.rs+260/−0
Mhome-mixer/candidate_hydrators/mod.rs+6/−3
Mhome-mixer/candidate_hydrators/mutual_follow_jaccard_hydrator.rs+45/−0
Mhome-mixer/candidate_hydrators/quote_hydrator.rs+3/−3
Ahome-mixer/candidate_hydrators/semantic_id_hydrator.rs+119/−0
Mhome-mixer/candidate_hydrators/subscription_hydrator.rs+3/−3
Ahome-mixer/candidate_hydrators/topic_feedback_context_hydrator.rs+330/−0
Mhome-mixer/candidate_hydrators/tweet_type_metrics_hydrator.rs+69/−2
Mhome-mixer/candidate_hydrators/vf_candidate_hydrator.rs+23/−7
Dhome-mixer/candidate_hydrators/video_duration_candidate_hydrator.rs+0/−85
Dhome-mixer/candidate_pipeline/candidate.rs+0/−70
Dhome-mixer/candidate_pipeline/candidate_features.rs+0/−78
Ahome-mixer/candidate_pipeline/following_candidate_pipeline.rs+294/−0
Mhome-mixer/candidate_pipeline/for_you_candidate_pipeline.rs+56/−8
Mhome-mixer/candidate_pipeline/mod.rs+92/−0
Mhome-mixer/candidate_pipeline/phoenix_candidate_pipeline.rs+382/−95
Ahome-mixer/candidate_pipeline/phoenix_scores_pipeline.rs+448/−0
Dhome-mixer/candidate_pipeline/query.rs+0/−69
Dhome-mixer/candidate_pipeline/query_features.rs+0/−11
Ahome-mixer/candidate_pipeline/ranked_following_candidate_pipeline.rs+227/−0
Ahome-mixer/candidate_pipeline/reverse_chron_posts_pipeline.rs+204/−0
Ahome-mixer/clients/ad_index_client.rs+304/−0
Ahome-mixer/clients/engagement_counts_client.rs+185/−0
Ahome-mixer/clients/engagement_signals_client.rs+212/−0
Ahome-mixer/clients/gizmoduck_client.rs+1/−0
Ahome-mixer/clients/impressed_posts_client.rs+97/−0
Ahome-mixer/clients/mod.rs+19/−0
Ahome-mixer/clients/night_owl_client.rs+96/−0
Ahome-mixer/clients/past_request_timestamps_client.rs+106/−0
Ahome-mixer/clients/prompts_client.rs+141/−0
Ahome-mixer/clients/resurrection_date_client.rs+199/−0
Ahome-mixer/clients/rotating_channel.rs+74/−0
Ahome-mixer/clients/s2s.rs+1/−0
Ahome-mixer/clients/served_history_client.rs+225/−0
Ahome-mixer/clients/simclusters_ann_client.rs+144/−0
Ahome-mixer/clients/tweet_entity_service_client.rs+1/−0
Ahome-mixer/clients/uas_fetcher.rs+84/−0
Ahome-mixer/clients/user_action_aggregation_client.rs+330/−0
Ahome-mixer/clients/vm_ranker_client.rs+401/−0
Ahome-mixer/clients/who_to_follow_client.rs+138/−0
Ahome-mixer/config.rs+94/−0
Ahome-mixer/dark_traffic_setup.rs+105/−0
Ahome-mixer/filters/ad_adjacent_served_filter.rs+915/−0
Mhome-mixer/filters/age_filter.rs+0/−1comments only
Mhome-mixer/filters/author_socialgraph_filter.rs+279/−5
Mhome-mixer/filters/dedup_conversation_filter.rs+122/−5
Mhome-mixer/filters/drop_duplicates_filter.rs+4/−3
Ahome-mixer/filters/following_retweet_deduplication_filter.rs+48/−0
Mhome-mixer/filters/ineligible_subscription_filter.rs+38/−1
Ahome-mixer/filters/invalid_conversation_module_filter.rs+17/−0
Ahome-mixer/filters/inventory_holdout_filter.rs+263/−0
Mhome-mixer/filters/mod.rs+10/−1
Mhome-mixer/filters/muted_keyword_filter.rs+243/−0
Ahome-mixer/filters/new_user_min_engagement_filter.rs+117/−0
Dhome-mixer/filters/new_user_topic_ids_filter.rs+0/−31
Ahome-mixer/filters/oon_nsfw_simclusters_filter.rs+27/−0
Ahome-mixer/filters/oon_retweet_reply_filter.rs+124/−0
Ahome-mixer/filters/popular_topics_author_dedup_filter.rs+95/−0
Mhome-mixer/filters/previously_seen_posts_backup_filter.rs+68/−6
Mhome-mixer/filters/previously_seen_posts_filter.rs+6/−5
Mhome-mixer/filters/previously_served_posts_filter.rs+7/−6
Ahome-mixer/filters/push_to_home_dedup_filter.rs+27/−0
Ahome-mixer/filters/result_size_filter.rs+21/−0
Mhome-mixer/filters/retweet_deduplication_filter.rs+127/−5
Ahome-mixer/filters/self_reply_chain_filter.rs+168/−0
Mhome-mixer/filters/self_tweet_filter.rs+0/−1comments only
Mhome-mixer/filters/topic_ids_filter.rs+1256/−325
Mhome-mixer/filters/vf_filter.rs+68/−0
Mhome-mixer/filters/video_filter.rs+76/−0
Ahome-mixer/following_feed_server.rs+89/−0
Mhome-mixer/for_you_server.rs+12/−14
Ahome-mixer/frames/catalog.rs+158/−0
Ahome-mixer/frames/mod.rs+12/−0
Ahome-mixer/frames/placement.rs+85/−0
Ahome-mixer/frames/plan.rs+256/−0
Ahome-mixer/frames/served.rs+22/−0
Mhome-mixer/lib.rs+13/−0
Mhome-mixer/main.rs+94/−3
Mhome-mixer/models/brand_safety.rs+144/−1
Mhome-mixer/models/candidate.rs+132/−0
Ahome-mixer/models/engagement_signals.rs+51/−0
Mhome-mixer/models/mod.rs+1/−0
Mhome-mixer/models/query.rs+40/−9
Ahome-mixer/params/config.rs+40/−0
Ahome-mixer/params/mod.rs+5/−0
Ahome-mixer/params/param.rs+1084/−0
Ahome-mixer/phoenix_scores_server.rs+80/−0
Ahome-mixer/query_hydrators/explicit_engagement_signals_query_hydrator.rs+112/−0
Mhome-mixer/query_hydrators/followed_grok_topics_query_hydrator.rs+5/−36
Mhome-mixer/query_hydrators/followed_starter_packs_query_hydrator.rs+2/−2
Mhome-mixer/query_hydrators/followed_user_ids_query_hydrator.rs+4/−0
Ahome-mixer/query_hydrators/implicit_engagement_signals_query_hydrator.rs+137/−0
Mhome-mixer/query_hydrators/impressed_posts_query_hydrator.rs+63/−0
Mhome-mixer/query_hydrators/impression_bloom_filter_query_hydrator.rs+133/−0
Dhome-mixer/query_hydrators/inferred_grok_topics_query_hydrator.rs+0/−39
Mhome-mixer/query_hydrators/mod.rs+4/−2
Mhome-mixer/query_hydrators/retrieval_sequence_query_hydrator.rs+9/−6
Mhome-mixer/query_hydrators/scoring_sequence_query_hydrator.rs+13/−7
Mhome-mixer/query_hydrators/served_history_query_hydrator.rs+14/−4
Dhome-mixer/query_hydrators/user_action_seq_query_hydrator.rs+0/−188
Mhome-mixer/query_hydrators/user_demographics_query_hydrator.rs+1/−1
Dhome-mixer/query_hydrators/user_features_query_hydrator.rs+0/−41
Mhome-mixer/query_hydrators/user_inferred_gender_query_hydrator.rs+10/−3
Ahome-mixer/query_hydrators/user_installed_apps_query_hydrator.rs+50/−0
Ahome-mixer/ranked_following_feed_server.rs+81/−0
Mhome-mixer/scored_posts_server.rs+11/−0
Ahome-mixer/scorers/author_cold_start.rs+494/−0
Dhome-mixer/scorers/author_diversity_scorer.rs+0/−73
Mhome-mixer/scorers/mod.rs+3/−0
Dhome-mixer/scorers/oon_scorer.rs+0/−38
Mhome-mixer/scorers/phoenix_scorer.rs+27/−28
Ahome-mixer/scorers/phoenix_scores_ranking_scorer.rs+38/−0
Mhome-mixer/scorers/ranking_scorer.rs+1461/−72
Ahome-mixer/scorers/value_model_gate.rs+537/−0
Mhome-mixer/scorers/vm_ranker.rs+105/−10
Dhome-mixer/scorers/weighted_scorer.rs+0/−92
Mhome-mixer/selectors/blender_selector.rs+215/−7
Ahome-mixer/selectors/following_blender_selector.rs+139/−0
Mhome-mixer/selectors/mod.rs+4/−0
Ahome-mixer/selectors/passthrough_selector.rs+11/−0
Mhome-mixer/server.rs+597/−39
Mhome-mixer/side_effects/ads_injection_logging_side_effect.rs+40/−8
Ahome-mixer/side_effects/author_served_metrics_side_effect.rs+186/−0
Dhome-mixer/side_effects/cache_request_info_side_effect.rs+0/−42
Mhome-mixer/side_effects/client_events_kafka_side_effect.rs+15/−8
Ahome-mixer/side_effects/debug_side_effect.rs+40/−0
Mhome-mixer/side_effects/mod.rs+4/−1
Mhome-mixer/side_effects/mutual_follow_stats_side_effect.rs+1/−1
Mhome-mixer/side_effects/phoenix_experiments_side_effect.rs+30/−12
Mhome-mixer/side_effects/phoenix_request_cache_side_effect.rs+349/−5
Mhome-mixer/side_effects/publish_seen_ids_to_kafka_side_effect.rs+3/−3
Mhome-mixer/side_effects/redis_post_candidate_cache_side_effect.rs+141/−0
Mhome-mixer/side_effects/reranking_kafka_side_effect.rs+120/−2
Rhome-mixer/side_effects/response_stats_side_effect.rs+30/−67
Mhome-mixer/side_effects/scored_stats_side_effect.rs+172/−18
Ahome-mixer/side_effects/served_ad_history_cache_side_effect.rs+66/−0
Mhome-mixer/side_effects/served_candidates_kafka_side_effect.rs+14/−6
Mhome-mixer/side_effects/truncate_served_history_side_effect.rs+9/−3
Mhome-mixer/side_effects/update_past_request_timestamps_side_effect.rs+9/−5
Mhome-mixer/side_effects/update_served_history_side_effect.rs+51/−6
Mhome-mixer/sources/ads_source.rs+86/−3
Ahome-mixer/sources/feed_survey_source.rs+21/−0
Ahome-mixer/sources/following_night_owl_source.rs+217/−0
Ahome-mixer/sources/jetfuel_frame_source.rs+557/−0
Mhome-mixer/sources/mod.rs+6/−0
Mhome-mixer/sources/phoenix_moe_source.rs+15/−11
Mhome-mixer/sources/phoenix_source.rs+61/−24
Mhome-mixer/sources/phoenix_topics_source.rs+23/−24
Ahome-mixer/sources/popular_topics_source.rs+102/−0
Mhome-mixer/sources/prompts_source.rs+7/−3
Mhome-mixer/sources/push_to_home_source.rs+101/−1
Ahome-mixer/sources/reverse_chron_posts_source.rs+83/−0
Mhome-mixer/sources/scored_posts_source.rs+1/−1
Ahome-mixer/sources/seed_candidates_source.rs+24/−0
Ahome-mixer/sources/simclusters_source.rs+221/−0
Mhome-mixer/sources/thunder_source.rs+37/−17
Mhome-mixer/sources/tweet_mixer_source.rs+39/−4
Mhome-mixer/sources/who_to_follow_source.rs+38/−18
Ahome-mixer/util/author_rules.rs+157/−0
Ahome-mixer/util/candidates_util.rs+110/−0
Ahome-mixer/util/conversation_grouping.rs+125/−0
Ahome-mixer/util/country_codes.rs+12/−0
Ahome-mixer/util/egress.rs+3/−0
Ahome-mixer/util/feed_log.rs+60/−0
Ahome-mixer/util/mod.rs+14/−0
Ahome-mixer/util/phoenix_request.rs+151/−0
Ahome-mixer/util/rescore.rs+152/−0
Ahome-mixer/util/shadow.rs+133/−0
Ahome-mixer/util/string_case.rs+15/−0
Ahome-mixer/util/tweet_type_metrics.rs+65/−0
Ahome-mixer/util/url.rs+35/−0
Ahome-mixer/util/urt/ad_marshaller.rs+465/−0
Ahome-mixer/util/urt/client_event.rs+114/−0
Ahome-mixer/util/urt/controller_data.rs+77/−0
Ahome-mixer/util/urt/convo_marshaller.rs+126/−0
Ahome-mixer/util/urt/cursors.rs+91/−0
Ahome-mixer/util/urt/feed_survey_marshaller.rs+172/−0
Ahome-mixer/util/urt/feedback.rs+288/−0
Ahome-mixer/util/urt/frame_marshaller.rs+107/−0
Ahome-mixer/util/urt/mod.rs+318/−0
Ahome-mixer/util/urt/navigation.rs+79/−0
Ahome-mixer/util/urt/new_tweets_pill.rs+121/−0
Ahome-mixer/util/urt/post_marshaller.rs+113/−0
Ahome-mixer/util/urt/prompt_marshaller.rs+547/−0
Ahome-mixer/util/urt/push_to_home_marshaller.rs+118/−0
Ahome-mixer/util/urt/reverse_chron_following/cursors.rs+236/−0
Ahome-mixer/util/urt/reverse_chron_following/mod.rs+125/−0
Ahome-mixer/util/urt/wtf_marshaller.rs+145/−0
Ahome-mixer/util/xds.rs+19/−0
Amedia-model-proxy/BUILD.bazel+53/−0
Amedia-model-proxy/README.rst+38/−0
Amedia-model-proxy/config/decider.yml+59/−0
Amedia-model-proxy/integrationtest/scripts/local.sh+116/−0
Amedia-model-proxy/integrationtest/scripts/workflow.sh+90/−0
Amedia-model-proxy/integrationtest/src/test/resources/com/twitter/media_understanding/model_proxy/integrationtest/BUILD.bazel+4/−0
Amedia-model-proxy/integrationtest/src/test/resources/com/twitter/media_understanding/model_proxy/integrationtest/models.txt+5/−0
Amedia-model-proxy/integrationtest/src/test/scala/com/twitter/media_understanding/model_proxy/integrationtest/BUILD.bazel+18/−0
Amedia-model-proxy/integrationtest/src/test/scala/com/twitter/media_understanding/model_proxy/integrationtest/MediaModelProxyService.scala+49/−0
Amedia-model-proxy/integrationtest/src/test/scala/com/twitter/media_understanding/model_proxy/integrationtest/MediaModelProxyTest.scala+99/−0
Amedia-model-proxy/loadtest/BUILD+27/−0
Amedia-model-proxy/loadtest/config/loadtest.yaml+14/−0
Amedia-model-proxy/loadtest/launcher.sh+47/−0
Amedia-model-proxy/loadtest/logs/.gitignore+1/−0
Amedia-model-proxy/loadtest/src/scala/com/twitter/media_understanding/media_model_proxy/loadtest/BUILD+54/−0
Amedia-model-proxy/loadtest/src/scala/com/twitter/media_understanding/media_model_proxy/loadtest/MediaModelProxyLoadTest.scala+90/−0
Amedia-model-proxy/loadtest/src/scala/com/twitter/media_understanding/media_model_proxy/loadtest/MediaModelProxyLogSampler.scala+121/−0
Amedia-model-proxy/scripts/local.sh+122/−0
Amedia-model-proxy/src/main/resources/BUILD+10/−0
Amedia-model-proxy/src/main/resources/META-INF/services/com.twitter.util.tunable.ServiceLoadedTunableMap+1/−0
Amedia-model-proxy/src/main/resources/com/twitter/tunables/cortex_media_annotator/instances.json+14/−0
Amedia-model-proxy/src/main/resources/okta_features_metadata.xml+17/−0
Amedia-model-proxy/src/main/resources/okta_features_prod_metadata.xml+17/−0
Amedia-model-proxy/src/main/resources/sample-image.jpg+0/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/app/BUILD.bazel+43/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/app/ModelClientValidator.scala+46/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/app/Server.scala+69/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/clients/BUILD.bazel+24/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/clients/DeepbirdClient.scala+74/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/clients/DummyEmbeddingsClient.scala+76/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/clients/ModelClient.scala+19/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/clients/SwitchingModelClient.scala+47/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/config/BUILD+13/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/config/Config.scala+5/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/config/Deciders.scala+8/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/config/Features.scala+40/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/config/TunableMap.scala+9/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/config/Tunables.scala+23/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/controllers/BUILD.bazel+23/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/controllers/ProxyController.scala+94/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/exception/BUILD.bazel+13/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/exception/Exceptions.scala+47/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/BUILD.bazel+25/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/CategoryClassificationEmbeddingsModelDescriptor.scala+68/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/CategoryClassificationModelDescriptor.scala+57/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/FingerprintingModelDescriptor.scala+70/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/FingerprintingV2ModelDescriptor.scala+70/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/HatefulSymbolRecognitionModelDescriptor.scala+52/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/ModelDescriptor.scala+47/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/ModelDescriptorRegistry.scala+28/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/ViolenceAndGoreModelDescriptor.scala+74/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/model_descriptors/XXNsfwModelDescriptor.scala+86/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/BUILD.bazel+31/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/BlobStoreModule.scala+100/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/ConfigModule.scala+7/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/FeaturesModule.scala+46/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/LoadSheddingFilterModule.scala+23/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/MediaModelProxyModule.scala+21/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/ModelsModule.scala+47/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/ScribeLoggerModule.scala+30/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/StatsReceiverModule.scala+16/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/ThriftDiffyProxyModule.scala+32/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/modules/package.scala+8/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/services/BUILD.bazel+16/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/services/BlobStoreService.scala+32/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/services/ModelsService.scala+121/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/util/BUILD.bazel+14/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/util/ScribeLogger.scala+50/−0
Amedia-model-proxy/src/main/scala/com/twitter/media_understanding/model_proxy/util/Scriber.scala+9/−0
Amedia-model-proxy/src/main/thrift/BUILD+19/−0
Amedia-model-proxy/src/main/thrift/com/twitter/cortex_media_annotator/annotate.thrift+78/−0
Amedia-model-proxy/src/main/thrift/com/twitter/cortex_media_annotator/annotate_scribe.thrift+8/−0
Amedia-model-proxy/src/test/resources/BUILD.bazel+3/−0
Amedia-model-proxy/src/test/resources/test_decider_base.yml+1/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/app/BUILD.bazel+21/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/app/FeatureTest.scala+152/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/app/StartupTest.scala+23/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/clients/BUILD.bazel+20/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/clients/DeepbirdClientSpec.scala+59/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/clients/DummyEmbeddingsClientSpec.scala+66/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/clients/SwitchingModelClientSpec.scala+106/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/config/BUILD.bazel+17/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/config/FeaturesSpec.scala+14/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/BUILD.bazel+19/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/CategoryClassificationEmbeddingsModelDescriptorSpec.scala+26/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/CategoryClassificationModelDescriptorSpec.scala+23/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/FingerprintingModelDescriptorSpec.scala+23/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/FingerprintingV2ModelDescriptorSpec.scala+23/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/HatefulSymbolRecognitionModelDescriptorSpec.scala+23/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/ViolenceAndGoreModelDescriptorSpec.scala+86/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/model_descriptors/XXNsfwModelDescriptorSpec.scala+73/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/modules/BUILD.bazel+11/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/modules/TestClientModules.scala+72/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/services/BUILD.bazel+21/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/services/BlobStoreServiceSpec.scala+37/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/services/ModelsServiceSpec.scala+161/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/util/BUILD.bazel+19/−0
Amedia-model-proxy/src/test/scala/com/twitter/media_understanding/model_proxy/util/ScribeLoggerSpec.scala+44/−0
Aphoenix-rankall-strato/columns/favoriteEventProcessor.strato+180/−0
Aphoenix-rankall-strato/columns/kafka/favIndexingEventKafkaTopic.strato+22/−0
Aphoenix-rankall-strato/columns/kafka/indexingEventKafkaBackupTopic.strato+20/−0
Aphoenix-rankall-strato/columns/kafka/indexingEventKafkaTopic.strato+20/−0
Aphoenix-rankall-strato/columns/kafka/metadataEventKafkaTopic.strato+22/−0
Aphoenix-rankall-strato/columns/mh/filteredTopicsByExperiment.strato+34/−0
Aphoenix-rankall-strato/columns/mh/phoenixRankAllPostAuthorMetadata.strato+22/−0
Aphoenix-rankall-strato/columns/phoenix_rank_all/getPostPhoenixRankAllMetadata.strato+47/−0
Aphoenix-rankall-strato/columns/phoenix_rank_all/phoenixRankAllCandidateProcessor.strato+501/−0
Aphoenix-rankall-strato/columns/phoenix_rank_all/postCreationEventProcessor.strato+28/−0
Aphoenix-rankall-strato/columns/scribeEvents.strato+23/−0
Aphoenix-rankall-strato/columns/tweetUpdateThresholdsCache.strato+27/−0
Aphoenix-rankall-strato/lib/eventProcessing.strato+670/−0
Aphoenix-rankall-strato/lib/sharedConfig.strato+23/−0
Aphoenix-rankall-strato/stream_forwarders/favoriteEventForwarder.strato+21/−0
Aphoenix-rankall-strato/stream_forwarders/favoritePhoenixIndexingEventForwarder.strato+18/−0
Aphoenix-rankall-strato/stream_forwarders/postCreationEventForwarder.strato+21/−0
Aphoenix-rankall/build.rs+6/−0
Aphoenix-rankall/proto/sid_lookup.proto+19/−0
Aphoenix-rankall/src/config/mod.rs+386/−0
Aphoenix-rankall/src/consumer/kafka.rs+149/−0
Aphoenix-rankall/src/consumer/mod.rs+25/−0
Aphoenix-rankall/src/lib.rs+7/−0
Aphoenix-rankall/src/main.rs+269/−0
Aphoenix-rankall/src/metrics/mod.rs+221/−0
Aphoenix-rankall/src/pipeline/mod.rs+610/−0
Aphoenix-rankall/src/processor/analysis_processor.rs+337/−0
Aphoenix-rankall/src/processor/blacklist.rs+120/−0
Aphoenix-rankall/src/processor/gen/hydra.rs+608/−0
Aphoenix-rankall/src/processor/gen/mod.rs+5/−0
Aphoenix-rankall/src/processor/gen/scored_candidate.rs+403/−0
Aphoenix-rankall/src/processor/main_processor.rs+164/−0
Aphoenix-rankall/src/processor/metadata_processor.rs+215/−0
Aphoenix-rankall/src/processor/mod.rs+55/−0
Aphoenix-rankall/src/processor/record.rs+113/−0
Aphoenix-rankall/src/processor/sid_processor.rs+206/−0
Aphoenix-rankall/src/processor/sid_tail_processor.rs+231/−0
Aphoenix-rankall/src/processor/thrift_types.rs+154/−0
Aphoenix-rankall/src/processor/topic_names.rs+127/−0
Aphoenix-rankall/src/processor/topic_processor.rs+186/−0
Aphoenix-rankall/src/sid/backfill.rs+121/−0
Aphoenix-rankall/src/sid/client.rs+253/−0
Aphoenix-rankall/src/sid/metrics.rs+69/−0
Aphoenix-rankall/src/sid/mod.rs+46/−0
Aphoenix-rankall/src/store/analysis.rs+309/−0
Aphoenix-rankall/src/store/base.rs+1586/−0
Aphoenix-rankall/src/store/mod.rs+59/−0
Aphoenix-rankall/src/store/snowflake.rs+29/−0
Aphoenix-rankall/src/store/writer.rs+221/−0
Aphoenix-rankall/tests/integration_test.rs+280/−0
Aphoenix-rankall/thrift/hydra.thrift+38/−0
Aphoenix-rankall/thrift/scored_candidate.thrift+25/−0
Aphoenix/Cargo.lock+5339/−0
Aphoenix/Cargo.toml+93/−0
Aphoenix/NOTICE+844/−0
Aphoenix/QUICKSTART.md+176/−0
Mphoenix/README.md+258/−84
Aphoenix/THIRD_PARTY_NOTICES.md+85/−0
Aphoenix/TRAINING.md+102/−0
Dphoenix/artifacts/oss-phoenix-artifacts.zip+0/−3
Aphoenix/crates/common/xai-recsys/Cargo.toml+17/−0
Aphoenix/crates/common/xai-recsys/build.rs+231/−0
Aphoenix/crates/common/xai-recsys/pyproject.toml+21/−0
Aphoenix/crates/common/xai-recsys/src/lib.rs+8/−0
Aphoenix/crates/common/xai-recsys/src/model_config.rs+293/−0
Aphoenix/crates/common/xai-recsys/src/util.rs+1849/−0
Aphoenix/crates/serving/xai-recsys-engine/Cargo.toml+75/−0
Aphoenix/crates/serving/xai-recsys-engine/pyproject.toml+25/−0
Aphoenix/crates/serving/xai-recsys-engine/src/adler32.rs+135/−0
Aphoenix/crates/serving/xai-recsys-engine/src/admission.rs+395/−0
Aphoenix/crates/serving/xai-recsys-engine/src/bin/checkpoint_server.rs+225/−0
Aphoenix/crates/serving/xai-recsys-engine/src/checkpoint_proxy.rs+754/−0
Aphoenix/crates/serving/xai-recsys-engine/src/checkpoint_proxy_metrics.rs+66/−0
Aphoenix/crates/serving/xai-recsys-engine/src/checkpoint_store.rs+331/−0
Aphoenix/crates/serving/xai-recsys-engine/src/const.rs+7/−0
Aphoenix/crates/serving/xai-recsys-engine/src/copy.rs+979/−0
Aphoenix/crates/serving/xai-recsys-engine/src/copy_manifest.rs+761/−0
Aphoenix/crates/serving/xai-recsys-engine/src/copy_port_client.rs+1430/−0
Aphoenix/crates/serving/xai-recsys-engine/src/emb_table.rs+1580/−0
Aphoenix/crates/serving/xai-recsys-engine/src/grpc_compression.rs+197/−0
Aphoenix/crates/serving/xai-recsys-engine/src/grpc_util.rs+339/−0
Aphoenix/crates/serving/xai-recsys-engine/src/host_buffer.rs+231/−0
Aphoenix/crates/serving/xai-recsys-engine/src/ibverbs_util.rs+143/−0
Aphoenix/crates/serving/xai-recsys-engine/src/lib.rs+31/−0
Aphoenix/crates/serving/xai-recsys-engine/src/mem_util.rs+236/−0
Aphoenix/crates/serving/xai-recsys-engine/src/multimodal_retrieval.rs+209/−0
Aphoenix/crates/serving/xai-recsys-engine/src/proto_parser.rs+553/−0
Aphoenix/crates/serving/xai-recsys-engine/src/python.rs+3762/−0
Aphoenix/crates/serving/xai-recsys-engine/src/request_metrics.rs+762/−0
Aphoenix/crates/serving/xai-recsys-engine/src/request_queue.rs+131/−0
Aphoenix/crates/serving/xai-recsys-engine/src/sid_client.rs+144/−0
Aphoenix/crates/serving/xai-recsys-engine/src/storage_util.rs+2073/−0
Aphoenix/crates/serving/xai-recsys-engine/src/tls.rs+220/−0
Aphoenix/crates/serving/xai-recsys-engine/src/util.rs+482/−0
Aphoenix/crates/serving/xai-recsys-engine/xai_recsys_engine.pyi+497/−0
Aphoenix/crates/serving/xai-recsys-mm-server/Cargo.toml+32/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/embedding_cache.rs+640/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/events.rs+912/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/lib.rs+12/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/mm_embedding_client.rs+436/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/mm_embedding_fetcher.rs+227/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/o2.rs+253/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/python.rs+112/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/snapshot.rs+637/−0
Aphoenix/crates/serving/xai-recsys-mm-server/src/snowflake.rs+19/−0
Aphoenix/crates/serving/xai-recsys-proto/Cargo.toml+18/−0
Aphoenix/crates/serving/xai-recsys-proto/build.rs+88/−0
Aphoenix/crates/serving/xai-recsys-proto/proto/recsys.proto+1740/−0
Aphoenix/crates/serving/xai-recsys-proto/proto/recsys_features.proto+15/−0
Aphoenix/crates/serving/xai-recsys-proto/proto/served_feed.proto+23/−0
Aphoenix/crates/serving/xai-recsys-proto/src/grok_topics.rs+178/−0
Aphoenix/crates/serving/xai-recsys-proto/src/installed_apps.rs+229/−0
Aphoenix/crates/serving/xai-recsys-proto/src/lib.rs+147/−0
Aphoenix/crates/serving/xai-recsys-proto/src/starter_packs.rs+56/−0
Aphoenix/crates/serving/xai-recsys-server/Cargo.toml+27/−0
Aphoenix/crates/serving/xai-recsys-server/src/lib.rs+806/−0
Aphoenix/crates/serving/xai-recsys-server/src/load_gauge.rs+40/−0
Aphoenix/crates/serving/xai-recsys-server/src/readyz.rs+210/−0
Aphoenix/crates/serving/xai-recsys-sid-proto/Cargo.toml+17/−0
Aphoenix/crates/serving/xai-recsys-sid-proto/build.rs+6/−0
Aphoenix/crates/serving/xai-recsys-sid-proto/proto/sid_lookup.proto+21/−0
Aphoenix/crates/serving/xai-recsys-sid-proto/src/lib.rs+3/−0
Dphoenix/grok.py+0/−616
Mphoenix/pyproject.toml+74/−22
Aphoenix/python/common/xai-configlib/pyproject.toml+18/−0
Aphoenix/python/common/xai-configlib/src/xai_configlib/__init__.py+633/−0
Aphoenix/python/common/xai-configlib/src/xai_configlib/py.typed+0/−0
Aphoenix/python/common/xai-gimmick/pyproject.toml+16/−0
Aphoenix/python/common/xai-gimmick/src/xai_gimmick/__init__.py+33/−0
Aphoenix/python/common/xai-proto/backend_proxy.py+29/−0
Aphoenix/python/common/xai-proto/hatch_build.py+72/−0
Aphoenix/python/common/xai-proto/proto/copy.proto+19/−0
Aphoenix/python/common/xai-proto/proto/recsys.proto+1740/−0
Aphoenix/python/common/xai-proto/proto/recsys_kafka.proto+75/−0
Aphoenix/python/common/xai-proto/pyproject.toml+22/−0
Aphoenix/python/common/xai-proto/xai_proto/__init__.py+2/−0
Aphoenix/python/training/xai-checkpointing/pyproject.toml+17/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/__init__.py+2/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/adler32_zlib.py+27/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/checksum.py+465/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/common.py+87/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/fix_jax.py+20/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/load.py+195/−0
Aphoenix/python/training/xai-checkpointing/xai_checkpointing/tree_util.py+86/−0
Dphoenix/recsys_model.py+0/−680
Dphoenix/recsys_retrieval_model.py+0/−388
Aphoenix/reference/README.md+193/−0
Aphoenix/reference/_sid_proto/sid_lookup_pb2.py+32/−0
Aphoenix/reference/_sid_proto/sid_lookup_pb2_grpc.py+89/−0
Aphoenix/reference/dump_gen.py+735/−0
Aphoenix/reference/example_data/example_posts.py+117/−0
Aphoenix/reference/gen_recs_artifacts_gen.py+221/−0
Aphoenix/reference/mm_encoder.py+534/−0
Aphoenix/reference/mm_snapshot_gen.py+234/−0
Aphoenix/reference/oss_recsys_synth.py+104/−0
Aphoenix/reference/repack_checkpoint.py+245/−0
Aphoenix/reference/retrieve_then_rank.py+180/−0
Aphoenix/reference/sid_assign.py+120/−0
Aphoenix/reference/sid_codebook.py+864/−0
Aphoenix/reference/sid_index_server.py+110/−0
Aphoenix/reference/sid_io.py+235/−0
Aphoenix/reference/sid_mock_server.py+87/−0
Aphoenix/reference/sid_snapshot_gen.py+174/−0
Aphoenix/reference/train_step.py+149/−0
Aphoenix/reference/train_synth.py+165/−0
Aphoenix/reference/world.py+670/−0
Aphoenix/reference/world_snapshots.py+320/−0
Dphoenix/run_pipeline.py+0/−393
Dphoenix/run_ranker.py+0/−121
Dphoenix/run_retrieval.py+0/−149
Dphoenix/runners.py+0/−807
Dphoenix/test_recsys_model.py+0/−309
Dphoenix/test_recsys_retrieval_model.py+0/−417
Dphoenix/uv.lock+0/−372
Aphoenix/xrex/__init__.py+2/−0
Aphoenix/xrex/configs/__init__.py+2/−0
Aphoenix/xrex/configs/config.py+31/−0
Aphoenix/xrex/configs/config_loader.py+114/−0
Aphoenix/xrex/configs/config_registry.py+26/−0
Aphoenix/xrex/configs/data_feeds.py+423/−0
Aphoenix/xrex/configs/xrecsys.py+741/−0
Aphoenix/xrex/configs/xrecsys_gen_recs.py+333/−0
Aphoenix/xrex/configs/xrecsys_sid_retrieval.py+262/−0
Aphoenix/xrex/configs/xrecsys_sid_variants.py+20/−0
Aphoenix/xrex/configs/xrecsys_two_tower.py+752/−0
Aphoenix/xrex/configs/xrecsys_two_tower_evals.py+91/−0
Aphoenix/xrex/cuda/__init__.py+40/−0
Aphoenix/xrex/cuda/adler32/__init__.py+53/−0
Aphoenix/xrex/cuda/adler32/src/adler32_api.cc+62/−0
Aphoenix/xrex/cuda/adler32/src/adler32_api.cu+155/−0
Aphoenix/xrex/cuda/adler32/src/adler32_api.h+32/−0
Aphoenix/xrex/cuda/adler32/src/adler32_cpu.cc+42/−0
Aphoenix/xrex/cuda/adler32/src/adler32_kernel.cuh+223/−0
Aphoenix/xrex/cuda/async_emb/__init__.py+2/−0
Aphoenix/xrex/cuda/async_emb/async_emb.py+232/−0
Aphoenix/xrex/cuda/async_emb/comm_utils.py+47/−0
Aphoenix/xrex/cuda/async_emb/src/async_emb_api.cc+633/−0
Aphoenix/xrex/cuda/async_emb/src/async_emb_comm.cc+812/−0
Aphoenix/xrex/cuda/async_emb/src/async_emb_comm.hpp+210/−0
Aphoenix/xrex/cuda/async_emb/src/async_emb_kernel.cu+381/−0
Aphoenix/xrex/cuda/async_emb/src/async_emb_kernel.hpp+78/−0
Aphoenix/xrex/cuda/async_emb/src/comm_utils.cc+146/−0
Aphoenix/xrex/cuda/async_emb/src/comm_utils.h+57/−0
Aphoenix/xrex/cuda/async_emb/src/cuda_error_utils.hpp+68/−0
Aphoenix/xrex/cuda/top_k_by_key/__init__.py+78/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_api.cc+32/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_async_api.cc+31/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_async_kernel.cu+165/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_async_kernel.hpp+16/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_kernel.cu+152/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_kernel.hpp+17/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_radix_select_api.cc+33/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_radix_select_kernel.cu+389/−0
Aphoenix/xrex/cuda/top_k_by_key/src/top_k_by_key_radix_select_kernel.hpp+16/−0
Aphoenix/xrex/cuda/unique/__init__.py+41/−0
Aphoenix/xrex/cuda/unique/src/unique_api.cc+36/−0
Aphoenix/xrex/cuda/unique/src/unique_kernel.cu+154/−0

…and 553 more.