EDIT 1 Although I understand that for this particular scenario (and other similar ones) I could only use the map editor to properly migrate my store so that the values in the persistent storage do not jump, but this is not a solution to my current problem, but only avoids root removal Problems. I am interested in adhering to my migration policy, as this will provide me with great control over the migration process, especially for future scenarios when a custom migration policy is created for me. This is for a long-term solution, not just for this scenario.
I urge you to try to help me resolve the current situation, and not to distract me from facilitated migration or advise me to avoid using a migration policy. Thanks.
I really hope to sort this and your valuable data / ideas on what I can do to fix this problem.
What I did: I have a migration policy set, so the source data can be copied to the destination data from version 1 base model to version 2 .
This is a migration policy:
- (BOOL)createDestinationInstancesForSourceInstance:(NSManagedObject *)sInstance entityMapping:(NSEntityMapping *)mapping manager:(NSMigrationManager *)manager error:(NSError **)error {
Therefore, although the checked properties display the correct values at run time, the resulting values stored in the data model store are incorrect, as shown in the snapshots.
The following is a comparison from version 1 to version 2. of the data warehouse.
Version 1: Fix 
to version 2: what is currently storing values incorrectly.

The expected result should have the Product price inserted in the productPrice field, and not in the ProductPriceNeedsUpdating field, which should have only logical values. Can someone help me understand what I'm doing wrong, or explain what is happening here?
UPDATE 1 . Here is my entity mappings :

Update 2 - 20 / Aug / 2014 01:02 GMT
When I ProductPriceLastUpdated attribute of type date from version 1 and ProductPriceNeedsUpdate attribute of type boolean in version 2, leaving only two attributes that match in versions 1 and 2, then everything works. Although I can leave it here and move on, I cannot ignore users who are currently using version 1 of the database, which has this senseless attribute ProductPriceLastUpdated that I need, the type converted to boolean, and the name changed to ProductPriceNeedsUpdate . When things start weird and price values are displayed in the ProductPriceNeedsUpdate field instead of the productPrice field.
I hope that someone can solve the original problem and tell me why the object mapping, or, moreover, the property mapping, is not saved properly?
Update 3 - EntityMapping and Properties:
Version 1 
Version 2 
Any ideas?