Attached replay is an example. A larva is given a morph Hydra command on frame 6051, but is then given a stop command on the same frame. This causes the resources for the Hydra morph to be consumed which is in line with 1.16.1 behavior; however, the Zerg_Hydralisk unit type hangs in the building_queue on the larva, so when the command is issued later to the same larva, it has a build_queue of size 2 which shouldn't happen. This causes the unit to still have a build_queue of 1 as a Hydralisk, so when it is issued a morph lurker command later, Zerg_Lurker is the second element in the build_queue, so it hatches into a Hydralisk, the first element, instead of a Lurker.
I have a fix for this that I will put as a Pull Request that maintains the 1.16.1 behavior of eating resources, but restores the 1.16.1 behavior of the build_queue not getting extra entries and then breaking Lurker morphs.
8546880783147.zip