From c3640931ed255fb55159a1cfb912ce3a451f6e0e Mon Sep 17 00:00:00 2001 From: Matt Van Horn Date: Sun, 15 Feb 2026 00:32:36 -0800 Subject: [PATCH] =?UTF-8?q?fix:=20skip=20hard=20date=20filter=20for=20YouT?= =?UTF-8?q?ube=20=E2=80=94=20keep=20evergreen=20content?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The hard date filter in the main script was double-filtering YouTube results. youtube_yt.py already applies a soft date filter that prefers recent videos but keeps older ones when < 3 are within range (for evergreen topics like "youtube thumbnails"). The hard filter then removed all of them, resulting in 0 YouTube items. YouTube content has a longer shelf life than tweets/posts, so the soft filter's fallback behavior is correct. Co-Authored-By: Claude Opus 4.6 --- scripts/last30days.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scripts/last30days.py b/scripts/last30days.py index 815a4de..072ecf3 100644 --- a/scripts/last30days.py +++ b/scripts/last30days.py @@ -992,7 +992,10 @@ def main(): # This is the safety net - even if prompts let old content through, this filters it filtered_reddit = normalize.filter_by_date_range(normalized_reddit, from_date, to_date) filtered_x = normalize.filter_by_date_range(normalized_x, from_date, to_date) - filtered_youtube = normalize.filter_by_date_range(normalized_youtube, from_date, to_date) if normalized_youtube else [] + # YouTube: skip hard date filter — youtube_yt.py already applies a soft filter + # that prefers recent videos but keeps older ones for evergreen topics. + # YouTube content has a longer shelf life than tweets/posts. + filtered_youtube = normalized_youtube filtered_web = normalize.filter_by_date_range(normalized_web, from_date, to_date) if normalized_web else [] # Score items