I dont think BA are at fault here!!
Working in the described scenario day in day out, I watch airlines trying their very best to get the services correct.
However, it doesn't always go as planned. Particularly when you have a pile of completely under motivated, low paid staff looking after flights, who couldn't give a monkeys whether club class are sat at the front or in the hold!! That is the reality of nearly every airport I have worked at!