In the docs, Uniswap says they don't currently take a protocol fee, but might add it in the future. This fee would not go to liquidity providers, but to the smart contract itself. Who would receive the protocol fee I wonder, or would the smart contract itself keep the fees, never distributing it to any human.
I haven't even brought up the can of worms of governance tokens. The protocol seems to not need a protocol fee since they can make a fee by issuing themselves governance tokens that have some privileges with the protocol and have a price. It is interesting that you say the code is immutable, but the governance tokens claim to give its holder voting rights to make changes to the protocol code like changing fees. It is a major problem that investors of Uniswap the company received the uni governance token in proportion to the funding of the company which they tell us has nothing to do with the decentralized uniswap protocol. You can't have your cake and eat it too.