fix: wrap WorkersContent in Suspense boundary for useSearchParams + fix inflated stats in recommendations page

This commit is contained in:
Roo Code 2026-02-13 17:12:26 +00:00
parent 4d4acc98c1
commit bd9f28e7fc
2 changed files with 27 additions and 21 deletions

View file

@ -1,3 +1,4 @@
import { Suspense } from "react"
import type { Metadata } from "next"
import { redirect } from "next/navigation"
@ -82,8 +83,8 @@ export default async function RecommendationsPage({ searchParams }: PageProps) {
const recommendations = getAllRecommendations()
// Aggregate totals
const totalEvalRuns = recommendations.reduce((sum, recommendation) => sum + recommendation.totalEvalRuns, 0)
const totalExercises = recommendations.reduce((sum, recommendation) => sum + recommendation.totalExercises, 0)
const totalEvalRuns = recommendations[0]?.totalEvalRuns ?? 0
const totalExercises = recommendations[0]?.totalExercises ?? 0
const uniqueModels = new Set(
recommendations.flatMap((recommendation) => recommendation.allCandidates.map((candidate) => candidate.modelId)),
)
@ -95,15 +96,17 @@ export default async function RecommendationsPage({ searchParams }: PageProps) {
.pop()
return (
<WorkersContent
roles={roles}
recommendations={recommendations}
totalEvalRuns={totalEvalRuns}
totalExercises={totalExercises}
totalModels={totalModels}
lastUpdated={lastUpdated}
workersRootPath="/evals/recommendations"
roleBasePath="/evals/recommendations/roles"
/>
<Suspense>
<WorkersContent
roles={roles}
recommendations={recommendations}
totalEvalRuns={totalEvalRuns}
totalExercises={totalExercises}
totalModels={totalModels}
lastUpdated={lastUpdated}
workersRootPath="/evals/recommendations"
roleBasePath="/evals/recommendations/roles"
/>
</Suspense>
)
}

View file

@ -1,3 +1,4 @@
import { Suspense } from "react"
import type { Metadata } from "next"
import { SEO } from "@/lib/seo"
@ -75,14 +76,16 @@ export default function WorkersPage() {
.pop()
return (
<WorkersContent
roles={roles}
recommendations={recommendations}
totalEvalRuns={totalEvalRuns}
totalExercises={totalExercises}
totalModels={totalModels}
lastUpdated={lastUpdated}
workersRootPath="/evals/workers"
/>
<Suspense>
<WorkersContent
roles={roles}
recommendations={recommendations}
totalEvalRuns={totalEvalRuns}
totalExercises={totalExercises}
totalModels={totalModels}
lastUpdated={lastUpdated}
workersRootPath="/evals/workers"
/>
</Suspense>
)
}