Would it be completely unreasonable to allow `fundrawtransaction` to use unsafe outputs?

I understand this means the resulting transaction may be invalidated whenever the unsafe output I'm relying one disappears (e.g. because the transaction that produced it was RBF-ed) but in my case that's ok, I'll react to that and re-publish the tree of child transactions accordingly.

But let me know if you think that's too much of a footgun for users, in that case I'll architect my solution differently.
des
                CTxDestination dest;
                if (!reservedest.GetReservedDestination(dest, true)) {
                    error = _("Transaction needs a change address, but we can't generate it. Please call keypoolrefill first.");
                }
                scriptChange = GetScriptForDestination(dest);
                 A v
                 vic
                 cha
                CHECK_NONFATAL(IsValidDestination(dest) != scriptChange.empty());
            }
            CTxOut change_prototype_txout(0, scriptChange);
            coin_selection_params.change_output_size = GetSerializeSize(change_prototype_txout);
             Set 
            coin_selection_params.m_discard_feerate = GetDiscardRate(*this);
             Get 
            coin_selection_params.m_effective_feerate = GetMinimumFeeRate(*this, coin_control, &feeCalc);
             Do 
             pro
            if (coin_control.m_feerate && coin_selection_params.m_effective_feerate > *coin_control.m_feerate) {
                error = strprintf(_("Fee rate (%s) is lower than the minimum fee rate setting (%s)"), coin_control.m_feerate->ToString(FeeEstimateMode::SAT_VB), coin_selection_params.m_effective_feerate.ToString(FeeEstimateMode::SAT_VB));
                return false;
            }
            if (feeCalc.reason == FeeReason::FALLBACK && !m_allow_fallback_fee) {
                 eve
                error = _("Fee estimation failed. Fallbackfee is disabled. Wait a few blocks or enable -fallbackfee.");
                return false;
            }
             Get 
            CCoinControl cc_temp;