https://delvingbitcoin.org/t/ln-summit-2024-notes-summary-commentary/1198
Tokyo Lightning Summit summary...
Yes, don't use fan forced! Day 2 FTW! 
Entirely possible that I'm mis{sing,interpret}ing things here but: it's a shame that the dual funding in c-lightning is still behind a non-default experimental-dual-fund flag and that when i search for the "option-will-fund" in the listnodes output I only get like 5-10 out of 90K. To be clear, by following fairly simple instructions in an old blog post, I was able to make a well-funded and perfectly balanced channel, within a couple of minutes.
For those interested in coinjoin, note that this *is* coinjoin and arguably one of the best types, since by nature of the offchain payments, this kind of CJ can actually hide flows better. If we want to get the real power of such a thing we'd ideally start batching *multiple* such channel opens together, but that's putting the cart before the horse here. Dual funded channels are such an obvious good, why is it not a more widely used system, or am I missing something? #lightning
(Btw said blog post by nostr:npub1e0z776cpe0gllgktjk54fuzv8pdfxmq6smsmh8xd7t8s7n474n9smk0txy : https://medium.com/blockstream/setting-up-liquidity-ads-in-c-lightning-54e4c59c091d
1. Non-spec-final features are always behind a flag.
2. Spec final requires two independent implementations which interoperate.
3. Then nostr:nprofile1qqsvh300dvquh50l5t9et2257pxrsk5ndsdgdcdmnnxl9nc0f6l2ejcpz3mhxue69uhhyetvv9ujuerpd46hxtnfduq3samnwvaz7tmjv4kxz7fwwdhx7un59eek7cmfv9kqzrrhwden5te0vfexytnfdu7y9l4j needs to put in PR to make it on by default.
4. Then we need a release!
Thursday was an amazingly productive #CLN day (took a break from child wrangling during school holidays to go into my coworking space).
I've been grinding askrene's min-cost-flow solver against real data: my new toy is a stress test that asks for a route from my node, then asks again with "maxfee" 1msat less than the returned fee. This makes it prioritize fees more. I repeat this until failure, for each of the 100 most-channels nodes in my gossip snapshot.
This has been great for tuning the various parameters available. In particular, our linearization approximation for basefee (we need a linear function, which basefee breaks, so we approximate) was all wrong. Also, our mixing function (how much to weight fees vs probabilities) was both *complex* and *suboptimal*, so after a few tests I decided to simply multiply the probability factor by 8, which makes them comparable in practice! (This may change: we really want to compare the medians of each, to determine the factor, but 8 is simple, and reasonable for now).
Our algorithm would first run ignoring fees, and if that comes in under maxfee, just return. In practice this is silly: it would sometimes choose the more expensive of two identical paths! So now we start with a 1% fee weighting, to at least have *some* bias.
All this testing on real data is giving me more confidence than I ever had about our previous efforts, but there's still more to do before next month's release...
Of course, CLN allows this "0.012sat" everywhere msat amounts are valid!
You do you, y'know!
As so often, well put by Greg Maxwell:
"The whole point of bitcoin is to exist outside of any centralized control. Satoshi was clearly passionate about this. So much in our lives is mediated through centralized authorities that people seem at times desperate to hand control to someone. The things in our lives that aren't centrally controlled, like -- say-- the English language just get taken for granted. How could Bitcoin achieve its purpose with some founder around? The technology was designed so that the identity of Satoshi is irrelevant, but a lot of people have a hard time understanding that."
https://www.reddit.com/r/Bitcoin/comments/1fzi657/why_not_peter_todd/lrc6ok0/
I have.
LN is a dumpster fire of complexity and overhead. As you said, well it's a Layer 2 system so that's how it goes. I just mean to say it's going to take far more work than nostr to reach maturity. Why does it require curl to interact with my Bitcoin Core node and Core Lighting to access all features? In some cases it feels like I would be better off and safer doing it myself.
But seriously, there are like 4 developers working on anything at the core. nostr:npub179e9tp4yqtqx4myp35283fz64gxuzmr6n3yxnktux5pnd5t03eps0elz4s being of the few.
When I was invited to look at Umbrel, I realized they built their own, and with no fault of their own, it's a fairly complicated mess that the average self-hosted is unprepared to manage correctly.
I have never used curl to access my CLN node?
So... "don't use Amethyst" seems to be the answer!
So, npub.cash and Amethyst: do I really put my nsec into the npub.cash site: that seems like an anti-pattern?
One day I'll de-custodize those sats!
So I compromised and volunteered to talk at OP_NEXT next month, remotely. Now I need to find time to polish up the Script Restoration implementation and draft BIP, and write a talk, while at the same time we're approaching the next CLN release which *needs* all the pay improvements I've been working on.
When I overcommit like this, it's usually my family that ends up short-changed. Yet none of this can be delegated, and both are important, so I suspect that the 28.11 release of CLN may be delayed.
I keep wishing one of my kernel colleagues would want to work on Lightning: a veteran C coder with taste would be a good hire for Blockstream right now!
I've been heads-down working on xpay. We've only a month to the next release, so pressure is building.
Lagrang3 has been giving great feedback on the askrene APIs (the core: getroutes is now about 16x faster than it was!), as he adapts renepay, and I've been writing xpay as clean-slate. We're now pretty happy with it, and it's been a delight to collaborate.
I've also checked a snapshot of mainnet into master, for more accurate testing, using my new topology compressor (500k!).
It's school holidays here so I've had less time than usual to code, but I'm still cautiously optimistic we will make the next release, though as an experimental option...
Can confirm this works great.
renepay is much better method for paying with a CLN node. Being able to use it on the go with nostr:nprofile1qqsrf5h4ya83jk8u6t9jgc76h6kalz3plp9vusjpm2ygqgalqhxgp9gpz4mhxue69uhk2er9dchxummnw3ezumrpdejqzyrhwden5te0dehhxarj9ekxzmnyqyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueq555fk2 or nostr:nprofile1qqs8u5uf0rd2p9wmdxxaznpn54tkq8wwspmljy0cjqw6jdgm5kv84dspw9mhxue69uhkv6tvw3jhytnwdaehgu3wwa5kuef0dec82c338pmn2mfndcmxxur3x3shsmrgwee8q735ddnrgmt3df4rsdm2x4mhxerywee8yu3hx4envemkw4k8w7nrxdengdfcwuerw0mzwfhkzerrv9ehg0t5wf6k2fn8d3hkyctv84skcmq4f0ce8 is a huge step up. 🙏 nostr:nprofile1qqs24sraj5yfee4d7z9ez4k58sdy4dv5ccfsklwtztkpnyqgckqe5tcpg3mhxw309ann2enhw94hvdejd4sksmnsxaexjm3nwasnwv3kw9h85dtcdek85cmexcmnvetsw4h8weth0pjxjvmkd33kxc3jv9jzummwd9hkutcpg3mhxw309umkzafndyexwe3nddnhsum9wdhkuvmzw95hg7nexvervcnfdahkgmfhxf6kvv35vfaxwdthwdh8wut8de6x5um8d9jzummwd9hkutcpg3mhxw309uehyuredd6hwensva4xj6ned56r2umkvda8v7nsvf6hydn5xeurgc3kxakxuansxemhserjv5exxut00ymxzdry09jzummwd9hkutchpc0zh
Great! You'll be happy to know that we're taking the core algorithm of renepay and using it to drive a new payments system in the next release!
"Hand sanitizer smells sad."
My 8yo said this, and they're right. Damn.
I have mid/late twenties friends who live on them. It's weird to me, but definitely a demographic...
[ ] Nice idea, but it would take me longer to explain how it was supposed to be done than it would to rewrite it for you.
The total length needs to fit in 64k, so yes. But the other fields tend to be no more than a few kB...
Yes, but technically you always could.
Because you fetch an invoice, that invoice contains the message. And now you can prove that you wrote the message, and that the recipient received the message: the invoice they sign has your message in it, and your key (often a made up one for that payment).


