Skip to content

fix: probing tool validation and error messages#791

Draft
jvsena42 wants to merge 1 commit intomasterfrom
fix/probing-improvements
Draft

fix: probing tool validation and error messages#791
jvsena42 wants to merge 1 commit intomasterfrom
fix/probing-improvements

Conversation

@jvsena42
Copy link
Member

This PR:

  1. Adds zero-amount invoice detection with 1 sat fallback for probing
  2. Adds outbound capacity validation before sending probes
  3. Improves probe failure error messages with user-friendly descriptions

Description

The probing tool now detects zero-amount bolt11 invoices and automatically uses 1 sat as the probe amount when the user doesn't specify one. Before sending a probe, the tool validates that the amount doesn't exceed the available outbound capacity and warns the user with the available balance. Probe failure messages are mapped from raw LDK errors to human-readable descriptions.

Preview

QA Notes

1. Zero-amount invoice probing

  1. Open the Probing Tool from dev settings
  2. Paste a zero-amount bolt11 invoice
  3. Verify the amount section shows "AMOUNT (OPTIONAL)" with hint "Enter amount in sats, or leave empty to probe with 1 sat"
  4. Tap "Send Probe" without entering an amount
  5. Verify the probe is sent using 1 sat as the amount

2. Outbound capacity validation

  1. Enter a bolt11 invoice with a large amount (or enter a large amount override)
  2. Ensure the amount exceeds your current outbound capacity
  3. Tap "Send Probe"
  4. Verify a warning toast appears: "Amount exceeds outbound capacity" with available sats

3. LNURL probing

  1. Paste an LNURL-pay link
  2. Verify the amount section shows "AMOUNT (REQUIRED)"
  3. Verify the Send Probe button is disabled until an amount is entered

4. Error message improvements

  1. Probe an invoice to an unreachable destination
  2. Verify the error message in the results section is human-readable (e.g., "No route found to destination")

5. Verification

  • ./gradlew compileDevDebugKotlin — compiles
  • ./gradlew testDevDebugUnitTest — all tests pass
  • ./gradlew detekt — no new lint issues

@jvsena42 jvsena42 self-assigned this Feb 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments