There are consensus rules that are bound to change with the increased adoption and software improvement of Bitcoin. Those include the block size, minimum tx fee, and ancestor limit. For example, if the price gets to $20k, 1sat/byte fees will mean about 5 cent fees for the most basic transactions. That can easily get to dollars, for multi-output transactions, not to mention making Memo unusable. We will need to make it easy to change the default minimum fee. A good mechanism for such changes is needed.

My proposal is to make those, instead of being constants in the code, be part of the chain - like what block difficulty is.

For example, make the block-size a moving average of the past X blocks and the next block can be maximum 10% bigger from that average. Miners mined transactions with longer ancestor chains? - increase the default value. Miners accepted 0.1sat/byte transactions? - lower the default minimum fee.

This way there's no central planning, miners are still free to make adjustments, wallets know the boundaries of those possible adjustments and can let the user be sure of the effects of their actions (like choosing lower than the 1sat/byte fee may now be a good idea, if the default has lowered).

This, bundled with Avalanche, where nodes have synced mempools, could make the system much more robust!