Proof
No visual proof cases have been published for this package yet. The registry summary below describes what the compat layer implements.react-native-contacts
native-seam only — the real upstream index.ts (an async wrapper around `NativeModules.Contacts ?? TurboModuleRegistry.get('RCTContacts')`) runs from the bundle. sootsim provides a deterministic in-memory address book against the Contacts TurboModule (every consumer method delegates here): add/update/delete operate on an in-process Map keyed by recordID; getContactsByPhoneNumber/Email/MatchingString filter that store; checkPermission/requestPermission use the shared app-scoped system permission registry; the groups subsurface (addGroup/getGroup/contactsInGroup/etc.) is wired against an in-process group store so consumers can exercise the full membership round-trip.82%
API coverageWorking (11)
real upstream JS wrapper running from the bundlegetAll/getAllWithoutPhotosgetContactByIdgetContactsByPhoneNumber/Email/MatchingStringgetCountgetPhotoForIdaddContact/openContactForm/openExistingContact/viewExistingContact/editExistingContact/updateContact/deleteContactwritePhotoToPathiosEnableNotesUsagecheckPermission/requestPermissiongetGroups/getGroup/addGroup/updateGroup/deleteGroup/contactsInGroup/addContactsToGroup/removeContactsFromGroup
Missing (4)
real OS contacts database access (no browser AddressBook API)native iOS/Android contacts UI for openContactForm presentationthumbnail photo writing to diskcontainer/source routing