I have a GL.iNet GL-MT6000, works great. not sure about newer models but people generally seem to like their higher end ones
it ships with almost vanilla openwrt, and it's easy to install an upstream build if you'd like. the big advantage of GL.iNet is that it's officially supported, so I've been able to send emails to support about openwrt stuff and they've been helpful
AdGuard works great and is built in to their version, so you wouldn't even need the separate device for pihole
I also like supporting a company that supports oss software
early js/html liked to do something in all cases instead of throwing or whatever. I think it's mostly just a collection of them trying to do something smart on nonsense input and not being consistent about it.
side note, I'm so excited for Temporal, some browsers already support it and you can polyfill for the rest.