Something strange just occurred on my LND node, making me think I don't understand something about lightning fees.
I have channels to A & B, who only ever asked me to route transactions going to C.
Based on the assumption that the fee is calculated from the fee rates of the outbound channel of a route, I figured I could set the fees of the channels to A & B to 0 (base + feerate) since they are never the outbound channel, so I never earn fees through them, so it incentivizes routes in the other way. Not earning me fees, but rebalancing the channels for free.
Minutes later, I got 4 routes between A to B. But to my surprise, those routes supposedly earnt me fees, according to RTL, corresponding to the feerate before i set it to 0.
How can this happen if I have set 0 fees for both channels? Could it be some kind of update issue, where the rest of the network thinks the channels are now free, but the updated fee is not yet applied? Or something else I don't understand?