@Linda-And-Robert0 Airbnb does have a "potential for noise" disclaimer that you can add to the "Things to Know" tab that appears to guests during the booking process. I actually recommend that all hosts who live in any proximity to a street or other houses use this; it's amazing how many people even in the middle of a major city believe they are entitled to silence.
If your guests are unhappy with something that you have no way to fix, and it's clear that they would like to end their stay early, either party can go to the "Change or Cancel" button under the Reservations tab and change the checkout date to the current date. You can choose to refund the unused nights, as @Ana1136 said, and by doing it this way you don't have to get Airbnb involved. However, I'd be very wary of guests who demand compensation before it's offered and still choose to stay. No matter how much money you throw at them, it's not going to buy a better review; it only encourages them to find more faults and make more demands once they know they have you cornered. If neither the stay nor the roof repair are complete. the best thing you can do is help your guests move on to somewhere quieter.