The problem is, when an external contractor, for example, damages the window and there are no witnesses or confessions, it becomes difficult to prove who is at fault. Especially since it is obvious that the windows already had pre-existing damage. Who is supposed to have caused which scratch (and at what compensation value)?
We also had a damage case (single trade contract) on the wrapping that was quite clearly caused by the plasterer. No other trades were present that day, and the spot matched the work carried out. Still, everything was denied. Of course, I deducted something from the invoice, he made quite a fuss but left it at that. I probably can no longer hope for warranty from him if something happens.
The missing spot was concealed by the window fitter with a paint pen. That’s okay. They can also do wrapping on-site, but of course that costs quite differently.
In your situation, it will be really difficult anyway because the windows were already crap.
How could something like this have been prevented?
Acceptance of the windows immediately after installation involving the general contractor. So everyone is clear whether there are pre-existing damages or not. If something happens afterward, it is at least harder to deny responsibility. If then no one is at fault, it might possibly be covered by the construction all-risk insurance because the window is already firmly connected to the building and in the client’s risk area.
My window fitter insisted on such an appointment himself, because especially in the era of wrappings, something (visible) always happens.