Yes, I had read about these 'challenges'. In my opinion, they should rather be called 'commissions' or something like this.
Personally I thought about taking on 'challenge 1', but I'm generally not a fan of reinventing the wheel, so if I needed to code something like that for myself, I'd fork an existing project and add the one new feature.
What I don't understand is that Core-Lightning is already the software they're looking for: non-custodial and supports BOLT12.
See this topic:
https://bitcointalk.org/index.php?topic=5383567.0lno1pgyhgetnwss8getnws2q2m3sde3k283q2lpjlt6ze9es9je8c5xdxzcry7yz5flpwcnq84lxx2pcvu5v36hlqsyt78v7gcwx7az9aanft87whfedvey8gvm68f9uygrypnwe5r4578el5tlxznasdp8rjql9ulavwyadpxnmaeh9v0l4xc5lvq3qqrurq
I might still try to come up with something more user friendly than Core-Lightning, maybe based on Breez so it runs on a phone; however that application is pretty tied together with their 'intermediary node' and runs
lnd, which
still doesn't support BOLT12, as far as I know.
About Challenge 1 - I haven't checked on Lightning for awhile, is it even theoretically possible? You need to be online to generate payment request, because you need to get some of the senders data to generate it, right? So the only solution is to run your own server, at home or in the cloud, that would generate payment requests for you. Or is it possible to outsource it (though it would be centralized)
It is absolutely possible; it's been proposed a long time ago [1] in BOLT12 [2] and already implemented in Core-Lightning. Of course, your node is always online, that's the normal state for a Lightning node.
rustyrussell commented on 31 Aug 2020
An "offer" has enough information for you to reach out and fetch a real invoice from the vendor, through the Lightning Network itself, just like it would send a payment: no web server needed. Your wallet then pays the actual invoice
[1]
https://bolt12.org/[2]
https://github.com/lightning/bolts/pull/798