@@ -369,8 +369,8 @@ secure in all contexts.
369
369
Since the ` initiator ` is the one that is responsible for paying the fees for the
370
370
kickoff transaction if it is required (like for certain ` channel_type ` changes),
371
371
it follows that the ` responder ` cannot change the ` channel_type ` . Since the
372
- ` kickoff_feerate ` paid by the ` initiator ` , it should be set only if the sender
373
- is the ` initiator ` .
372
+ ` kickoff_feerate ` is paid by the ` initiator ` , it should be set only if the
373
+ sender is the ` initiator ` .
374
374
375
375
The requirement for a node to remember what it last _ sent_ and for it to
376
376
remember what it _ accepted_ is necessary to recover on reestablish. See the
@@ -389,13 +389,15 @@ accepted the proposal.
389
389
390
390
The sending node:
391
391
- MUST set ` channel_id ` to a valid channel it has with the recipient.
392
- - MUST NOT send this message if it has not received a ` dyn_propose `
392
+ - MUST NOT send this message if it has not received a ` dyn_propose ` for this
393
+ ` channel_id `
393
394
- MUST NOT send this message if it has already sent a ` dyn_ack ` for the
394
395
current negotiation.
395
396
- MUST NOT send this message if it has already sent a ` dyn_reject ` for the
396
397
current negotiation.
397
398
- MUST remember the parameters of ` dyn_propose ` message to which the ` dyn_ack `
398
- is responding for the next ` dyn_height ` .
399
+ is responding for the next ` dyn_height ` . (See ` channel_reestablish `
400
+ requirements)
399
401
- MUST remember the local and remote commitment heights for the next
400
402
` dyn_height ` .
401
403
@@ -443,8 +445,6 @@ The sending node:
443
445
- Example: an objection to the ` dust_limit ` would be encoded as
444
446
0b00000001, an objection to ` max_value_in_flight ` would be encoded as
445
447
0b00000010, and an objection to both would be encoded as 0b00000011.
446
- - if it has sent a ` dyn_propose ` in the current negotiation
447
- - MUST forget its last sent ` dyn_propose ` parameters
448
448
- MUST forget the parameters of the ` dyn_propose ` message to which the
449
449
` dyn_reject ` is responding.
450
450
@@ -554,7 +554,9 @@ Change.
554
554
- If either channel party changes ` max_accepted_htlcs ` : Rules Change
555
555
- If either channel party changes ` funding_pubkey ` : Funding Output Update
556
556
- If new ` channel_type ` requires different funding output script than the old
557
- ` channel_type ` : Funding Output Update
557
+ ` channel_type ` : Funding Output Update
558
+ - If new ` channel_type ` requires the same funding output script as the old
559
+ ` channel_type ` : Commitment Update
558
560
559
561
### Rules Change
560
562
@@ -578,9 +580,8 @@ normal channel operation is resumed.
578
580
579
581
### Funding Output Change: General Protocol
580
582
581
- If a Funding Output Change is required, then once both channel parties have
582
- irrevocably committed to a state with no HTLC outputs, new commitment signatures
583
- AND kickoff signatures MUST be exchanged. To accomplish this the following steps
583
+ If a Funding Output Change is required, then new commitment signatures AND
584
+ kickoff signatures MUST be exchanged. To accomplish this, the following steps
584
585
are taken:
585
586
586
587
1 . Build kickoff transaction
@@ -639,7 +640,7 @@ signed.
639
640
* txout count: 3
640
641
* ` txout[0] ` : ` anchor_output_1 ` or ` anchor_output_2 `
641
642
* ` txout[1] ` : ` anchor_output_1 ` or ` anchor_output_2 `
642
- * ` txout[2] ` : ` p2tr_funding_output `
643
+ * ` txout[2] ` : ` kickoff_funding_output `
643
644
644
645
The anchor outputs have a value of 330 satoshis. They are encumbered by a
645
646
version 1 witness script:
@@ -683,7 +684,7 @@ from `dyn_ack`:
683
684
* locktime: upper 8 bits are 0x20, lower 24 bits are the lower 24 bits of the
684
685
obscured commitment number
685
686
* txin count: 1
686
- * ` txin[0] ` outpoint: the matching kickoff transaction's funding outpoint.
687
+ * ` txin[0] ` outpoint: the ` kickoff_funding_output `
687
688
* ` txin[0] ` sequence: upper 8 bits are 0x80, lower 24 bits are upper 24 bits
688
689
of the obscured commitment number
689
690
* ` txin[0] ` script bytes: 0
0 commit comments