From 94b897fdee429085685d60a3ebdb639e00598ee3 Mon Sep 17 00:00:00 2001 From: Claire Date: Thu, 2 Jul 2026 10:48:17 +0200 Subject: [PATCH] Fix incorrect filter cache key sometimes causing incorrect filters to be applied (#39698) --- app/lib/status_cache_hydrator.rb | 2 +- app/models/custom_filter.rb | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/app/lib/status_cache_hydrator.rb b/app/lib/status_cache_hydrator.rb index ece88c04c1..c2cfc9243b 100644 --- a/app/lib/status_cache_hydrator.rb +++ b/app/lib/status_cache_hydrator.rb @@ -131,7 +131,7 @@ class StatusCacheHydrator def mapped_applied_custom_filter(account, status) CustomFilter - .apply_cached_filters(CustomFilter.cached_filters_for(account), status) + .apply_cached_filters(CustomFilter.cached_filters_for(account.id), status) .map { |filter| serialized_filter(filter) } end diff --git a/app/models/custom_filter.rb b/app/models/custom_filter.rb index a5d8e937e3..e1f8e28a4f 100644 --- a/app/models/custom_filter.rb +++ b/app/models/custom_filter.rb @@ -68,6 +68,8 @@ class CustomFilter < ApplicationRecord end def self.cached_filters_for(account_id) + raise ArgumentError unless account_id.is_a?(String) || account_id.is_a?(Integer) + active_filters = Rails.cache.fetch("filters:v3:#{account_id}") do filters_hash = {}