lightning network – How does circular rebalance on LN work?


How does circular rebalance on LN work? (note: circular rebalance is term used in RTL, I use lnd). Let me describe the situation that happened to me:

I have two channels, one with Alice, one with Bob.

The situation before circular rebalance from my point of view:

Me    (200) sats outbound -----(400)----- (200) sats inbound         Alice
Me    (200) sats outbound -----(200)----- (0)   sats inbound         Bob

Then I initiated a circular rebalance of 100 sats on the the second channel with Bob and I was asked to choose “receive from peer” where I chose Alice

The situation after the circular rebalance from my point of view (supposing no routing fees):

Me    (300) sats outbound -----(400)----- (100) sats inbound         Alice
Me    (200) sats outbound -----(300)----- (100) sats inbound         Bob

My overall outbound capacity increased by 100 sats while overall inbound capacity stayed at 200 sats. Did I just make 100 sats? Did I cheat Alice?

Solution (It was my misunderstanding, I’m answering here because Rene’s answer is really good and I want to keep it):

Basically, my outbound capacity decreased on the channel with Bob by the expected amount but the commit_fee on that channel rose by 100 and since I thought that my outbound capacity + commit fee are my disposable funds I thought of them as a overall outbound capacity which is not obviously the case.

What actually happened:
The situation before circular rebalance from my point of view:

Me    (200) sats outbound {100} commit fee -----(500)----- (200) sats inbound         Alice
Me    (400) sats outbound {100} commit fee -----(500)----- (0)   sats inbound         Bob

The situation after the circular rebalance from my point of view (supposing no routing fees):

Me    (300) sats outbound {100} commit fee-----(500)----- (100) sats inbound         Alice
Me    (300) sats outbound {200} commit fee-----(500)----- (100) sats inbound         Bob