the mint is paying the LN invoices for you then?
who will do the lightning part for you?
you’ll get a chance to upgrade soon. it will not go away, only get better!
nostr:npub1m0sxqk5uwvtjhtt4yw3j0v3k6402fd35aq8832gp8kmer78atvkq9vgcru can onboard you. would love to get your feedback.
nostr:npub1h50pnxqw9jg7dhr906fvy4mze2yzawf895jhnc3p7qmljdugm6gsrurqev do you have an Alby account? then I can enable the invite a friend feature already for you.
I mainly was curious what’s the reason or if I miss something on why it is in there. (just as lnurl itself has removed it)
basically, yes. making this independent of the bolt11 somehow to allow implementations that have issues with the description hash also be used to receive zaps.
to the point as always :)
even if one would pass some random big string to the wallet, what should it do with the zap request for example? (bolt11 and description would come from the same source)
should it show the scary JSON somehow to the user?
the description is used as a short text for humans. that’s what is shown for people.
assuming a zap request could be shorter than 639 bytes it would also not work.
I don’t know the bolt11 details well enough.
Even if it’s their fault to not implement the bolt11 spec perfectly the state is that some big implementations have this problem.
It limits how zappers can be built. LN implementations have problems, not to talk about tools like lnbits, strike, etc.
those can not be used because of this limitation.
the reader is the sender’s wallet, right?
this is not a real world case.
that mean for example WoS, etc. would need to somehow also know the zap request to do that check.
good point, ecash and other options would also not work.
it might be trivial on CLN because CLN stores that info (off-band afaik)
but the spec should not assume such a detail of a specific LN implementation.
It ties that zap feature close to that LN implementation and as mentioned makes it hard for other implementations.
The spec says the description hash is used to commit to an associated description that is over 639 bytes.
things might accidentally work because the length is long enough.
(For me having the length decide on either storing a human readable string in a description or a hash for machines using the lengths of the string does not really makes sense - the app should explicitly choose. but that's how it is there.)
LDK, Phoenixd both don't support setting the description hash.
From what I heard LDK might support setting the description hash for long descriptions (as the spec says).
but that's also annoying for implementations (as discussed in the LNURL case) For plain LNURL the description hash requirement was dropped because of that.
This also means no human readable description can be passed along (that would be shown to the sender) (because it's either or)
Join the Alby community call, happening now!
and isn't it easy to do this fully on the client side?
for example like this: https://gist.github.com/bumi/050a29cef2f6f9f9d7960d834104890a
making a queue and wait a but until window.nostr is enabled?
I think the window.nostr should be as stupid as possible to also make it easier for other ways to implement it. (e.g. nsecbunker and such)
syntactic sugar and such nice things I would try to put in the client -maybe even some library.
one issue is that this usage of the description hash is not the intended usage by the bolt11 spec and by the node implementations. (LDK, CLN, Phoenix) (e.g a phoenix or LDK backed zap receiver can not work because of that)
Then I feel like this is also a very indirect and complicated check (decoding the bolt11, getting the hash, hashing the request,…) and it seems like damus is the only client doing this.
can we make this independent of the bolt11 somehow?
thanks, what was the reason why CLN does want to implement the description as they do? because the bolt11 spec says so?
to me it makes no sense to decide on the length of a field if it is added in a clear text field for humans on in hash for computers.
if you still see this, point me to a page where this happens.
Quite a long time ago this was optimized and with MV3 browsers I think also made this easier.
There was the discussion of adding an event similar to how it actually works with DOMContentLoaded and other events which I think would be the cleaner way if something is really needed.

