After a couple hours of very less-coding and more-pacing-and-thinking I've wrangled the blockers and have started on actual implementation of the cluster autoscaler.
I can see a couple spots that are going to get much more complex - caching informers, backoffs, tracking desired state, and background reconciliation loops.
Exciting at least! Working for hours to change a handful of lines is ....rewarding but also uncomfortable.