From 63701fc5bf7d7005d2c22350b5303c565f54e2eb Mon Sep 17 00:00:00 2001 From: vltbaudbot <264001112+vltbaudbot@users.noreply.github.com> Date: Thu, 3 Sep 2026 21:01:02 +0000 Subject: [PATCH] Fix task runner tools not appearing in Tools toggle menu The HeaderNavigation component always used chartData.chartData.data[variation] to derive the available package managers for the Tools filter. However, for the task-runners route with the 'average' variation, the actual data comes from chartData.taskRunnerAverageData, and for registries it comes from chartData.registryAverageData. Make variationData route-aware so it uses the correct data source, matching the logic already used in VariationPage. Fixes vltpkg/vlt.io#1942 Co-authored-by: Jules Pichette --- app/src/components/header.tsx | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/app/src/components/header.tsx b/app/src/components/header.tsx index 42a620277c..31de21d3bd 100644 --- a/app/src/components/header.tsx +++ b/app/src/components/header.tsx @@ -20,6 +20,7 @@ import { getVariationCategories, getPackageManagerDisplayName, isBaselinePackageManager, + isAverageVariation, sortVariations, } from "@/lib/utils"; import type { LeaderboardRoute } from "@/lib/utils"; @@ -100,8 +101,14 @@ const HeaderNavigation = forwardRef>( ({ className, ...props }, ref) => { const { chartData, location, currentVariation, sortedVariations } = useHeaderContext(); + const baseRoute = location.pathname.split("/")[1]; + const isAverage = isAverageVariation(currentVariation as string); const variationData = chartData - ? chartData.chartData.data[currentVariation as Variation] || [] + ? isAverage && baseRoute === "task-runners" + ? (chartData.taskRunnerAverageData ?? []) + : isAverage && baseRoute === "registries" + ? (chartData.registryAverageData ?? []) + : chartData.chartData.data[currentVariation as Variation] || [] : []; const fixtures = useMemo( () => getAvailableFixtures(variationData),