Just did a quick look at your files:
You didn’t set the “Primal Game Data Override” in your Levels World Setting(doubleclick the Level and the world settings panel should open on the right panel, if not go to “Window” and check “World Settings”):

You need to set that to “PrimalGameData_BP_LaserCannon”. It is still pointing to the GenericMod PrimalGameData.
In your PrimalGameData you added your new item to the “Master Item List”, you should not do that if you want your mod to be compatible with game updates. If you add to the “Master Item List” array, everytime there are new items added in the base game you will have to update your mod with the new items(and that might not even be possible since the devkit is usually versions behind). Same thing applies for your new EngramEntry, you dont want to add that to the “Engram Blueprint Classes” array.
To avoid that there are other arrays specifically for modding.
The EngramEntry would go in “Additional Engram Blueprint Classes” and your “StructureLaserCannonBaseBP”(not the primalitem) in “Additional Structures to Place”.
Also noticed your gamemode is named “TestGameMod_LaserCannon”.
I don’t know if the prefix matters for the gamemode but i would recommend renaming it to “TestGameMode_LaserCannon”, just to avoid possible problems.
Hope this helps.