From 2655f683b5a67b6e6caa98b240deb6469ac6a695 Mon Sep 17 00:00:00 2001 From: Jared Lewis Date: Mon, 26 Oct 2026 09:48:40 +1100 Subject: [PATCH 1/3] fix(failures): keep loaded passing groups and report model list errors A failed Load More now keeps the groups already loaded and shows the error above the button. A failed models request reports through the page's error alert and retry, without hiding the failures. --- .../src/components/failures/passingGroups.tsx | 50 ++++++++++++------- .../src/components/failures/useFailures.ts | 10 ++-- 2 files changed, 39 insertions(+), 21 deletions(-) diff --git a/frontend/src/components/failures/passingGroups.tsx b/frontend/src/components/failures/passingGroups.tsx index 5ba6ada4..866c8586 100644 --- a/frontend/src/components/failures/passingGroups.tsx +++ b/frontend/src/components/failures/passingGroups.tsx @@ -53,24 +53,37 @@ function PassingGroupList({ mipEra: MipEra; model?: string; }) { - const { data, error, fetchNextPage, hasNextPage, isFetchingNextPage } = - useInfiniteQuery({ - ...executionsListRecentExecutionGroupsInfiniteOptions({ - query: { - successful: true, - provider_slug: diagnostic.provider.slug, - diagnostic_slug: diagnostic.slug, - mip_era: mipEra, - source_id: model, - limit: PAGE_SIZE, - }, - }), - initialPageParam: 0, - getNextPageParam: (_lastPage, allPages) => nextOffset(allPages), - }); + const { + data, + error, + refetch, + fetchNextPage, + hasNextPage, + isFetchingNextPage, + } = useInfiniteQuery({ + ...executionsListRecentExecutionGroupsInfiniteOptions({ + query: { + successful: true, + provider_slug: diagnostic.provider.slug, + diagnostic_slug: diagnostic.slug, + mip_era: mipEra, + source_id: model, + limit: PAGE_SIZE, + }, + }), + initialPageParam: 0, + getNextPageParam: (_lastPage, allPages) => nextOffset(allPages), + }); - if (error) { - return

{apiErrorMessage(error)}

; + if (!data && error) { + return ( +
+

{apiErrorMessage(error)}

+ +
+ ); } if (!data) { return ( @@ -90,6 +103,9 @@ function PassingGroupList({ ))} + {error && ( +

{apiErrorMessage(error)}

+ )} {hasNextPage && (