### Website or app

https://github.com/ModelSaber/ModelSaber.Main

### Repro steps

Just try and load the 2/5 and 3/5 report from a reload and start profiling instance.

Change `REACT_APP_API_URL` to `https://apimodelsaber.rainemods.io` in order to launch the app without needing the full .NET 6 environment and the corresponding data in the postgres database.

### How often does this bug happen?

Every time

### DevTools package (automated)

react-devtools-extensions

### DevTools version (automated)

4.23.0-e28a0db22

### Error message (automated)

Could not find node with id "18" in commit tree

### Error call stack (automated)

```text
at chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:25574:13
    at Map.forEach (<anonymous>)
    at RankedChartBuilder_getChartData (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:25570:24)
    at ProfilingCache_ProfilingCache.getRankedChartData (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:25686:11)
    at CommitRankedAutoSizer (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:43680:32)
    at gi (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:15400:7)
    at zj (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:16741:7)
    at jl (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:19201:86)
    at il (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:18756:11)
    at hl (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:18748:23)
```


### Error component stack (automated)

```text
at CommitRankedAutoSizer (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:43659:34)
    at div
    at div
    at div
    at SettingsModalContextController (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:35975:3)
    at Profiler_Profiler (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:53276:34)
    at ErrorBoundary_ErrorBoundary (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:37375:5)
    at div
    at div
    at ThemeProvider (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:37518:3)
    at PortaledContent (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:37548:5)
    at div
    at div
    at div
    at ThemeProvider (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:37518:3)
    at TimelineContextController (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:42700:3)
    at ProfilerContextController (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:42146:3)
    at TreeContextController (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:30256:3)
    at SettingsContextController (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:30878:3)
    at ModalDialogContextController (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:37927:3)
    at DevTools_DevTools (chrome-extension://fmkadmapgofadopljbjfkapdkoienihi/build/main.js:53807:3)
```


### GitHub query string (automated)

```text
https://api.github.com/search/issues?q=Could not find node with id  in commit tree in:title is:issue is:open is:public label:"Component: Developer Tools" repo:facebook/react
```

) {
       If 
       If 
      hasElementUpdatedSinceLastInspected = true;
    }
    const shouldIncludeInTree = !shouldFilterFiber(nextFiber);
    const isSuspense = nextFiber.tag === SuspenseComponent;
    let shouldResetChildren = false;
     The behavior of timed-out Suspense trees is unique.
     Rather than unmount the timed out content (and possibly lose important state),
     React re-parents this content within a hidden Fragment while the fallback is showing.
     This behavior doesn't need to be observable in the DevTools though.
     It might even result in a bad user experience for e.g. node selection in the Elements panel.
     The easiest fix is to strip out the intermediate Fragment fibers,
     so the Elements panel and Profiler don't need to special case them.
     Suspense components only have a non-null memoizedState if they're timed-out.
    const prevDidTimeout = isSuspense && prevFiber.memoizedState !== null;
    const nextDidTimeOut = isSuspense && nextFiber.memoizedState !== null;
     The logic below is inspired by the code paths in updateSuspenseComponent()
     inside ReactFiberBeginWork in the React source code.
    if (prevDidTimeout && nextDidTimeOut) {
       Fal
       1. 
      const nextFiberChild = nextFiber.child;
      const nextFallbackChildSet = nextFiberChild
        ? nextFiberChild.sibling
        : null;
       Not
       bec
      const prevFiberChild = prevFiber.child;