Well, lets analyze this problem more thoroughly so you can see the problem as i see it:
When a super force blueprint building is used, it is expected that after all intermediate state is resolved (entities to be removed being removed, entities to be upgraded being upgraded, ghosts being built etc) you will get all the entities as in the blueprint with all the settings as in the blueprint. That means you will not have to restamp a blueprint and a subsequent super force building should result in no entity changes and no settings changes. There is always at least one way to achieve this exact behavior, and it is to order removal of the colliding entity and placing a ghost of the new entity. Entity in the ghost is of the correct type and as such can store all settings of the new entity.
Solution 1 was that since a container can be upgraded to a logistic container, an upgrade of entity was ordered. This creates a bug because original entity is unable to store settings of the target entity which resulted in
116130 (in some cases they may be completly different entities with no common parts). This behavior was changed to a solution 2.
Solution 2 is what there is currently here: since a container is unable to hold some parameters of a storage chest, a deconstruct+ghost is performed. When this is resolved all entities have correct settings and so it counts as a success. Players however seem to not like this behavior, and so we got some bug reports (
131712,
131794).
Lets assume that current solution is indeed broken: a container must be ordered to upgrade to a storage chest, and settings must be preserved. Since upgrade will be resolved in the future game tick once a construction robot arrives, that means the settings for the new entity must be stored somewhere. This would require attaching a special "upgrade with settings" object to the entity being upgraded. This is technically doable, all the settings could be stored in an invisible entity copy that would be attached to the old entity, but this creates at least 2 new problems: first is that those new settings would be hidden, which means if you open an iron-chest before it is upgraded you would not see a storage chest's filter and so you could not interact with it. Now lets say you start changing settings of this iron-chest before it is fully upgraded, for example you change inventory bar to limit usable inventory down to 1 stack. This creates a second problem: when entity is finally upgraded by a construction robots, you get 2 sets of settings that now need to be merged: some settings from the old entity (inventory bar) and some settings from the new entity (storage chest filter). Deciding how to merge those settings would be a hive of bugs because there would be always some weird situation where either you expect new settings in the old entity to be picked (since they are newer than ones from blueprint) but settings from blueprint were selected, or the other way around where settings from blueprint should be selected since they were not present in the original entity but there was a special copy settings case that makes the settings to paste.
This solution would also create a lot of problems with modding api since mods would need to be given access to the new settings to be applied to the entity but it would have to be done in a way that does not allow other interactions with the entity. Lets say a mod would make a chest to be upgradeable to an inserter with custom vectors. While an upgrade is pending a mod would want to change pending inserter's custom vectors. So far the only way such settings can be provided is through an entity ghost, and look, current solution with deconstruct+ghost does exactly that, gives you a ghost with all the settings of the new entity.
There are in general 3 possible paths to choose here: solution 2 (that players dislike), solution 3 (that would create a lot of corner cases to handle) and a nuclear solution of removing super force blueprint building which would make everyone mad. In my opinion a solution 2 is the correct one and i am willing to ignore player's complaints about temporary state (items being expelled from the entity to be upgraded) since they are... temporary, and once construction robots are done with their stuff you end up with your blueprint placed as it was supposed to be.
Honestly i would be in favor of always solving super force blueprint building with a deconstruct+ghost. Lets say you are stamping some complex mall on top of a smelter stack. Just because some belts can be upgraded to a better tiers of belts would allow skipping upgrade of some entities, but that still makes it possible for some belts to align and you will end up with some iron-ore on an incorrect belt causing the stamped blueprint to not work properly. If all entities would be always deconstructed and then ghosts would be placed then all items from all belts would be removed and this trap would have been avoided. Look, this is just doable right now if you first deconstruct everything and then place a blueprint, no need for super force blueprint building. Maybe the nuclear solution would not be that bad after all?