From 752fc86c7d09490fbb2fa163ee29c47ed6a5eab7 Mon Sep 17 00:00:00 2001
From: Olaoluwa Osuntokun <laolu32@gmail.com>
Date: Tue, 30 Jan 2024 17:58:10 -0800
Subject: [PATCH] lnwire: add feature bits for new rbf coop close

---
 lnwire/features.go | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/lnwire/features.go b/lnwire/features.go
index 73a1684ed..31e750055 100644
--- a/lnwire/features.go
+++ b/lnwire/features.go
@@ -233,6 +233,22 @@ const (
 	// able and willing to accept keysend payments.
 	KeysendOptional = 55
 
+	// RbfCoopCloseRequired is a required feature bit that signals that
+	// the new RBF-based co-op close protocol is supported.
+	RbfCoopCloseRequired = 60
+
+	// RbfCoopCloseOptional is an optional feature bit that signals that the
+	// new RBF-based co-op close protocol is supported.
+	RbfCoopCloseOptional = 61
+
+	// RbfCoopCloseRequiredStaging is a required feature bit that signals
+	// that the new RBF-based co-op close protocol is supported.
+	RbfCoopCloseRequiredStaging = 160
+
+	// RbfCoopCloseOptionalStaging is an optional feature bit that signals
+	// that the new RBF-based co-op close protocol is supported.
+	RbfCoopCloseOptionalStaging = 161
+
 	// ScriptEnforcedLeaseRequired is a required feature bit that signals
 	// that the node requires channels having zero-fee second-level HTLC
 	// transactions, which also imply anchor commitments, along with an
@@ -373,6 +389,10 @@ var Features = map[FeatureBit]string{
 	ExperimentalEndorsementOptional:      "endorsement-x",
 	Bolt11BlindedPathsOptional:           "bolt-11-blinded-paths",
 	Bolt11BlindedPathsRequired:           "bolt-11-blinded-paths",
+	RbfCoopCloseOptional:                 "rbf-coop-close",
+	RbfCoopCloseRequired:                 "rbf-coop-close",
+	RbfCoopCloseOptionalStaging:          "rbf-coop-close-x",
+	RbfCoopCloseRequiredStaging:          "rbf-coop-close-x",
 }
 
 // RawFeatureVector represents a set of feature bits as defined in BOLT-09.  A