Okay I think I've found the issue
At initialization I had a loop running through each expansion and checking if it was out of date with server calls. Because this loop takes a few seconds, sometimes I'd be clicking the update button before the full list of outdated libraries had been populated.
t shirt time 😄