SYMPTOM:
Report test has the following ACL in a particular project (projectA):

If that report is migrated to another project (projectB), then the report's ACL is changed as shown below. Notice that the entry for user "a" is missing:

CAUSE:
This issue happens is because user "a" does not exist in the destination metadata (If user "a" exists in the destination metadata with a different GUID, this is a different user).
ACTION:
Migrate user "a" from the source metadata to the destination metadata first, then migrate the report/object.