I don’t know the Go answer, but this problem exists in other languages and platforms. It can be incredibly annoying when the http client library doesn’t support unwrapping, even with generics.
If you need the subfield to have a name based on the type, you’re going to need introspection / code generation.
Noooo, you don’t understand, we just have to never make this mistake again and then there won’t be anymore regressions!