Repro case with a master build: https://codesandbox.io/s/stoic-mcnulty-dhygf?file=/src/App.js:668-703

Expected: we see content after a second.
Actual: fallback never resolves.

This happens in a sequence of:

1. Normal update
   - which suspends
2. Idle update
   - which also suspends
3. An unrelated normal update immediately followed by a ping (so they're batched)
   - here, we decide to stay on fallback, but should've shown the content

If you remove `_setVersion(v => v + 1);` on line 44 then the issue goes away.
dehydrated,
              renderExpirationTime,
            );
          }
        }
      }
    }
     
     
    if (nextDidTimeout) {
       
      const nextFallbackChildren = nextProps.fallback;
      const primaryChildFragment = createFiberFromFragment(
        null,
        mode,
        NoWork,
        null,
      );
      primaryChildFragment.return = workInProgress;
      if ((workInProgress.mode & BlockingMode) === NoMode) {
         
         
        const progressedState: SuspenseState = workInProgress.memoizedState;
        const progressedPrimaryChild: Fiber | null =
          progressedState !== null
            ? (workInProgress.child: any).child
            : (workInProgress.child: any);
        primaryChildFragment.child = progressedPrimaryChild;
        let progressedChild = progressedPrimaryChild;
        while (progressedChild !== null) {