$ the-wire · showcase
REACT FIXES CONCURRENT ERROR RECOVERY BUG, DEVTOOLS GAINS COMPONENT LOOKUP
By RepoJournal · Filed · About Meta · Composed from the cited sources · methodology
React's error recovery logic was treating incomplete trees as complete, causing confusing downstream errors that could mask real failures.
The concurrent error recovery handler in React was checking for `RootErrored` status but overlooking `RootSuspendedAtTheShell`, which should also be treated as an errored state [1]. This means an incomplete tree that never entered the complete phase could be mistaken for a successful render, leading to silent failures and confusing error messages. Separately, React DevTools landed a major usability upgrade: you can now look up which component owns a DOM element in Chrome DevTools, starting with DOM element component lookup in the CDT MCP integration [2] and backed by a new `getComponentByHostInstance` tool in the Facade [3]. The full chrome-devtools-mcp integration is now live [4]. On the compiler front, React restored code frames in ESLint error messages after the Rust port stripped them out [5]. Over on React Native, the team is cleaning house: `Modal`'s deprecated `animated` prop is gone (use `animationType` instead) [7], and the redundant `animatedShouldUseSingleOp` feature flag has been removed [8]. A breaking change on Android: do not synchronize on java.lang.Boolean, preparing for JEP 401 value classes [6].
Action items
- → If using React concurrent features, upgrade immediately to get the error recovery fix facebook/react [immediate]
- → React Native users: remove any reliance on Modal's animated prop before next release facebook/react-native [plan]
- → Monitor React DevTools for the new component lookup feature in your debugger workflow facebook/react [monitor]
References
- [1] Fix: Treat incomplete tree as an error during recovery ↗ facebook/react
- [2] [react-devtools-cdt-mcp] add DOM element component lookup ↗ facebook/react
- [3] [react-devtools-facade] add host instance component lookup ↗ facebook/react
- [4] [react-devtools-cdt-mcp] chrome-devtools-mcp integration ↗ facebook/react
- [5] [compiler] Restore code frames in ESLint compiler error messages (#36901) ↗ facebook/react
- [6] Do not synchronize on java.lang.Boolean. (#56196) ↗ facebook/react-native
- [7] Remove Modal animated prop (#57385) ↗ facebook/react-native
- [8] Remove animatedShouldUseSingleOp feature flag (#57364) ↗ facebook/react-native