One issue is that you'd need to communicate your balance (if you wanted to). Constantly updating this information puts enormous pressure on the network. I think BOLT 14 (letting peers know your other peers' balances) is a step forward, and I agree that most of this information is not as private as it appears to be.
Splitting a payment locally is... tricky. I think the first step would be to join payments that come in via (at least) two different source channels.
I know that CLN have by default MPP. LND don't, so the user have to choose manually MPP depending on the wallet app they use.
I think MPP should be by default in whatever LN implementation.
Also a protocol that first will check those channels with more balance to be used to forward a payment and next based on fee.
If I have a payment of 100k sats and
  • a ch of 5M sats in total and with 4M sats on my side and fee 100ppm
  • a ch of 4M sats in total and with 10k sats on my side and a fee of 10ppm the actual behavior is to take the channel with lowest fee, but then it will fail because I do not have enough balance.
So the whole path finding is ruined. Instead if the protocol will see first where I have more balance and choose that path and from those channels with higher balance than the amount of payment, to choose the one is cheaper.
In this way we will have better path finding and less failed routing, efficiency in using channels.
reply
That's a very naive approach :)