Patch 1 (0001-private-route-hints.patch): - Add missing RouteHints: hints, context line (v1.23.0 added this field between Expiry and Private; old patch lacked it, causing hunk failure) - Fix amountMsat parameter name in hunk header (was 'amount' from older version) - Only regular invoice Private field is changed; MakeHoldInvoice keeps Private: !hasPublicChannels unchanged Patch 2 (0002-isolated-invoice-app-id.patch): - Fix CreateInvoice interface: amountMsat uint64 (not amount uint64) - Fix MakeInvoiceRequest: Amount/AmountSat/AmountMsat are *uint64 pointers (not Amount uint64) matching v1.23.0 struct layout - Fix MakeInvoice call: 9 args → 10 args with appId as 8th positional arg (nil, nil trailing) matching v1.23.0 signature - Fix function impl parameter: amountMsat uint64 throughout Both patches dry-run verified against exact v1.23.0 source and apply cleanly in sequence. Updated NixPatchContractTests to assert v1.23.0 context (RouteHints, amountMsat, *uint64 pointer types, 10-arg MakeInvoice call). All 233 Python tests pass. JS syntax checks pass.
14 lines
567 B
Diff
14 lines
567 B
Diff
diff --git a/lnclient/lnd/lnd.go b/lnclient/lnd/lnd.go
|
|
index bad532f..ba35b7b 100644
|
|
--- a/lnclient/lnd/lnd.go
|
|
+++ b/lnclient/lnd/lnd.go
|
|
@@ -708,7 +708,7 @@ func (svc *LNDService) MakeInvoice(ctx context.Context, amountMsat int64, descri
|
|
DescriptionHash: descriptionHashBytes,
|
|
Expiry: expiry,
|
|
RouteHints: hints,
|
|
- Private: !hasPublicChannels, // use private channel hints in the invoice
|
|
+ Private: true, // always include private channel hints in the invoice
|
|
}
|
|
|
|
resp, err := svc.client.AddInvoice(ctx, addInvoiceRequest)
|