From f5d29d3d3202c47b7999324e2b6a953dacabd96e Mon Sep 17 00:00:00 2001 From: Mike Levin Date: Fri, 6 Mar 2026 06:16:39 -0500 Subject: [PATCH] Okay clustering is back but the top-5 homepage picks are still wrong --- scripts/articles/build_knowledge_graph.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/scripts/articles/build_knowledge_graph.py b/scripts/articles/build_knowledge_graph.py index 48e58c43..a6c4bb2e 100644 --- a/scripts/articles/build_knowledge_graph.py +++ b/scripts/articles/build_knowledge_graph.py @@ -130,7 +130,9 @@ def build_canonical_tree(df_slice, current_node, current_depth, velocity_data, v # Sort by GSC Clicks (High velocity content floats to top) df['sort_clicks'] = df['id'].apply(lambda x: velocity_data.get(re.sub(r'^\d{4}-\d{2}-\d{2}-', '', x), {}).get('total_clicks', 0)) - df = df.sort_values(by='sort_clicks', ascending=False) + + # THE FIX: Deterministic fallback. Sort by Clicks, then by Date (newest first). + df = df.sort_values(by=['sort_clicks', 'date'], ascending=[False, False]) def attach_article(row): # Calculate organic gravity