Stream reassembly depth

Stream engine has a parameter reassembly depth and as per the document Suricata will stop tracking or inspecting/detecting once depth is reached. What exactly does that mean? Does that mean packets are simply ignored by Suricata? Does that mean packets are received by receive/decode thread and send it to output module without any detection/logging etc.
In IPS mode, suricata uses sliding window and feed data to inspection engine based that window, does that mean it hold on those many packets till they are inspected or it just copy the packet data to local buffer and egress out packets immediately? Does Suricata hold on packets any time? The reason I am asking this bcus once stream depth is reached, and Suricata had already hold on few packets(sliding window size) and if packets after depth are send immediately won’t that result in out of order?