@Test void readSpan_localEndpoint_noServiceName() {
    String json = """
      {
        "traceId": "6b221d5bc9e6496c",
        "name": "get-traces",
        "id": "6b221d5bc9e6496c",
        "localEndpoint": {
          "ipv4": "127.0.0.1"
        }
      }
      """;

    assertThat(SpanBytesDecoder.JSON_V2.decodeOne(json.getBytes(UTF_8)).localServiceName())
      .isNull();
  }
Particular, thrift can mistake malformed content as a huge list. Let's not blow up.
zipkin/src/test/java/zipkin2/codec/SpanBytesDecoderTest.java