--snip--
I believe there must be a better answer.
I'm not sure there is... I've been racking my brain over OP's previous post... It's something i had never actually tough about. How to prove to the outside world that you received a donation...
Internally, you have a big toolset that allows you to obtain your "balance" (in c-lightning, for example, you use "listfunds" for your funds, and "listinvoices" for invoices). Even if you didn't have such a toolset, you'd have the commitment transactions (which you cannot publicize, ever).
An invoice doesn't contain any info that'll enable an outsider to steal from you, but it can contain sensitive info (like, for example, private channels and descrptions), and afaik it does not prove the invoice was payed.
I guess maybe the only "hard" evidence of receiving donations is that if you setup a node for the sole purpose of receiving donations, you'll have the closing transactions funding your addresses on-chain each time a channel gets closed. I guess setting up a node for the sole purpose of receiving donations might pose it's own difficulties tough: for example, you'll need people to open channels to your node with enough capacity to send those donations, so you'll probably have to invest some funds into swaps or something? If not, you won't have enough inbound liquidity...