The whole system failed.
No Flight Data Analysis Program which could have spotted a pattern of unstabalised approaches and alerted the training department to do something about it.
Chief Pilot either not aware of unsafe operations or turning a blind eye.
Regulator, as above
Inadequate CRM training
Inadequate aircraft training
Poor checking and testing
Poor maintenance
Etc etc etc
In this case there were more holes than cheese and it was almost impossible for them not to line up.
BTW Garuda are one of the better Indonesian operators.