From 4b1f2a079e4d14fcff472c65547ce9afc047487b Mon Sep 17 00:00:00 2001 From: Sangbida Chaudhuri <101164840+sangbida@users.noreply.github.com> Date: Tue, 13 Jan 2026 22:52:12 +1030 Subject: [PATCH] lightningd: use BIP86 derivation for P2TR in HTLC rebroadcast change outputs --- lightningd/onchain_control.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lightningd/onchain_control.c b/lightningd/onchain_control.c index 1e04cebd5..8d7f99f4e 100644 --- a/lightningd/onchain_control.c +++ b/lightningd/onchain_control.c @@ -1154,7 +1154,12 @@ static bool consider_onchain_htlc_tx_rebroadcast(struct channel *channel, if (!amount_sat_eq(change, AMOUNT_SAT(0))) { /* Append change output. */ struct pubkey final_key; - bip32_pubkey(ld, &final_key, channel->final_key_idx); + /* Use BIP86 derivation for P2TR if available, otherwise BIP32 */ + if (ld->bip86_base) { + bip86_pubkey(ld, &final_key, channel->final_key_idx); + } else { + bip32_pubkey(ld, &final_key, channel->final_key_idx); + } psbt_append_output(psbt, scriptpubkey_p2tr(tmpctx, &final_key), change);