Repository: react-native
Issue: Dev app crashes when switching color scheme while Text element with DynamicColorIOS is used
Labels: Platform: iOS,Issue: Author Provided Repro,Component: Switch,Newer Patch Available,Type: New Architecture

### Description

The React Native app in development mode will crash when switching the color scheme (through system or the app) while there's a `Text` element using `DynamicColorIOS`. (see `App.tsx` in repro)

The error message shown in Xcode is:

```
Assertion failure: self.size() > 3 || std::none_of( self.begin(), self.end(), [&](auto const& k) { return self.key_eq()(key, k); })
Message: 
File: .../ReproducerApp/ios/Pods/Headers/Public/RCT-Folly/folly/container/detail/F14SetFallback.h
Line: 239
Function: findImpl
```

(It's a `FOLLY_SAFE_DCHECK` assertion written [here](https://github.com/facebook/folly/blob/v2024.12.30.00/folly/container/detail/F14SetFallback.h#L228-L234))

Stack trace shows the assertion failure occurs while [calling `_cache.get` here in `RCTTextLayoutManager.mm`](https://github.com/facebook/react-native/blob/v0.76.5/packages/react-native/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm#L337):

```mm
- (NSAttributedString *)_nsAttributedStringFromAttributedString:(AttributedString)attributedString
{
  auto sharedNSAttributedString = _cache.get(attributedString, [](AttributedString attributedString) {
    return wrapManagedObject(RCTNSAttributedStringFromAttributedString(attributedString));
  });

  return unwrapManagedObject(sharedNSAttributedString);
}
```

Fun fact is that due to the assertion statement `(self.size() > 3 || ...)`, if we add more `Text` elements on the screen, the app won't crash.

This also doesn't affect release builds since [that assertion](https://github.com/facebook/folly/blob/b5650df8bc2d88472aa335a4ccebf6717e470994/folly/lang/SafeAssert.h#L63-L72) seems to [be](https://github.com/facebook/folly/blob/b5650df8bc2d88472aa335a4ccebf6717e470994/folly/lang/SafeAssert.h#L29) [dev-only](https://github.com/facebook/folly/blob/b5650df8bc2d88472aa335a4ccebf6717e470994/folly/Portability.h#L286-L293).

### Steps to reproduce

1. Run the app through Xcode.
2. Switch color scheme.
3. Notice the crash.

### React Native Version

0.76.0, 0.76.4, 0.76.5

### Affected Platforms

Runtime - iOS

### Areas

(not sure) Fabric - The New Renderer

### Output of `npx react-native info`

```text
System:
  OS: macOS 14.5
  CPU: (8) arm64 Apple M1
  Memory: 203.86 MB / 16.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.15.0
    path: ~/.asdf/installs/nodejs/20.15.0/bin/node
  Yarn:
    version: 1.22.22
    path: ~/.asdf/installs/nodejs/20.15.0/bin/yarn
  npm:
    version: 10.7.0
    path: ~/.asdf/plugins/nodejs/shims/npm
  Watchman:
    version: 2024.06.24.00
    path: /opt/homebrew/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /Users/z/.asdf/shims/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.2
      - iOS 18.2
      - macOS 15.2
      - tvOS 18.2
      - visionOS 2.2
      - watchOS 11.2
  Android SDK: Not Found
IDEs:
  Android Studio: 2024.2 AI-242.23339.11.2421.12550806
  Xcode:
    version: 16.2/16C5032a
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 17.0.1
    path: /opt/homebrew/opt/openjdk/bin/javac
  Ruby:
    version: 3.0.2
    path: /Users/z/.asdf/shims/ruby
npmPackages:
  "@react-native-community/cli":
    installed: 15.0.1
    wanted: 15.0.1
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.5
    wanted: 0.76.5
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: true
  newArchEnabled: true
```


### Stacktrace or Logs

```text
Assertion failure: self.size() > 3 || std::none_of( self.begin(), self.end(), [&](auto const& k) { return self.key_eq()(key, k); })
Message: 
File: .../ReproducerApp/ios/Pods/Headers/Public/RCT-Folly/folly/container/detail/F14SetFallback.h
Line: 239
Function: findImpl
```


### Reproducer

https://github.com/zetavg/rn-crash-DynamicColorIOS-color-scheme-switch

### Screenshots and Videos

![](https://github.com/user-attachments/assets/4956b23c-5739-4417-8d30-ca0f6ebf656a)