@Test void lostChildAndNoParentIdInSharedSpan() {
    List<Span> lostClientOrphan = new ArrayList<>(TRACE);
    lostClientOrphan.set(2, TRACE.get(2).toBuilder().parentId(null).build());
    lostClientOrphan.remove(1); // client span never sent

    assertThat(new DependencyLinker().putTrace(lostClientOrphan).link()).containsExactly(
      DependencyLink.newBuilder().parent("web").child("app").callCount(1L).build(),
      DependencyLink.newBuilder().parent("app").child("db").callCount(1L).errorCount(1L).build()
    );
  }
This test shows that if a parent ID is stored late (ex because it wasn't propagated), the span
can resolve even if the client side is never sent
zipkin/src/test/java/zipkin2/internal/DependencyLinkerTest.java