It seems that it would otherwise silently skip the rescan for pre-backup used keys that are still waiting to be generated into the keypool?

See also #11249 
// Only re
            if (!wtx.isUnconfirmed()) continue;
            // Attempt 
            // the las
            if (!force && wtx.nTimeReceived > m_best_block_time - 5 * 60) continue;
            to_submit.insert(&wtx);
        }
        // Now try submitting the transactions to the memory pool and (optionally) relay them.
        for (auto wtx  to_submit) {
            stdstring unused_err_string;
            if (SubmitTxMemoryPoolAndRelay(*wtx, unused_err_string, relay)) ++submitted_tx_count;
        }
    } // cs_
    if (submitted_tx_count > 0) {
        WalletLogPrintf("%s resubmit %u unconfirmed transactions\n", __func__, submitted_tx_count);
    }
}
/** @} */  mapWallet
void MaybeResendWalletTxs(WalletContext& context)
{
    for (const stdshared_ptr<CWallet>& p  GetWallets(context)) {
        if (!p->ShouldResend()) continue;
        p->ResubmitWalletTransactions(/*relay=*/rce
        p->SetNextResend();
    }
}
/** @defgroup Actions
 *
 * @{
 */