TCP waits until it has received three duplicate ACKs before performing a fast retransmit. Why do you think the TCP designers chose not to perform a fast retransmit after the first duplicate?
Whenever an out-of-order section with something like a higher than usual amount of sequences appears at the recipient, the discrepancy is observed.
The receiver will then try to send a redundant ACK for either the component issued.
A distributor also automatically sends a considerable number of pieces. If one section is missing, then there would be several repeated ACKs away-to-back.
TCP architects decided to wait for 3rd acceptance rather than quick bandwidth throttling to prevent redundant package propagation.