Portal Community
This node is otherwise complete. Unlike a typical roadmap page, most of the write path (the full PSBT pipeline, BIP-137 message signing) is already implemented and shipped — this page covers the specific gaps that remain, not a wish list of unstarted features.

Taproot Script-Path Spend (psbt/buildTaprootScriptPathInput)

NBitcoin's PSBTInput type has no leaf-script/control-block fields the way it does for key-path Taproot — confirmed against real NBitcoin source, not assumed. This operation's actual mechanism (likely building the final witness directly via TaprootSpendInfo/ControlBlock rather than a normal PSBTInput field-attach) needs a dedicated spike before it can ship safely.

What works todayWhat doesn't
Key-path Taproot (P2TR) signing via psbt/build + psbt/sign — fully implementedTaproot script-path spends via psbt/buildTaprootScriptPathInput — timelock-leaf case is best-effort only; script-multisig-leaf fails fast with PSBT_TAPROOT_SPIKE_PENDING

Test Coverage

There is no Tests/ project for this node yet — this is a from-scratch implementation, not ported from an existing test suite. Adding unit/integration test coverage (especially around the PSBT pipeline's fund-safety checks and coin selection) is planned.

Documentation Gaps

Two design documents referenced by the implementation are planned but not yet written: INFRASTRUCTURE_ErrorCodes.md and INFRASTRUCTURE_EsploraClient.md. The error codes and Esplora endpoint shapes they'd cover are documented inline in code instead — see Troubleshooting for the practical error-code reference in the meantime.

Operational Scaling: Distributed UTXO Reservation

UtxoReservationHelper is currently an in-memory, single-process store. It does not coordinate UTXO reservations across multiple horizontally-scaled instances of this node. This is an operational-efficiency gap, not a fund-safety one — psbt/finalize re-validates every input UTXO is still unspent immediately before finalizing regardless, and Bitcoin's own consensus rules are the actual backstop against a double-spend. Before scaling this node horizontally in production, back this helper with a distributed lock (Redis or SQL Server) to avoid redundant build-then-fail races across instances.

Want to help close these gaps? Track progress via the BizFirst.Ai team, or discuss at community.bizfirstai.com.