@@ -227,7 +227,8 @@ The receiving node:
227227 - otherwise:
228228 - SHOULD store this ` channel_announcement ` .
229229 - once its funding output has been spent OR reorganized out:
230- - SHOULD forget a channel after a 12-block delay.
230+ - SHOULD forget a channel after a 72-block delay.
231+ - SHOULD NOT rebroadcast this ` channel_announcement ` to its peers.
231232
232233### Rationale
233234
@@ -252,7 +253,7 @@ optional) features will have _odd_ feature bits, while incompatible features
252253will have _ even_ feature bits
253254([ "It's OK to be odd!"] ( 00-introduction.md#glossary-and-terminology-guide ) ).
254255
255- A delay of 12 blocks is used when forgetting a channel on funding output spend
256+ A delay of 72 blocks is used when forgetting a channel on funding output spend
256257as to permit a new ` channel_announcement ` to propagate which indicates this
257258channel was spliced.
258259
@@ -485,7 +486,7 @@ The origin node:
485486 signal a channel's temporary unavailability (e.g. due to a loss of
486487 connectivity) OR permanent unavailability (e.g. prior to an on-chain
487488 settlement).
488- - MAY sent a subsequent ` channel_update ` with the ` disable ` bit set to 0 to
489+ - MAY send a subsequent ` channel_update ` with the ` disable ` bit set to 0 to
489490 re-enable the channel.
490491 - MUST set ` timestamp ` to greater than 0, AND to greater than any
491492 previously-sent ` channel_update ` for this ` short_channel_id ` .
@@ -504,10 +505,13 @@ The origin node:
504505 - SHOULD keep accepting the previous channel parameters for 10 minutes
505506
506507The receiving node:
507- - if the ` short_channel_id ` does NOT match a previous ` channel_announcement ` ,
508- OR if the channel has been closed in the meantime:
508+ - if the ` short_channel_id ` does NOT match a previous ` channel_announcement ` :
509509 - MUST ignore ` channel_update ` s that do NOT correspond to one of its own
510510 channels.
511+ - if the channel output has been spent:
512+ - MUST ignore ` channel_update ` s, unless they have the ` disable ` bit set to 1.
513+ - SHOULD NOT rebroadcast ` channel_update ` s to its peers, unless they have the
514+ ` disable ` bit set to 1.
511515 - SHOULD accept ` channel_update ` s for its own channels (even if non-public),
512516 in order to learn the associated origin nodes' forwarding parameters.
513517 - if ` signature ` is not a valid signature, using ` node_id ` of the
@@ -870,6 +874,8 @@ The receiver:
870874 ` first_timestamp ` plus ` timestamp_range ` .
871875 - If a ` channel_announcement ` has no corresponding ` channel_update ` s:
872876 - MUST NOT send the ` channel_announcement ` .
877+ - If the funding output of the ` channel_announcement ` has been spent:
878+ - SHOULD NOT send the ` channel_announcement ` .
873879 - Otherwise:
874880 - MUST consider the ` timestamp ` of the ` channel_announcement ` to be the ` timestamp ` of a corresponding ` channel_update ` .
875881 - MUST consider whether to send the ` channel_announcement ` after receiving the first corresponding ` channel_update ` .
@@ -958,7 +964,7 @@ The origin node:
958964A node:
959965 - SHOULD monitor the funding transactions in the blockchain, to identify
960966 channels that are being closed.
961- - if the funding output of a channel is spent and received 12 block confirmations:
967+ - if the funding output of a channel is spent and received 72 block confirmations:
962968 - SHOULD be removed from the local network view AND be considered closed.
963969 - if the announced node no longer has any associated open channels:
964970 - MAY prune nodes added through ` node_announcement ` messages from their
0 commit comments