Hello everyone.
I had a requirement of adding two new fields to InventTable - Product manager and Logistics employee. Like with standard worker fields they are stored as RecIds of HcmWorker. I also had to add these fields to EcoResReleasedProductV2Entity for import/export. Surely, because users don't need to interact with recids I needed to import/export personnel numbers, I have added two new datasources to InventTable in entity and then used them in entity fields for storing personnel numbers.
All of the properties for my entity customization are provided below. I have based my development on SalesOrderHeaderV2Entity, as it has technically exact same fields I needed to create - sales taker and order responsible.

However, during testing I've noticed that fields which previously had values in them, are not updated during entity import. Only fields which are empty are being updated. The cause of this is in SysDataEntityPersister.foreignKeyPropagationExtensions(). If I understand correctly, this method checks the foreign key relation for InventTable and my custom HcmWorker data sources and compares values set in each of them. If they are different, then it takes the value currently in HcmWorker datasource. But I don't understand the purpose of this, as I don't need to update/insert any values into HcmWorker during import.
Please advise what is the correct approach during development like this. Maybe I don't need any HcmWorker datasources and instead have personnel number as a virtual field or something?