Blueprint reverting to errored state after restarting engine

I just brought my project from 5.4 to 5.5 and have one blueprint class which is suddenly giving me errors. Looks like this:

Looks like a few references to classes are broken, so I go through and fix them:

No more compilation errors, everything seems. Fine.

But then I save, close, and reopen the engine and the compilation errors return, exactly how they were before. Telling me the same thing about PLACEHOLDER-CLASS and broken struct references.

Sometimes the engine will crash right as I close it, I have included the crash log:

Robomango.log (268.8 KB)

Seems to be something to do with this section but I’m not sure what to do about it:

[2026.02.10-06.04.17:426][495]AssetCheck: /Game/JacksonsBlueprints/Dungeons/MysteryDungeon/MoveTest/AC_Dungeons Validating asset
[2026.02.10-06.04.25:900][442]LogBlueprint: Warning: [AssetLog] C:\Unreal Engine\Robomango-5.5\Content\JacksonsBlueprints\Dungeons\MysteryDungeon\MoveTest\AC_Dungeons.uasset: [Compiler] Input pin Instigator specifying non-default value no longer exists on node SpawnActor PLACEHOLDER-CLASS BP Death Zone Renamed C 0 . Please refresh node or reset pin to default value to remove pin.
[2026.02.10-06.04.25:901][442]LogBlueprint: Error: [AssetLog] C:\Unreal Engine\Robomango-5.5\Content\JacksonsBlueprints\Dungeons\MysteryDungeon\MoveTest\AC_Dungeons.uasset: [Compiler] Can’t connect pins BP Death Zone and Object : PLACEHOLDER-CLASS BP Death Zone Renamed C 0 Object Reference is not compatible with Object Reference.
[2026.02.10-06.04.25:901][442]LogBlueprint: Error: [AssetLog] C:\Unreal Engine\Robomango-5.5\Content\JacksonsBlueprints\Dungeons\MysteryDungeon\MoveTest\AC_Dungeons.uasset: [Compiler] Can’t connect pins Object and BP Death Zone : Object Reference is not compatible with PLACEHOLDER-CLASS BP Death Zone Renamed C 0 Object Reference.
[2026.02.10-06.04.25:966][442]LogUObjectHash: Compacting FUObjectHashTables data took 1.76ms
[2026.02.10-06.04.34:589][415]LogBlueprint: Error: [AssetLog] C:\Unreal Engine\Robomango-5.5\Content\JacksonsBlueprints\Dungeons\MysteryDungeon\MoveTest\AC_Dungeons.uasset: [Compiler] Can’t connect pins BP Death Zone and Object : PLACEHOLDER-CLASS BP Death Zone Renamed C 0 Object Reference is not compatible with Object Reference.
[2026.02.10-06.04.34:589][415]LogBlueprint: Error: [AssetLog] C:\Unreal Engine\Robomango-5.5\Content\JacksonsBlueprints\Dungeons\MysteryDungeon\MoveTest\AC_Dungeons.uasset: [Compiler] Can’t connect pins Object and BP Death Zone : Object Reference is not compatible with PLACEHOLDER-CLASS BP Death Zone Renamed C 0 Object Reference.

Cheers for any help or suggestions!

Edit: More info: Adding references to new classes (i.e. via a new spawn actor node) also causes those references to break upon restart. Seems like something is corrupt with the blueprint as a whole that causes all the references to break whenever the engine is restarted. Anything that was a reference to another blueprint is replaced by PLACEHOLDER-CLASS.

Edit: More info here in Reddit comments: https://www.reddit.com/r/unrealengine/comments/1r0t2jc/comment/o4q2act/?context=1

Are there “broken” references in Reference Viewer?
Have you tried Fixup? (Update Redirector References)
Does Reloading an Asset also break the Blueprint? Or does it only break when restarting the engine?

  1. Reference viewer shows the correct references
  2. Yes have fixed all redirectors
  3. Reloading the asset is fine–it only reverts to the errored state after closing and reopening the engine

The engine was sometimes crashing when I closed it, so I took a look at the logs and found this:

[2026.02.11-02.15.26:335][ 0]LogStreaming: Display: Flushing package /Game/JacksonsBlueprints/Dungeons/MysteryDungeon/Actors/Modules/BP_Module_Square (state: CreateLinkerLoadExports) recursively from another package /Game/JacksonsBlueprints/Dungeons/MysteryDungeon/Actors/Modules/Test/BP_IterativeModule_Tunnel (state: CreateLinkerLoadExports) will result in a partially loaded package to avoid a deadlock.

I was reading a post here: Variable default value set to PLACEHOLDER-CLASS - #4 by Light_Shock with an insightful comment suspecting that the PLACEHOLDER-CLASS issue was essentially due to a deadlock when trying to load the referenced actors resulting in a placeholder, likely due to circular references.

So I went through my reference viewer for the problematic asset and started to look for circular references:

I fixed a bunch of them, frequently saving and restarting the editor to see if anything had changed, and after fixing the one shown above (I basically just had to clear the default settings of one of my blueprint structs–it contained references to an actor which referenced the corrupt blueprint) I was able to save and reopen the blueprint and have my changes to the problematic blueprint save without any reverting issues.

TLDR: Blueprints reverting to PLACEHOLDER-CLASS or issues with Structures repeatedly breaking on editor restarting (sometimes marked by an engine crash when you close the editor) in my case was due to CIRCULAR REFERENCES causing a deadlock when trying to load the referenced classes. This was NOT an issue in 5.4 – it only started happening in 5.5.