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.
textCache.set(text, newRecord);
      }
    };
    rejectText = text => {
      const record = textCache.get(text);
      if (record !== undefined) {
        if (record.status === 'pending') {
          Scheduler.unstable_yieldValue(`Promise rejected [${text}]`);
          record.ping();
          record.status = 'rejected';
          clearTimeout(record.promise._timer);
          record.promise = null;
        }
      } else {
        const newRecord = {
          ping: null,
          status: 'rejected',
          promise: null,
        };
        textCache.set(text, newRecord);
      }
    };
  });
  
  
  
  
  
  
  function span(prop) {