How on earth could it get that bad?
All too easy.
Firstly you get your regular progress meetings attended by as high a person as you possibly can. This has two main consequences:
1) The meeting gets attended be second tier first-tier wannabees who see the easiest way up the tree is to YesMan their way up on the coattails of the superiors
2) the more 'important' people attend the fewer tech staff can attend and it becomes a management review.
Management are more easily distracted by shiny things so show them a nice interface. Whereas techs will ask awkward questions about actual function, tests, simulations etc
This goes against the usual rule of thumb for normal development which is never show management a working interface as they will assume that everything is complete. Also, never show coders a fully working back-end as they will assume it all works.
Next, keep fudging until the boss and minions are so far in that they cannot report the issues without landing themselves neck deep in the warm, brown and smelly stuff. Then starts the frantic firefighting and genuine teamwork between client and consultants trying to patch everything and hope they can fix it before anyone notices (similar to the morning after a teenage party when the parents are coming home later in the day and there is a panic trying to prop up three legged horse ornaments or gluing a vase back together with toothpaste).
Then people start looking for new jobs as part of their normal 'career development'. The replacement team comes in, smells something wrong and starts finding vomit in the sock drawer, the whisky bottles all seem to be filled up to the previous level with cold tea* and teenager insists that the TV always had that funny blue bit in the corner.
Oddly enough, over the years, I have been the teenager and the parent and the replacement team member in this scenario.