out of curiosity, how you manage to get the first key, instead of the last? Because it seems to me, it would be less logic/ easier for a parser to always return the last.
First key comes up with a 3rd party performance library for go.. If you are parsing a stream, etc, it is always possible to have situations where you can stop reading when you get a first answer, but then you don't really know if the stream is valid JSON at all.