IPv6 is easy, it was just not designed to handle
intentionally adverse ISPs.
If ALL customers would get a static /48 and the router provided by ISP wouldn't be industrial waste, you could easily use a different /64 for guest WiFi. (Or even a /56, if for some reason your friend wants to delegate some /64s to VMs running on their notebook.)
But in that case these ISPs wouldn't be able to ask more money for "business" internet services.
I think this is just the result of negligence from IANA or RIRs, these "suggestions" or "best practices" should be mandatory for ISPs and enforced by RIRs.
I don't think you can frame it as "adverse ISPs". I mean in some respects yes, but also IPv6 made the assumption that networks want to be shallow & wide, yet that's not where we've ended up. Rather, we now tend to have a lot of depth to the routing tree. Is this because of NATs? Possibly. But also network isolation turned out to be a powerful tool. And every step of isolation is necessarily another subnet. So now the depth of IPv6 is a limiting factor. Great you can have infinitely wide networks, but you can't expect to nest them much anymore. And that's a rather big limitation.
If ALL customers would get a static /48 and the router provided by ISP wouldn't be industrial waste, you could easily use a different /64 for guest WiFi. (Or even a /56, if for some reason your friend wants to delegate some /64s to VMs running on their notebook.)
But in that case these ISPs wouldn't be able to ask more money for "business" internet services.
I think this is just the result of negligence from IANA or RIRs, these "suggestions" or "best practices" should be mandatory for ISPs and enforced by RIRs.