@Test void traceIdIsOpaque() {
    List<DependencyLink> links = new DependencyLinker().putTrace(TRACE).link();

    List<Span> differentTraceId = TRACE.stream()
      .map(s -> s.toBuilder().traceId("123").build())
      .collect(toList());

    assertThat(new DependencyLinker().putTrace(differentTraceId).link())
      .containsExactlyElementsOf(links);
  }
Trace id is not required to be a span id. For example, some instrumentation may create separate
trace ids to help with collisions, or to encode information about the origin. This test makes
sure we don't rely on the trace id = root span id convention.
zipkin/src/test/java/zipkin2/internal/DependencyLinkerTest.java