RE the salt comments and corrosion, this archived article might be useful for you all to read:
August 2006 - Car Clinic - Times Online
"The bonnet catch is exposed to salt and grime from the road surface. As a result it can stick in the open position unless it’s regularly greased and, if necessary, cleaned. After a few cases of bonnets flying open, Alfa did issue an instruction to dealers to check the catch, clean it up (or replace it if it was excessively corroded) and then make sure it is regularly checked and greased (i.e. at every service). This regular check and lubrication is vital. The fact that your car has been “done” simply indicates that the catch was checked, cleaned and lubricated at the time. After that, the important thing is regular maintenance to keep it free of salt and well greased, which is down to whoever services the car. If it’s the local dealer, go back and talk to them, but it’s their liability, not Alfa’s, if the catch wasn’t greased in line with Alfa’s instruction."
As you can see it "could" be a contributable factor behind the incidents we experienced, but still not the only one! Thinking this through I think there are numerous factors, maintenance / lub of bonnet catches, weather conditions, corrosion etc etc - ultimately all should be resolved if the bonnet catches are 'well maintained' - isn't this the responsibility of the servicing garage when a car is brought it for servicing?????