server: remove accountability signal experiment period

In the previous iteration with endorsement
signaling, the recommendation was for the sender to
set it to 1 and that could have had privacy concerns
when first deploying given that the default was to
downgrade the signal to 0. In the latest proposal
the recommended default for both sending and
forwarding nodes is to set `accountable` to 0.
As a result, the dates have been removed given
that there are no privacy risks associated
with relaying the signal with zero values.
This commit is contained in:
elnosh committed 2026-01-06 09:12:34 -05:00
1 parent 34329c684e
commit 6f49bea52b
7 files changed
+17 -69

No files matched your search

+8 -15
View File
@@ -57,18 +57,12 @@ func testAccountability(ht *lntest.HarnessTest, aliceAccountable bool) {
FeeLimitMsat: math.MaxInt64,
}
var expectedValue []byte
hasAccountability := lntest.ExperimentalAccountabilityActive()
if hasAccountability {
if aliceAccountable {
expectedValue = []byte{lnwire.ExperimentalAccountable}
t := uint64(lnwire.ExperimentalAccountableType)
sendReq.FirstHopCustomRecords = map[uint64][]byte{
t: expectedValue,
}
} else {
expectedValue = []byte{lnwire.ExperimentalUnaccountable}
expectedValue := []byte{lnwire.ExperimentalUnaccountable}
if aliceAccountable {
expectedValue = []byte{lnwire.ExperimentalAccountable}
t := uint64(lnwire.ExperimentalAccountableType)
sendReq.FirstHopCustomRecords = map[uint64][]byte{
t: expectedValue,
}
}
@@ -76,12 +70,11 @@ func testAccountability(ht *lntest.HarnessTest, aliceAccountable bool) {
// Validate that our signal (positive or zero) propagates until carol
// and then is dropped because she has disabled the feature.
// When the accountability experiment is not active, no signal is sent.
validateAccountableAndResume(
ht, bobIntercept, hasAccountability, expectedValue,
ht, bobIntercept, true, expectedValue,
)
validateAccountableAndResume(
ht, carolIntercept, hasAccountability, expectedValue,
ht, carolIntercept, true, expectedValue,
)
validateAccountableAndResume(ht, daveIntercept, false, nil)
+3 -14
View File
@@ -432,25 +432,14 @@ func testForwardInterceptorRestart(ht *lntest.HarnessTest) {
// We should get another notification about the held HTLC.
packet = ht.ReceiveHtlcInterceptor(bobInterceptor)
// Check the expected number of custom records based on whether the
// accountability experiment is still active.
expectedLen := 1
if lntest.ExperimentalAccountabilityActive() {
expectedLen = 2
}
require.Len(ht, packet.InWireCustomRecords, expectedLen)
require.Len(ht, packet.InWireCustomRecords, 2)
require.Equal(ht, lntest.CustomRecordsWithUnaccountable(customRecords),
packet.InWireCustomRecords)
// And now we forward the payment at Carol, expecting only an
// accountability signal in our incoming custom records (if the experiment
// is still active).
// accountability signal in our incoming custom records.
packet = ht.ReceiveHtlcInterceptor(carolInterceptor)
expectedCarolLen := 0
if lntest.ExperimentalAccountabilityActive() {
expectedCarolLen = 1
}
require.Len(ht, packet.InWireCustomRecords, expectedCarolLen)
require.Len(ht, packet.InWireCustomRecords, 1)
err = carolInterceptor.Send(&routerrpc.ForwardHtlcInterceptResponse{
IncomingCircuitKey: packet.IncomingCircuitKey,
Action: actionResume,