docs: private boolean checkMisroutedIv2IntiateTaskMessage(Iv2InitiateTaskMessage message) {
          if (message.isForReplica()) {
              return false;
          }
  
          if (m_scheduler.isLeader() && m_migratePartitionLeaderStatus != MigratePartitionLeaderStatus.TXN_RESTART) {
              //At this point, the message is sent to partition leader
              return false;
          }
  
          //At this point, the message is misrouted.
          //(1) If a site has been demoted via @MigratePartitionLeader, the messages which are sent to the leader will be restarted.
          //(2) If a site becomes new leader via @MigratePartitionLeader. Transactions will be restarted before it gets notification from old
          //    leader that transactions on older leader have been drained.
          InitiateResponseMessage response = new InitiateResponseMessage(message);
          response.setMisrouted(message.getStoredProcedureInvocation());
          response.m_sourceHSId = getHSId();
          deliver(response);
          if (tmLog.isDebugEnabled()) {
              tmLog.debug("Sending message back on:" + CoreUtils.hsIdToString(m_hsId) + " isLeader:" + m_scheduler.isLeader() +
                      " status:" + m_migratePartitionLeaderStatus + "\n" + message);
          }
          //notify the new partition leader that the old leader has completed the Txns if needed.
          notifyNewLeaderOfTxnDoneIfNeeded();
          return true;
      }