lnd/input
Olaoluwa Osuntokun 60b3d2c99e input: thread script options through taproot HTLC functions
This commit extends the taproot HTLC script generation functions to accept
TaprootScriptOpt parameters, enabling callers to specify whether production
or staging script variants should be generated. The SenderHTLCScriptTaproot
and ReceiverHTLCScriptTaproot functions now accept a variadic opts parameter
that is forwarded to the underlying script tree construction.

This change provides the necessary infrastructure for the wallet and contract
resolution systems to generate the appropriate script trees based on channel
type. Production taproot channels can now pass the WithProdScripts() option
to generate optimized scripts using OP_CHECKSIGVERIFY, while staging channels
continue to use the existing development script structure.

The modification maintains backward compatibility by making the opts parameter
variadic with sensible defaults. Existing callers that do not specify options
will continue to generate staging scripts as before, ensuring no disruption
to current functionality while enabling future production script support.
2026-04-13 12:17:56 -07:00
..
fuzz_script_is_op_return_test.go input: add new ScriptIsOpReturn helper func 2025-03-18 11:44:20 -05:00
input.go input: add production taproot HTLC succeed input constructor 2026-04-13 12:17:55 -07:00
mocks.go input+signrpc+lnwallet+multi: implement combined nonce support 2025-12-10 07:15:06 +02:00
musig2.go input+signrpc+lnwallet+multi: implement combined nonce support 2025-12-10 07:15:06 +02:00
musig2_session_manager.go input+signrpc+lnwallet+multi: implement combined nonce support 2025-12-10 07:15:06 +02:00
musig2_test.go multi: add version to MuSig2 API, bump btcd/btcec to v2.3.2 2023-02-03 18:30:10 +01:00
script_desc.go lnwallet: add Tree() method, fix formatting 2024-08-23 10:58:13 +02:00
script_utils.go input: thread script options through taproot HTLC functions 2026-04-13 12:17:56 -07:00
script_utils_legacy_test.go input: add template vs builder byte-for-byte equivalence tests 2026-03-11 19:36:09 -05:00
script_utils_template_equiv_test.go input: add template vs builder byte-for-byte equivalence tests 2026-03-11 19:36:09 -05:00
script_utils_test.go input: thread script options through taproot HTLC functions 2026-04-13 12:17:56 -07:00
signdescriptor.go contractcourt: update UTXO nursery to support taproot chans 2023-08-22 16:33:42 -07:00
signdescriptor_test.go multi: use btcd's btcec/v2 and btcutil modules 2022-03-09 19:02:37 +01:00
signer.go signer: fix comment about p2tr in ComputeInputScript 2022-06-29 18:28:59 +02:00
size.go input: add production taproot witness types for final channels 2026-04-13 12:17:55 -07:00
size_test.go input: add production taproot witness types for final channels 2026-04-13 12:17:55 -07:00
taproot.go input: switch to using new txscript.ScriptTemplate function 2026-03-10 20:32:17 -05:00
taproot_test.go input: add template vs builder byte-for-byte equivalence tests 2026-03-11 19:36:09 -05:00
test_utils.go input+wallet: extract musig2 session management into new module 2023-08-22 16:30:39 -07:00
txout.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
txout_test.go multi: move Input interface and related code 2019-01-31 13:25:33 +01:00
witnessgen.go input: add production taproot witness types for final channels 2026-04-13 12:17:55 -07:00