docs: private void groomTruncationSnapshots() {
          ArrayList<TruncationSnapshotAttempt> toDelete = new ArrayList<TruncationSnapshotAttempt>();
          boolean foundMostRecentSuccess = false;
          Iterator<Map.Entry<Long, TruncationSnapshotAttempt>> iter =
              m_truncationSnapshotAttempts.descendingMap().entrySet().iterator();
          loggingLog.info("Snapshot daemon grooming truncation snapshots");
          while (iter.hasNext()) {
              Map.Entry<Long, TruncationSnapshotAttempt> entry = iter.next();
              TruncationSnapshotAttempt snapshotAttempt = entry.getValue();
              if (!foundMostRecentSuccess) {
                  if (snapshotAttempt.finished) {
                      loggingLog.info("Found most recent successful snapshot txnid " + TxnEgo.txnIdToString(entry.getKey())
                              + " path " + entry.getValue().path + " nonce " + entry.getValue().nonce);
                      foundMostRecentSuccess = true;
                  } else {
                      loggingLog.info("Retaining possible partial snapshot txnid " + TxnEgo.txnIdToString(entry.getKey())
                              + " path " + entry.getValue().path + " nonce " + entry.getValue().nonce);
                  }
              } else {
                  loggingLog.info("Deleting old unecessary snapshot txnid " + TxnEgo.txnIdToString(entry.getKey())
                          + " path " + entry.getValue().path + " nonce " + entry.getValue().nonce);
                  toDelete.add(entry.getValue());
                  iter.remove();
              }
          }
  
          String paths[] = new String[toDelete.size()];
          String nonces[] = new String[toDelete.size()];
  
          int ii = 0;
          for (TruncationSnapshotAttempt attempt : toDelete) {
              paths[ii] = attempt.path;
              paths[ii] = SnapshotUtil.getRealPath(SnapshotPathType.valueOf(attempt.pathType), paths[ii]);
              nonces[ii++] = attempt.nonce;
          }
  
          Object params[] =
              new Object[] {
                  paths,
                  nonces,
                  SnapshotPathType.SNAP_CL.toString()
                  };
          long handle = m_nextCallbackHandle++;
          m_procedureCallbacks.put(handle, new ProcedureCallback() {
  
              @Override
              public void clientCallback(ClientResponse clientResponse)
                      throws Exception {
                  if (clientResponse.getStatus() != ClientResponse.SUCCESS) {
                      SNAP_LOG.error(clientResponse.getStatusString());
                  }
              }
  
          });
          m_initiator.initiateSnapshotDaemonWork("@SnapshotDelete", handle, params);
      }