@@ -128,6 +128,22 @@ function HardwareDetails(): JSX.Element {
128128
129129 const reqFilter = mapFilterToReq ( diffFilter ) ;
130130
131+ const inconsistencyNavigateParams = useMemo (
132+ ( ) => ( { hardwareId } ) ,
133+ [ hardwareId ] ,
134+ ) ;
135+
136+ const inconsistencyInvalidatorEnabled = useMemo ( ( ) => {
137+ // Only compare against listing-provided router state when the page is in its
138+ // "default" state. When tree selection / commit selection is active, count
139+ // mismatches are expected and should not trigger global invalidations.
140+ return (
141+ isEmptyObject ( reqFilter ) &&
142+ treeIndexes === null &&
143+ isEmptyObject ( treeCommits )
144+ ) ;
145+ } , [ reqFilter , treeCommits , treeIndexes ] ) ;
146+
131147 const updateTreeFilters = useCallback ( ( selectedIndexes : number [ ] | null ) => {
132148 navigate ( {
133149 search : previousSearch => ( {
@@ -209,8 +225,8 @@ function HardwareDetails(): JSX.Element {
209225 referenceData : hardwareStatusHistoryState ,
210226 comparedData : hardwareDataPreparedForInconsistencyValidation ,
211227 navigate : navigate ,
212- enabled : isEmptyObject ( reqFilter ) ,
213- navigateParams : { hardwareId : hardwareId } ,
228+ enabled : inconsistencyInvalidatorEnabled ,
229+ navigateParams : inconsistencyNavigateParams ,
214230 } ) ;
215231
216232 const hardwareTableForCommitHistory = useMemo ( ( ) => {
0 commit comments