NSManagedObjectId
Суть
NSManagedObjectID — уникальный идентификатор управляемого объекта в рамках persistent store. В отличие от самого NSManagedObject, он потокобезопасен (в Swift 6 — Sendable), поэтому именно его передают между контекстами и очередями: объект нельзя трогать вне очереди его контекста, а ID — можно.
Продолжение ответа с кодом и уточняющими вопросами интервьюера — в приложении DevPrep.
Полный ответ — в DevPrep