Skip to content

Commit

Permalink
Merge pull request #1223 from MutinyWallet/min-anchor-fee
Browse files Browse the repository at this point in the history
Set min anchor channel fee to 1 sat/vbyte
  • Loading branch information
benthecarman authored Jun 17, 2024
2 parents b4cf1bf + e2cf3ff commit 149318a
Showing 1 changed file with 12 additions and 1 deletion.
13 changes: 12 additions & 1 deletion mutiny-core/src/fees.rs
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,7 @@ impl<S: MutinyStorage> FeeEstimator for MutinyFeeEstimator<S> {
// any post processing we do after we get the fee rate from the cache
match confirmation_target {
ConfirmationTarget::MinAllowedNonAnchorChannelRemoteFee => fee - 250, // helps with rounding errors
ConfirmationTarget::MinAllowedAnchorChannelRemoteFee => 250, // just pin to 1 sat/vbyte to prevent force closes
ConfirmationTarget::AnchorChannelFee => (fee / 2).max(250), // do half the mempool minimum just to prevent force closes
_ => fee,
}
Expand All @@ -209,7 +210,7 @@ fn num_blocks_from_conf_target(confirmation_target: ConfirmationTarget) -> usize

fn fallback_fee_from_conf_target(confirmation_target: ConfirmationTarget) -> u32 {
match confirmation_target {
ConfirmationTarget::MinAllowedAnchorChannelRemoteFee => 3 * 250,
ConfirmationTarget::MinAllowedAnchorChannelRemoteFee => 250,
ConfirmationTarget::MinAllowedNonAnchorChannelRemoteFee => 3 * 250,
ConfirmationTarget::ChannelCloseMinimum => 10 * 250,
ConfirmationTarget::AnchorChannelFee => 10 * 250,
Expand Down Expand Up @@ -321,6 +322,16 @@ mod test {
fee_estimator.get_est_sat_per_1000_weight(ConfirmationTarget::OnChainSweep),
12_500
);

// test post-processing
assert_eq!(
fee_estimator
.get_est_sat_per_1000_weight(ConfirmationTarget::MinAllowedAnchorChannelRemoteFee),
250
);
assert!(
fee_estimator.get_est_sat_per_1000_weight(ConfirmationTarget::AnchorChannelFee) >= 250
);
}

#[cfg(not(target_arch = "wasm32"))]
Expand Down

0 comments on commit 149318a

Please sign in to comment.