I expected to see a description of what happens when the ctx parameter is done, to help get some insight into #46520.
Is ctx used at all after Listen returns? It a typical API it would not be, but this appears to be retrofitting a Context into the existing net.Listener interface in some fashion, so I don't really know. (I tried reading the source code, but the ctx parameter is passed through an awful lot of helper-functions and network-abstraction interfaces.)
What did you see instead?
No mention whatsoever of the ctx parameter or its semantics:
Listen announces on the local network address.
See func Listen for a description of the network and address parameters.
The context argument is not used for anything after Listen returns. It's there to permit an early return for a DNS lookup, and because functions like internetSocket take a context argument even though it won't be used for the particular case of Listen.
I'd welcome the documentation of context. Personally, I dislike the fact that the go ecosystem at large tends to throw in a context without clear documentation on how the context will be used. Sometimes this creates ambiguity briefly touched in this blog post: https://go.dev/blog/context-and-structs