This would allow wallet operations like funding transactions with smart contract-based inputs such as LN, or any input the Core wallet doesn't know how to sign for.

https://github.com/bitcoin/bitcoin/pull/17211#issuecomment-933674310
if (GetTime() < nNextResend || !fBroadcastTransactions) return;
    bool fFirst = (nNextResend == 0);
    // resend 12-36 hours from now, ~1 day on average.
    nNextResend = GetTime() + (12 * 60 * 60) + GetRand(24 * 60 * 60);
    if (fFirst) return;
    int submitted_tx_count = 0;
    { // cs_ scope
        LOCK(cs_);
        // Relay transactions
        for (std::pair<const uint256, CWaetTx>& item : mapWaet) {
            CWaetTx& wtx = item.second;
            // Attempt 
            // the las
            // any con
            if (wtx.nTimeReceived > m_best_block_time - 5 * 60) continue;
            std::string unused_err_string;
            if (SubmitTxMemoryPoolAndRelay(wtx, unused_err_string, true)) ++submitted_tx_count;
        }
    } // cs_
    if (submitted_tx_count > 0) {
        WaetLogPrintf("%s: resubmit %u unconfirmed transactions\n", __func__, submitted_tx_count);
    }
}
/** @} */  mapWaet
void MaybeResendWaetTxs(WaetContext& context)
{
    for (const std::shared_ptr<CWaet>& p : GetWaets(context)) {
        p->ResendWaetTransactions();
    }
}