-
Notifications
You must be signed in to change notification settings - Fork 355
Add minimum base fee documentation to network fees page #704
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Document the minimum base fee feature introduced with the Jovian upgrade, including benefits (faster inclusion, predictable fees, spam prevention) and current configuration values.
✅ Heimdall Review Status
|
| **Solution**: The `maxFeePerGas` must cover both the base fee and your priority fee. Since the base fee can change with each block, set `maxFeePerGas` high enough to remain valid even if the base fee rises while your transaction is pending. A common approach is: | ||
|
|
||
| ``` | ||
| maxFeePerGas = baseFee * 2 + maxPriorityFeePerGas |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can probably base this on minimum doubling speed and a reasonable delay (including time to sign the tx), but this is subject to change alongside any modifications to EIP1559 parameters, including increasing elasticity.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That's technically the right way to think about it, but it feels like maybe too much information for the average reader. ethers.js multiplies by 2 and viem multiplies by 1.2. I don't think anyone is doing anything more sophisticated than that.
docs/base-chain/network-information/troubleshooting-transactions.mdx
Outdated
Show resolved
Hide resolved
|
|
||
| The contract execution encountered a revert condition. | ||
|
|
||
| **Solution**: Check the transaction on [Basescan](https://basescan.org) to see the revert reason. Common causes include failed require statements, arithmetic errors, or invalid state transitions. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should we explicitly identify Basescan or use the more generic explorer.base.org, which can be rerouted in the case of a service disruption.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The docs mention Basescan all over the place, so I don't think that's an avoidable problem. Changing how we refer to the block explorer makes sense, but I think we'll be better off if it's a consistent change that we make everywhere.
|
|
||
| | Confirmation Level | Time | Description | | ||
| |-------------------|------|-------------| | ||
| | Flashblock preconfirmation | ~200ms | Transaction included in a preconfirmation | |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This shows the cadence of each periodic event. Should we show average confirmation time instead, which would be ~100ms for flashblocks, and ~1s for L2 blocks?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This part is cribbed from the Transaction Finality page. I think using average times would be confusing. Most people need the upper bounds, and the people who need the average times will be able to figure it out.
|
|
||
| ## Debugging Tools | ||
|
|
||
| - **[Basescan](https://basescan.org)**: View transaction status, logs, and revert reasons |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same as above, although here we can maybe enumerate different explorers
| <Note> | ||
| Base has a [minimum base fee](/base-chain/network-information/network-fees#minimum-base-fee). Transactions with `maxFeePerGas` below this value will never be included, since the base fee cannot drop below the minimum. | ||
| </Note> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These sections seem misformatted in the GH diff preview. Will these render correctly in the actual docs site?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Edit: confirmed that this looks good on the staging docs site
Document the minimum base fee feature introduced with the Jovian upgrade, including benefits (faster inclusion, predictable fees, spam prevention) and current configuration values.