diff --git a/src/commonMain/kotlin/fr/acinq/lightning/channel/ChannelAction.kt b/src/commonMain/kotlin/fr/acinq/lightning/channel/ChannelAction.kt index 07e0dfccb..36d8dbbd5 100644 --- a/src/commonMain/kotlin/fr/acinq/lightning/channel/ChannelAction.kt +++ b/src/commonMain/kotlin/fr/acinq/lightning/channel/ChannelAction.kt @@ -87,9 +87,7 @@ sealed class ChannelAction { abstract val txId: TxId data class ViaSpliceOut(val amount: Satoshi, override val miningFees: Satoshi, val address: String, override val txId: TxId) : StoreOutgoingPayment() data class ViaSpliceCpfp(override val miningFees: Satoshi, override val txId: TxId) : StoreOutgoingPayment() - data class ViaInboundLiquidityRequest(override val txId: TxId, val lease: LiquidityAds.Lease) : StoreOutgoingPayment() { - override val miningFees: Satoshi = lease.fees.miningFee - } + data class ViaInboundLiquidityRequest(override val miningFees: Satoshi, override val txId: TxId, val lease: LiquidityAds.Lease) : StoreOutgoingPayment() data class ViaClose(val amount: Satoshi, override val miningFees: Satoshi, val address: String, override val txId: TxId, val isSentToDefaultAddress: Boolean, val closingType: ChannelClosingType) : StoreOutgoingPayment() } data class SetLocked(val txId: TxId) : Storage() diff --git a/src/commonMain/kotlin/fr/acinq/lightning/channel/states/Normal.kt b/src/commonMain/kotlin/fr/acinq/lightning/channel/states/Normal.kt index 10322fd74..1e75a8897 100644 --- a/src/commonMain/kotlin/fr/acinq/lightning/channel/states/Normal.kt +++ b/src/commonMain/kotlin/fr/acinq/lightning/channel/states/Normal.kt @@ -773,7 +773,7 @@ data class Normal( ) ) liquidityLease?.let { - add(ChannelAction.Storage.StoreOutgoingPayment.ViaInboundLiquidityRequest(txId = action.fundingTx.txId, lease = it)) + add(ChannelAction.Storage.StoreOutgoingPayment.ViaInboundLiquidityRequest(miningFees = action.fundingTx.sharedTx.tx.fees, txId = action.fundingTx.txId, lease = it)) } if (staticParams.useZeroConf) { logger.info { "channel is using 0-conf, sending splice_locked right away" } diff --git a/src/commonMain/kotlin/fr/acinq/lightning/db/PaymentsDb.kt b/src/commonMain/kotlin/fr/acinq/lightning/db/PaymentsDb.kt index 550da51ec..a837ec81a 100644 --- a/src/commonMain/kotlin/fr/acinq/lightning/db/PaymentsDb.kt +++ b/src/commonMain/kotlin/fr/acinq/lightning/db/PaymentsDb.kt @@ -390,6 +390,7 @@ data class SpliceCpfpOutgoingPayment( data class InboundLiquidityOutgoingPayment( override val id: UUID, + override val miningFees: Satoshi, override val channelId: ByteVector32, override val txId: TxId, val lease: LiquidityAds.Lease, @@ -397,9 +398,8 @@ data class InboundLiquidityOutgoingPayment( override val confirmedAt: Long?, override val lockedAt: Long?, ) : OnChainOutgoingPayment() { - override val amount: MilliSatoshi = lease.fees.total.toMilliSatoshi() - override val miningFees: Satoshi = lease.fees.miningFee - override val fees: MilliSatoshi = lease.fees.total.toMilliSatoshi() + override val amount: MilliSatoshi = (lease.fees.serviceFee + miningFees).toMilliSatoshi() + override val fees: MilliSatoshi = miningFees.toMilliSatoshi() override val completedAt: Long? = confirmedAt } diff --git a/src/commonMain/kotlin/fr/acinq/lightning/io/Peer.kt b/src/commonMain/kotlin/fr/acinq/lightning/io/Peer.kt index 99d61c79b..495eb2539 100644 --- a/src/commonMain/kotlin/fr/acinq/lightning/io/Peer.kt +++ b/src/commonMain/kotlin/fr/acinq/lightning/io/Peer.kt @@ -743,6 +743,7 @@ class Peer( is ChannelAction.Storage.StoreOutgoingPayment.ViaInboundLiquidityRequest -> InboundLiquidityOutgoingPayment( id = UUID.randomUUID(), + miningFees = action.miningFees, channelId = channelId, txId = action.txId, lease = action.lease,