I think one sudo script to gather all the info. Then you can have one sudo script to fix problems. Or one sudo per OS if you really want to split them up. Or give the user a choice - fix all or fix one at a time.yes, I want to combine the user interaction to one window per OS.
I would like to have a scrollable dialog in AppleScript, but this is not available without extensions. In case you know a failsave method what is compatible for all the OS versions I would like to add it. Somewhere I limited display to x lines for dialog text, need to check that again.
Also I did not find a method to check if sudo is still cached. As each do shell script command in AppleScript has its own ID I can not detect if the next command uses the cached password.
Maybe just make a boolean if the dialog was presented the first time. I do want to explain why the user has to give an admin password, of course.
Regarding the UI: Maybe see how OCLP uses python for its UI? I think it uses wxPython? That project might be a little large for this simple mount, compare, and fix task.
There's a scrollable list for AppleScript:
https://www.macscripter.net/t/how-to-create-a-display-dialog-with-scrollbars/71688/4
Here's a dialog with scrollable text (click the "★Click Here to Open This Script" button):
http://piyocast.com/as/archives/6695