It currently looks like the `map.get(element)` returns `undefined` even for previously-loaded elements. Are we evicting from the cache prematurely? Why?

Our second level caching (inside of `parseHookNames`) is working but this is still resulting in a lot of unnecessary work.
import type {HookNames} from 'react-devtools-shared/src/types';
import type {ReactNodeList} from 'shared/ReactTypes';
import type {
  Element,
  InspectedElement,
} from 'react-devtools-shared/src/devtools/views/Components/types';
type Path = Array<string | number>;
type InspectPathFunction = (path: Path) => void;
export type ToggleParseHookNames = () => void;
type Context = {|
  hookNames: HookNames | null,
  inspectedElement: InspectedElement | null,
  inspectPaths: InspectPathFunction,
  parseHookNames: boolean,
  toggleParseHookNames: ToggleParseHookNames,
|};
export const InspectedElementContext = createContext<Context>(
  ((null: any): Context),
);
const POLL_INTERVAL = 1000;
export type Props = {|
  children: ReactNodeList,
|};
export function InspectedElementContextController({children}: Props) {
  const {selectedElementID} = useContext(TreeStateContext);
  const loadHookNamesFunction = useContext(LoadHookNamesFunctionContext);
  const bridge = useContext(BridgeContext);
  const store = useContext(StoreContext);
  const {parseHookNames: parseHookNamesByDefault} = useContext(SettingsContext);
  const refresh = useCacheRefresh();