Auto upgrade works fine. It has to loop through every building block connected to the TC which means, if you're only wanting a certain chunk upgraded you'll have to wait for it to do its thing until it gets to those blocks. Instead of looping and running the checks until it finds a block to upgrade it does it in tasks to avoid performance degradation.
As for the upkeep repair, I'll need to look into that.