Overview
Project tracking and implementation status of interactive transaction construction, dual-funding (V2 channel establishment), channel quiescence, and splicing.
Specifications:
Wire messages
Interactive Transaction Construction
Dual-funding (V2 channel establishment)
0. Refactoring
1. Accept dual-funded channels
2. Accept dual-funded channels with contributions
3. Create & accept dual-funded channels
4. RBF support
Dual-funding implementation phase feature table
🟢 = supported
🔴 = unsupported
| Impl. phase | Accept V2 | Create V2 | RBF | Contribute funds |
|---|
| 1. Accept V2 channels | 🟢 | 🔴 | 🔴 | 🔴 |
| 2. Accept V2 channels w/con | 🟢 | 🔴 | 🔴 | 🔴 |
| 3. Create V2 channels | 🟢 | 🟢 | 🔴 | 🟢 |
| 3. RBF support | 🟢 | 🟢 | 🟢 | 🟢 |
Channel quiescence
Splicing
Draft/Prototype PRs
Use case phases status
| Use case phase | branch or draft PR | merged/pending PRs |
|---|
Initial handshake, splice_init, splice_ack | main | #3407#3647 |
Tx negotiation, tx_add_input, tx_add_output | #3715 | #3443 |
Tx negotiation completion, final tx_complete's | #3444 | - |
| Commitment exchange | #3274 | - |
tx_signatures exchange, funding tx broadcast | #3274 | - |
splice_locked exchange, after confirmation | #3274 | - |
0. Preparations
1. Basic implementation
2. Additional features
- Integrate quiescence
- Splice on V1 channel
- RBF support
- Allow payment during pending splice
- Support splice-out
- Contributions from the acceptor
- Handle interruptions and restarts
- Work with other implementations
Overview
Project tracking and implementation status of interactive transaction construction, dual-funding (V2 channel establishment), channel quiescence, and splicing.
Specifications:
Wire messages
OptionalFieldand makeDataLossProtectfields mandatory #2253Interactive Transaction Construction
Dual-funding (V2 channel establishment)
0. Refactoring
ChannelintoInbound/Outboundchannels #20771. Accept dual-funded channels
2. Accept dual-funded channels with contributions
3. Create & accept dual-funded channels
4. RBF support
Dual-funding implementation phase feature table
🟢 = supported
🔴 = unsupported
Channel quiescence
Splicing
Draft/Prototype PRs
ChannelContextvia cloning (not for merging). Currently splicing use case works up to exchange oftx_complete's, but notcommitment_signed.ChannelContextduplication. Currently splicing use case works up to the firsttx_complete.Use case phases status
splice_init,splice_acktx_add_input,tx_add_outputtx_complete'stx_signaturesexchange, funding tx broadcastsplice_lockedexchange, after confirmation0. Preparations
splicingcompile feature flag #3294 )funding_transactionfor the later lifecycle of the channel #3317) ([Splicing] Make funding transaction available in funded channel #3300 )1. Basic implementation
2. Additional features