Skip to content

Commit a174104

Browse files
authored
Merge pull request OffchainLabs#2659 from OffchainLabs/move-arbchain-bold-timeboost
docs: moving-bold-timeboost-to-common-config
2 parents eadb632 + f35b739 commit a174104

File tree

8 files changed

+31
-21
lines changed

8 files changed

+31
-21
lines changed

docs/launch-arbitrum-chain/01-a-gentle-introduction.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ Arbitrum's protocols address this challenge by offloading some of the Ethereum n
5656
| MEV | Timeboost |
5757
| Cost | Data posting costs |
5858
| Infrastructure | Hardware footprint |
59-
| Interop | XYZ |
59+
| Interop | TBD |
6060

6161
### How do Arbitrum chains help the Ethereum ecosystem?
6262

docs/launch-arbitrum-chain/02-configure-your-chain/advanced-configurations/02-bold.mdx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,14 @@ content_type: how-to
1212
protocol used by Arbitrum chains today, like Arbitrum One. This page is intended for Arbitrum chain owners/operators
1313
and assumes knowledge of Arbitrum BoLD is and experience upgrading an Arbitrum chain's Rollup contracts.
1414
This page assumes you have read and followed the guide on [How to upgrade to BoLD](../../04-maintain-your-chain/05-upgrade-to-bold.mdx)
15-
and our guide on [BoLD adoption for Arbitrum chains](../../bold-adoption-for-arbitrum-chains.mdx). Please
16-
read these two guides first before proceeding with changing any of the parameters relating to BoLD below.
15+
and our guide on [BoLD adoption for Arbitrum chains](/launch-arbitrum-chain/02-configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains.mdx).
16+
Please read these two guides first before proceeding with changing any of the parameters relating to
17+
BoLD below.
1718

1819
To read more about Arbitrum BoLD, please refer to the [Gentle Introduction for BoLD](../../../how-arbitrum-works/bold/gentle-introduction.mdx).
1920

2021
:::caution
21-
As mentioned in our guide on [BoLD adoption for Arbitrum chains](../../bold-adoption-for-arbitrum-chains.mdx), the recommendation is that Arbitrum chains keep validation permissioned by having `disableValidatorWhitelist` be `false` (which is the default) and by having a list of validators on the whitelist via the `validators[]` array. Furthermore, it is recommended that the [Censorship Timeout](../../../how-arbitrum-works/03-sequencer.mdx#censorship-timeout) feature be kept disabled.
22+
As mentioned in our guide on [BoLD adoption for Arbitrum chains](/launch-arbitrum-chain/02-configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains.mdx), the recommendation is that Arbitrum chains keep validation permissioned by having `disableValidatorWhitelist` be `false` (which is the default) and by having a list of validators on the whitelist via the `validators[]` array. Furthermore, it is recommended that the [Censorship Timeout](../../../how-arbitrum-works/03-sequencer.mdx#censorship-timeout) feature be kept disabled.
2223
:::
2324

2425
## Table of Arbitrum BoLD parameters

docs/launch-arbitrum-chain/02-configure-your-chain/common-configurations/02-use-a-custom-gas-token-rollup.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -606,7 +606,7 @@ Here are the steps you should take to deploy your Arbitrum chain with a custom g
606606
- `FEE_TOKEN_ADDRESS` = your `ERC-20` gas token
607607
- `FEE_TOKEN_PRICER_ADDRESS` = your deployed pricer
608608
- `ROLLUP_CREATOR_ADDRESS` = the rollup creator contract on L1
609-
- `STAKE_TOKEN_ADDRESS` = token used for staking (see [BoLD docs](/launch-arbitrum-chain/bold-adoption-for-arbitrum-chains.mdx#use-of-your-projects-native-token-as-the-bonding-asset-to-secure-the-chain) for more details)
609+
- `STAKE_TOKEN_ADDRESS` = token used for staking (see [BoLD docs](/launch-arbitrum-chain/02-configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains.mdx#use-of-your-projects-native-token-as-the-bonding-asset-to-secure-the-chain) for more details)
610610

611611
The script will deploy and initialize the Rollup accordingly.
612612

docs/launch-arbitrum-chain/bold-adoption-for-arbitrum-chains.mdx renamed to docs/launch-arbitrum-chain/02-configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains.mdx

File renamed without changes.

docs/launch-arbitrum-chain/timeboost-for-arbitrum-chains.mdx renamed to docs/launch-arbitrum-chain/02-configure-your-chain/common-configurations/timeboost-for-arbitrum-chains.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,8 @@ some of the available Maximum Extractable Value (MEV) on their blockchain and re
3737
spamming, in exchange for a small impact on user response times (despite block times not changing). It
3838
is therefore recommended that chains only consider deploying and enabling Timeboost if there is substantial
3939
DeFi and related MEV activity (e.g. liquidations, arbitrage, backrunning) on the chain. Please read the
40-
[gentle introduction to Timeboost](../how-arbitrum-works/timeboost/gentle-introduction.mdx) to learn
41-
more about how Timeboost works.
40+
[gentle introduction to Timeboost](/how-arbitrum-works/timeboost/gentle-introduction.mdx) to learn more
41+
about how Timeboost works.
4242

4343
As with all features on the Arbitrum stack, Arbitrum chains can adopt Timeboost at their own discretion and on their own timeline. To deploy and enable Arbitrum Timeboost on your chain, please refer to this guide on how to [deploy and configure Timeboost](/launch-arbitrum-chain/02-configure-your-chain/advanced-configurations/04-deploy-timeboost.mdx).
4444

@@ -50,7 +50,7 @@ Again, Arbitrum chains can adopt Timeboost at their discretion and on their time
5050

5151
## Benefits of adopting Timeboost
5252

53-
Timeboost enables a chain owner to capture a portion of the available MEV on their blockchain, reducing latency-related spam while preserving the built-in protections and UX benefits that Arbitrum users have come to know and enjoy. A more in-depth overview of the benefits of Timeboost is explored in the [gentle introduction to Timeboost](../how-arbitrum-works/timeboost/gentle-introduction.mdx), and also a paper on how Timeboost is more profitable for arbitrageurs compared to other forms of MEV capture, like Priority Gas Auctions (PGA) [here](https://arxiv.org/abs/2410.10797).
53+
Timeboost enables a chain owner to capture a portion of the available MEV on their blockchain, reducing latency-related spam while preserving the built-in protections and UX benefits that Arbitrum users have come to know and enjoy. A more in-depth overview of the benefits of Timeboost is explored in the [gentle introduction to Timeboost](/how-arbitrum-works/timeboost/gentle-introduction.mdx), and also a paper on how Timeboost is more profitable for arbitrageurs compared to other forms of MEV capture, like Priority Gas Auctions (PGA) [here](https://arxiv.org/abs/2410.10797).
5454

5555
#### Fair(er) MEV capture
5656

@@ -82,7 +82,7 @@ Often times, the cost required to set up, configure, and maintain the infrastruc
8282

8383
#### User experience
8484

85-
As explained in the [gentle introduction to Timeboost](../how-arbitrum-works/timeboost/gentle-introduction.mdx), the Timeboost express lane time advantage is implemented by imposing an artificial delay (default: `200ms`) on all non-express lane transactions whenever there is an express lane controller for a round (default: `1 minute`). While Timeboost does not change the default Arbitrum blocktimes (default: `250ms`), this artificial delay _does_ mean that the average response time for a user in the non-express lane is the sum of the artificial delay and the block time of the chain. Note that this artificial delay is only applied when there is an express lane controller for a round, meaning there is no change in user experience if nobody is using Timeboost, even though it is enabled (for the duration of that round).
85+
As explained in the [gentle introduction to Timeboost](/how-arbitrum-works/timeboost/gentle-introduction.mdx), the Timeboost express lane time advantage is implemented by imposing an artificial delay (default: `200ms`) on all non-express lane transactions whenever there is an express lane controller for a round (default: `1 minute`). While Timeboost does not change the default Arbitrum blocktimes (default: `250ms`), this artificial delay _does_ mean that the average response time for a user in the non-express lane is the sum of the artificial delay and the block time of the chain. Note that this artificial delay is only applied when there is an express lane controller for a round, meaning there is no change in user experience if nobody is using Timeboost, even though it is enabled (for the duration of that round).
8686

8787
## Configuring Timeboost's Parameters
8888

docs/partials/_bold-config-params.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
| `chainId` | Your chain's ID | Your chain's ID |
1313
| `minimumAssertionPeriod` | The minimum amount of time that a validator must wait before posting a new assertion, measured using the parent chain's `block.number` timing | 15 minutes worth of Ethereum blocks for an L2 Arbitrum chain (settling to Ethereum) or an L3 Arbitrum chain settling to Arbitrum One or Arbitrum Nova. If the chain settles to a different type of parent chain, you must use its parent chain's blocks in the calculation |
1414
| `validatorAfkBlocks` | The validator whitelist is removed if this amount of time elapses and no assertions are confirmed by the protocol on the parent chain. This parameter is ignored if the `disableValidatorWhitelist` is true, indicating that there is no whitelist | 28 days (4 weeks) worth of Ethereum blocks for an L2 Arbitrum chain (settling to Ethereum) or an L3 Arbitrum chain settling to Arbitrum One or Arbitrum Nova. If the chain settles to a different type of parent chain, you must use its parent chain's blocks in the calculation |
15-
| `disableValidatorWhitelist` | Enables or disables the validator whitelist - effectively toggling between permissioned and permissionless BoLD. It is highly recommended that this value be set to `false`. More information can be found [here](../launch-arbitrum-chain/bold-adoption-for-arbitrum-chains.mdx). | `false` |
15+
| `disableValidatorWhitelist` | Enables or disables the validator whitelist - effectively toggling between permissioned and permissionless BoLD. It is highly recommended that this value be set to `false`. More information can be found [here](/launch-arbitrum-chain/02-configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains.mdx). | `false` |
1616
| `blockLeafSize` | Maximum number of blocks between assertions. It is not recommended to change this value. | 2^26 |
1717
| `bigStepLeafSize` | Maximum number of steps in the "big step" level history committment. The product of `bigStepLeafSize`, `smallStepLeafSize`, and `numBigStepLevel` should equal to the maximum number of WAVM opcodes theoretically possible in the execution of an Arbitrum block, with a small buffer. It is not recommended to change this value. | 2^19 |
1818
| `smallStepLeafSize` | Maximum number of steps in the "small step" level history committment. The product of `bigStepLeafSize`, `smallStepLeafSize`, and `numBigStepLevel` should equal to the maximum number of WAVM opcodes theoretically possible in the execution of an Arbitrum block, with a small buffer. It is not recommended to change this value. | 2^23 |

sidebars.js

Lines changed: 10 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,16 @@ const sidebars = {
320320
id: 'launch-arbitrum-chain/configure-your-chain/common-configurations/arbitrum-chain-finality',
321321
label: `Configure delayed inbox finality`,
322322
},
323+
{
324+
type: 'doc',
325+
id: 'launch-arbitrum-chain/configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains',
326+
label: 'BoLD for Arbitrum chains',
327+
},
328+
{
329+
type: 'doc',
330+
id: 'launch-arbitrum-chain/configure-your-chain/common-configurations/timeboost-for-arbitrum-chains',
331+
label: 'Timeboost for Arbitrum chains',
332+
},
323333
{
324334
type: 'category',
325335
label: 'Data Availability Committees',
@@ -603,17 +613,6 @@ const sidebars = {
603613
id: 'launch-arbitrum-chain/ecosystem-support/add-arbitrum-chain-to-bridge-ui',
604614
label: `Add your chain to the bridge`,
605615
},
606-
{
607-
type: 'doc',
608-
id: 'launch-arbitrum-chain/bold-adoption-for-arbitrum-chains',
609-
label: 'BoLD for Arbitrum chains',
610-
},
611-
{
612-
type: 'doc',
613-
id: 'launch-arbitrum-chain/timeboost-for-arbitrum-chains',
614-
label: 'Timeboost for Arbitrum chains',
615-
},
616-
617616
{
618617
type: 'doc',
619618
id: 'launch-arbitrum-chain/concepts/public-preview-expectations',

vercel.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -200,11 +200,21 @@
200200
"destination": "/how-arbitrum-works/l1-to-l2-messaging",
201201
"permanent": false
202202
},
203+
{
204+
"source": "/(docs/launch-arbitrum-chain/bold-adoption-for-arbitrum-chains/?)",
205+
"destination": "/(docs/launch-arbitrum-chain/configure-your-chain/common-configurations/bold-adoption-for-arbitrum-chains/?)",
206+
"permanent": false
207+
},
203208
{
204209
"source": "/(docs/launch-arbitrum-chain/how-tos/arbitrum-chain-finality/?)",
205210
"destination": "/(docs/launch-arbitrum-chain/configure-your-chain/common-configurations/arbitrum-chain-finality/?)",
206211
"permanent": false
207212
},
213+
{
214+
"source": "/(docs/launch-arbitrum-chain/timeboost-for-arbitrum-chains/?)",
215+
"destination": "/(docs/launch-arbitrum-chain/configure-your-chain/common-configurations/timeboost-for-arbitrum-chains/?)",
216+
"permanent": false
217+
},
208218
{
209219
"source": "/(docs/mainnet-beta/?)",
210220
"destination": "/build-decentralized-apps/reference/mainnet-risks",

0 commit comments

Comments
 (0)