Certain BP class properties keep losing value

I am getting this in 4.13.1
I believe I have a repro. Will test with a clean project if I can find the time.

Here are my repro steps:

  1. Make a UObject class and CreateDefaultSubobject that inside an Actor, such as Character. Have it be instanced. Use DefaultToInstanced if you like

  2. Make another UObject class and CreateDefaultSubobject inside the UObject class you made in step 1. Have it be instanced. Use DefaultToInstanced if you like

  3. Make a EditDefaultsOnly property inside the UObject class in step 2, maybe to an AnimMontage or something

  4. Make a blueprint of that Actor in step 1. Set its property that you created in step 3

  5. Make a child blueprint from the one you made in step 4. Note that it has inherited the property correctly

  6. Save and then Close the editor

  7. Open the editor. The property in the child blueprint from step 5 will be zeroed out

  8. Also note that instances must rely on GetArchetype() to obtain the correct value of that property that was set by a human in data… at least this was the case with ones that came from a dynamically spawned Actor, such as an NPC that came from a spawner

This pattern is specifically the one we use for our StateMachines, which are UObjects that contain embedded UObject states with EditDefaultsOnly properties