Proof

expo-alternate-app-icons

real upstream package — not intercepted. the app's expo-alternate-app-icons JS reads the ExpoAlternateAppIcons native module (native-seams/expo-alternate-app-icons.ts, upstream 8.0.0): iOS supportsAlternateIcons from the declared CFBundleAlternateIcons, getAppIconName, and the measured UIKit rejections (inactive-app cancel, unknown-name file-missing, undeclared-app fallback) surfaced through expo's UnexpectedException conversion; Android ports the Kotlin activity-alias contract with the enabled alias in seam state. resetAppIcon runs from the bundle as set(null)
60%
API coverage
No visual proof cases have been published for this package yet. The registry summary below describes what the compat layer implements.
Working—
Missing
engine performer for real icon changes: the system confirmation alert, the home screen and launcher icon swap, and the persisted selection