-
Notifications
You must be signed in to change notification settings - Fork 101
Add BoLD reimbursement specifications #946
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
base: main
Are you sure you want to change the base?
Add BoLD reimbursement specifications #946
Conversation
add exact timestamps and txn hash
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
Note that the correctness of this procedure depends on the idea that *it’s OK to reimburse adversaries for bonds on irrelevant assertions*. This should be OK, because there are two types of subchallenges: | ||
|
||
- Subchallenges where honest parties participate. In such subchallenges, honest parties will win, and so no adversary will get reimbursed | ||
- Subchallenges where no honest parties participate. In such subchallenges, the honest party doesn’t care about the outcome (i.e., the subchallenge is irrelevant from the point of view of determining the correctness of any honest assertion). In this case, one adversarial assertion will win and the rest will be slashed. The best case for the adversary here is that they have an unrivaled irrelevant assertion, in which case they will get their bond back and break even. |
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.
- Subchallenges where no honest parties participate. In such subchallenges, the honest party doesn’t care about the outcome (i.e., the subchallenge is irrelevant from the point of view of determining the correctness of any honest assertion). In this case, one adversarial assertion will win and the rest will be slashed. The best case for the adversary here is that they have an unrivaled irrelevant assertion, in which case they will get their bond back and break even. | |
- Sub-challenges where no honest parties participate. In such sub-challenges, the honest party doesn't care about the outcome (i.e., the sub-challenge is irrelevant in determining the correctness of any honest assertion). In this case, one adversarial assertion will win, and the rest will be slashed. The best case for the adversary here is that they have an unrivaled irrelevant assertion, in which case they will get their bond back and break even. |
docs/arbitrum-bold-economics/bold-reimbursing-challenge-bonds.md
Outdated
Show resolved
Hide resolved
- Subchallenges where honest parties participate. In such subchallenges, honest parties will win, and so no adversary will get reimbursed | ||
- Subchallenges where no honest parties participate. In such subchallenges, the honest party doesn’t care about the outcome (i.e., the subchallenge is irrelevant from the point of view of determining the correctness of any honest assertion). In this case, one adversarial assertion will win and the rest will be slashed. The best case for the adversary here is that they have an unrivaled irrelevant assertion, in which case they will get their bond back and break even. | ||
|
||
However, note that this depends crucially on *not rewarding the bonded proposers on assertions beyond the amount needed to reimburse them.* In the presence of such rewards, the situation becomes more complicated, as we need to prevent the confirmation of even irrelevant assertions, since the adversary can actually make money by confirming such assertions. It should be possible to do this by requiring the “claim reimbursement” operation (in the on-chain code) to take a proof that the supplied edge being reimbursed can trace a path all the way up the tree back to an honest root assertion. However, this requires on-chain changes and would add complexity. |
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.
However, note that this depends crucially on *not rewarding the bonded proposers on assertions beyond the amount needed to reimburse them.* In the presence of such rewards, the situation becomes more complicated, as we need to prevent the confirmation of even irrelevant assertions, since the adversary can actually make money by confirming such assertions. It should be possible to do this by requiring the “claim reimbursement” operation (in the on-chain code) to take a proof that the supplied edge being reimbursed can trace a path all the way up the tree back to an honest root assertion. However, this requires on-chain changes and would add complexity. | |
However, note that this depends on *not rewarding the bonded proposers on assertions beyond the amount needed to reimburse them.* In the presence of such rewards, the situation becomes more complicated, as we need to prevent the confirmation of even irrelevant assertions since the adversary can make money by confirming such assertions. It should be possible to do this by requiring the "claim reimbursement" operation (in the on-chain code) to take a proof that the supplied edge reimbursement can trace a path up the tree back to an honest root assertion. However, this requires on-chain changes and would add complexity. |
|
||
In our initial implementation of BoLD, we envision the process of paying honest proposers their service fees as being mediated by the Arbitrum Foundation. However, this calculation of how much in service fees is owed to whom is logically separate from the decision about who pays these parties their service fees (and how). | ||
|
||
Note that we deal in notional “time units” `u` here, which are likely in practice to be L1 blocktimes or something similar. The details of what these units represent actually don’t matter very much; we just need a conversion factor `\theta = \frac{u}{year}` |
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.
Note that we deal in notional “time units” `u` here, which are likely in practice to be L1 blocktimes or something similar. The details of what these units represent actually don’t matter very much; we just need a conversion factor `\theta = \frac{u}{year}` | |
:::note | |
We deal in notional “time units” `u` here, which are likely in practice to be parent chain block times or something similar. The details of what these units represent actually don’t matter very much; we just need a conversion factor `\theta = \frac{u}{year}` | |
::: |
|
||
Note that we deal in notional “time units” `u` here, which are likely in practice to be L1 blocktimes or something similar. The details of what these units represent actually don’t matter very much; we just need a conversion factor `\theta = \frac{u}{year}` | ||
|
||
Here is how service fees are calculated: |
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.
Here is how service fees are calculated: | |
How service fees get calculated: |
Here is how service fees are calculated: | ||
|
||
- Take a time range `[t_{initial}, t_{final})`. This corresponds to the period of time we are going to consider; we will pay out only service fees accrued during this time. | ||
- Note that `t_{final}` must be some time in the past from the current time `t_{current}`. This is so that we can know “once and for all” which assertions were honest (from BoLD’s viewpoint) and which were not. How far in the past? The worst case is where the last assertion proposed before `t_{final}` resulted in a challenge, which could take up to `2 * p` to resolve (`p` being a challenge period). |
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.
- Note that `t_{final}` must be some time in the past from the current time `t_{current}`. This is so that we can know “once and for all” which assertions were honest (from BoLD’s viewpoint) and which were not. How far in the past? The worst case is where the last assertion proposed before `t_{final}` resulted in a challenge, which could take up to `2 * p` to resolve (`p` being a challenge period). | |
- `t_{final}` must be some time in the past from the current time `t_{current}`. This is so that we can know “once and for all” which assertions were honest (from BoLD’s viewpoint) and which were not. How far in the past? The worst case is where the last assertion proposed before `t_{final}` resulted in a challenge, which could take up to `2 * p` to resolve (`p` being a challenge period). |
|
||
- Take a time range `[t_{initial}, t_{final})`. This corresponds to the period of time we are going to consider; we will pay out only service fees accrued during this time. | ||
- Note that `t_{final}` must be some time in the past from the current time `t_{current}`. This is so that we can know “once and for all” which assertions were honest (from BoLD’s viewpoint) and which were not. How far in the past? The worst case is where the last assertion proposed before `t_{final}` resulted in a challenge, which could take up to `2 * p` to resolve (`p` being a challenge period). | ||
- We might be able to get away with less that `2*p` if we are doing this offchain, since an offchain user can determine which assertions are honest before BoLD knows. These calculated honest assertions could then be used in the DAO proposal. However, we would still require at least that the assertions up to `t_{final}` have gained finality on L1 before `t_{current}`. |
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 might be able to get away with less that `2*p` if we are doing this offchain, since an offchain user can determine which assertions are honest before BoLD knows. These calculated honest assertions could then be used in the DAO proposal. However, we would still require at least that the assertions up to `t_{final}` have gained finality on L1 before `t_{current}`. | |
- We might be able to get away with less that `2*p` if we are doing this offchain, since an offchain user can determine which assertions are honest before BoLD knows. These calculated honest assertions could then be used in the DAO proposal. However, we would still require at least that the assertions up to `t_{final}` have gained finality on the parent chain before `t_{current}`. |
|
||
## How Much Does it Cost? | ||
|
||
It’s natural to ask how much this mechanism is going to cost the ArbitrumDAO. First, we imagine that the common case might be that the Arbitrum Foundation's proposer is usually the one who proposes blocks. In this case, there is only one proposer (assuming the Arbitrum Foundation is honest and there are no challengers). This is actually one reason we don’t want to make the service fees for proposing blocks too high: we don’t want unnecessary competition between honest proposers trying to make a profit by earning service fees. In this “happy case” (only Arbitrum Foundation proposing), no service fees need to be paid out. |
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.
It’s natural to ask how much this mechanism is going to cost the ArbitrumDAO. First, we imagine that the common case might be that the Arbitrum Foundation's proposer is usually the one who proposes blocks. In this case, there is only one proposer (assuming the Arbitrum Foundation is honest and there are no challengers). This is actually one reason we don’t want to make the service fees for proposing blocks too high: we don’t want unnecessary competition between honest proposers trying to make a profit by earning service fees. In this “happy case” (only Arbitrum Foundation proposing), no service fees need to be paid out. | |
It’s natural to ask how much this mechanism is going to cost the Arbitrum DAO. First, we imagine that the common case might be that the Arbitrum Foundation's proposer is usually the one who proposes blocks. In this case, there is only one proposer (assuming the Arbitrum Foundation is honest and there are no challengers). This is actually one reason we don’t want to make the service fees for proposing blocks too high: we don’t want unnecessary competition between honest proposers trying to make a profit by earning service fees. In this “happy case” (with only Arbitrum Foundation proposing), no service fees need to be paid out. |
|
||
On the other hand, it could (in the worst case) happen that the Arbitrum Foundation proposer never gets a chance to propose. In this case, other honest parties would be earning 3% APY on their bonds 100% of the time. So, over a year, we would have to pay out 3% * 3600 = 108 `ETH`. | ||
|
||
Note that this is truly the worst case: we are *guaranteed never to have to pay more than the staking rate that L1 Etheruem validators get paid for the same time period*. **Proof Sketch:** To see this, let’s look retrospectively at states of the challenge protocol, from the perspective of a time after all relevant L1 blocks have become finalized, and all relevant assertions have either been accepted or rejected (i.e., adjudicated as honest or dishonest). First notice that for all points in time, there can only be one bonded honest proposer at that point in time. |
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.
Note that this is truly the worst case: we are *guaranteed never to have to pay more than the staking rate that L1 Etheruem validators get paid for the same time period*. **Proof Sketch:** To see this, let’s look retrospectively at states of the challenge protocol, from the perspective of a time after all relevant L1 blocks have become finalized, and all relevant assertions have either been accepted or rejected (i.e., adjudicated as honest or dishonest). First notice that for all points in time, there can only be one bonded honest proposer at that point in time. | |
This example is truly the worst case: we are *guaranteed never to have to pay more than the staking rate that the parent chain Ethereum validators get paid for the same period*. **Proof Sketch:** To see this, let’s look retrospectively at states of the challenge protocol, from the perspective of a time after all relevant parent chain blocks have become finalized, and all relevant assertions have either been accepted or rejected (i.e., adjudicated as honest or dishonest). First,, notice that there can only be one bonded honest proposer at that point in time for all points in time. |
|
||
Note that this is truly the worst case: we are *guaranteed never to have to pay more than the staking rate that L1 Etheruem validators get paid for the same time period*. **Proof Sketch:** To see this, let’s look retrospectively at states of the challenge protocol, from the perspective of a time after all relevant L1 blocks have become finalized, and all relevant assertions have either been accepted or rejected (i.e., adjudicated as honest or dishonest). First notice that for all points in time, there can only be one bonded honest proposer at that point in time. | ||
|
||
- Suppose there were two honest proposers some point in time, bonded on two different assertions. Only one bond can exist on any one assertion (including all its predecessor assertions). So the two honest proposers must be bonded on the same assertion; a contradiction. |
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.
- Suppose there were two honest proposers some point in time, bonded on two different assertions. Only one bond can exist on any one assertion (including all its predecessor assertions). So the two honest proposers must be bonded on the same assertion; a contradiction. | |
- Suppose there were two honest proposers some point in time, bonded on two different assertions. Only one bond can exist on any one assertion (including all its predecessor assertions). So, the two honest proposers must be bonded on the same assertion, which is a contradiction. |
Note that this is truly the worst case: we are *guaranteed never to have to pay more than the staking rate that L1 Etheruem validators get paid for the same time period*. **Proof Sketch:** To see this, let’s look retrospectively at states of the challenge protocol, from the perspective of a time after all relevant L1 blocks have become finalized, and all relevant assertions have either been accepted or rejected (i.e., adjudicated as honest or dishonest). First notice that for all points in time, there can only be one bonded honest proposer at that point in time. | ||
|
||
- Suppose there were two honest proposers some point in time, bonded on two different assertions. Only one bond can exist on any one assertion (including all its predecessor assertions). So the two honest proposers must be bonded on the same assertion; a contradiction. | ||
- Suppose there exists some point in time where we have paid out more than 108 `ETH` during the past year. In the case discussed above (”the Arbitrum Foundation proposer never gets a chance to propose”), there is exactly one honest bonded proposer eligible for the service fee at any point in time. But in this case we pay out only 108 `ETH`. To pay out more we would need to be paying out service fees on more bonds. But since every point in time already has a bond on an honest assertion, the only way to “squeeze in” more bonded value would be to create a situation where two honest parties are bonded on different assertions (as, again, there can only be one bond per assertion) at some point in time. But this contradicts the statement proven above (that there can only be one bonded honest proposer at any point in time). |
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.
- Suppose there exists some point in time where we have paid out more than 108 `ETH` during the past year. In the case discussed above (”the Arbitrum Foundation proposer never gets a chance to propose”), there is exactly one honest bonded proposer eligible for the service fee at any point in time. But in this case we pay out only 108 `ETH`. To pay out more we would need to be paying out service fees on more bonds. But since every point in time already has a bond on an honest assertion, the only way to “squeeze in” more bonded value would be to create a situation where two honest parties are bonded on different assertions (as, again, there can only be one bond per assertion) at some point in time. But this contradicts the statement proven above (that there can only be one bonded honest proposer at any point in time). | |
- Suppose there exists a point in time where we have paid out more than 108 `ETH` during the past year. In the case above (”the Arbitrum Foundation proposer never gets a chance to propose”), there is exactly one honest bonded proposer eligible for the service fee at any point in time. But in this case we pay out only 108 `ETH`. To pay out more we would need to be paying out service fees on more bonds. But since every point in time already has a bond on an honest assertion, the only way to “squeeze in” more bonded value would be to create a situation where two honest parties are bonded on different assertions (as, again, there can only be one bond per assertion) at some point in time. But this contradicts the statement proven above (that there can only be one bonded honest proposer at any point in time). |
|
||
## Other Remarks | ||
|
||
In principle, the calculations involved in determining who should receive service fee payments, and how much they receive, could be done on chain. It would be possible to implement a smart contract that a current or former proposer can call to retrieve they service fee payments they are owed; such a smart contract would probably be feasible from a gas-cost standpoint. For the initial release of BoLD, however, we do not do this due to time constraints. Determining how *often* to pay parties their service fees is not obvious and involves some tradeoffs. This decision will be left up to the Arbitrum Foundation as they are in trust, by the ArbitrumDAO, to make these payments on behalf of the ArbitrumDAO, when necessary. All service fee payments will be manually processed by the Arbitrum Foundation on a periodic basis (weekly or monthly) alongside a requirement that all payments adhere to the Arbitrum Foundation’s compliance process. |
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.
In principle, the calculations involved in determining who should receive service fee payments, and how much they receive, could be done on chain. It would be possible to implement a smart contract that a current or former proposer can call to retrieve they service fee payments they are owed; such a smart contract would probably be feasible from a gas-cost standpoint. For the initial release of BoLD, however, we do not do this due to time constraints. Determining how *often* to pay parties their service fees is not obvious and involves some tradeoffs. This decision will be left up to the Arbitrum Foundation as they are in trust, by the ArbitrumDAO, to make these payments on behalf of the ArbitrumDAO, when necessary. All service fee payments will be manually processed by the Arbitrum Foundation on a periodic basis (weekly or monthly) alongside a requirement that all payments adhere to the Arbitrum Foundation’s compliance process. | |
In principle, the calculations involved in determining who should receive service fee payments, and how much they receive, could be done on chain. It would be possible to implement a smart contract that a current or former proposer can call to retrieve they service fee payments they are owed; such a smart contract would probably be feasible from a gas-cost standpoint. For the initial release of BoLD, however, we do not do this due to time constraints. Determining how *often* to pay parties their service fees is not obvious and involves some tradeoffs. This decision will be left up to the Arbitrum Foundation as they are in trust, by the Arbitrum DAO, to make these payments on behalf of the Arbitrum DAO, when necessary. All service fee payments will be manually processed by the Arbitrum Foundation on a periodic basis (weekly or monthly) alongside a requirement that all payments adhere to the Arbitrum Foundation’s compliance process. |
|
||
In principle, the calculations involved in determining who should receive service fee payments, and how much they receive, could be done on chain. It would be possible to implement a smart contract that a current or former proposer can call to retrieve they service fee payments they are owed; such a smart contract would probably be feasible from a gas-cost standpoint. For the initial release of BoLD, however, we do not do this due to time constraints. Determining how *often* to pay parties their service fees is not obvious and involves some tradeoffs. This decision will be left up to the Arbitrum Foundation as they are in trust, by the ArbitrumDAO, to make these payments on behalf of the ArbitrumDAO, when necessary. All service fee payments will be manually processed by the Arbitrum Foundation on a periodic basis (weekly or monthly) alongside a requirement that all payments adhere to the Arbitrum Foundation’s compliance process. | ||
|
||
As outlined in the now-passed [AIP proposal to request funds to bootstrap the first BoLD validator](https://forum.arbitrum.foundation/t/aip-funds-to-bootstrap-the-first-bold-validator/24506#p-51247-payment-facilitation-final-costs-restrictions-13), all requested funds for the service fee will be sent to a multi-sig controlled by the Arbitrum Foundation. After 3 years, any unspent funds from the service fee reimbursement budget will be returned to the ArbitrumDAO and a subsequent proposal will be posted to help cover the future operational costs of Arbitrum. The ArbitrumDAO reserves the right to revoke the Arbitrum Foundation’s proposer at any time and return the bonds back to the treasury. This will be implemented and enforced via the BoLD smart contracts: |
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.
As outlined in the now-passed [AIP proposal to request funds to bootstrap the first BoLD validator](https://forum.arbitrum.foundation/t/aip-funds-to-bootstrap-the-first-bold-validator/24506#p-51247-payment-facilitation-final-costs-restrictions-13), all requested funds for the service fee will be sent to a multi-sig controlled by the Arbitrum Foundation. After 3 years, any unspent funds from the service fee reimbursement budget will be returned to the ArbitrumDAO and a subsequent proposal will be posted to help cover the future operational costs of Arbitrum. The ArbitrumDAO reserves the right to revoke the Arbitrum Foundation’s proposer at any time and return the bonds back to the treasury. This will be implemented and enforced via the BoLD smart contracts: | |
As outlined in the approved [AIP proposal to request funds to bootstrap the first BoLD validator](https://forum.arbitrum.foundation/t/aip-funds-to-bootstrap-the-first-bold-validator/24506#p-51247-payment-facilitation-final-costs-restrictions-13), all requested funds for the service fee will be sent to a multi-sig controlled by the Arbitrum Foundation. After three years, any unspent funds from the service fee reimbursement budget will be returned to the Arbitrum DAO and a forthcoming proposal will be posted to help cover the future operational costs of Arbitrum. The Arbitrum DAO reserves the right to revoke the Arbitrum Foundation’s proposer at any time and return the bonds back to the treasury. This will be implemented and enforced via the BoLD smart contracts: |
In principle, the calculations involved in determining who should receive service fee payments, and how much they receive, could be done on chain. It would be possible to implement a smart contract that a current or former proposer can call to retrieve they service fee payments they are owed; such a smart contract would probably be feasible from a gas-cost standpoint. For the initial release of BoLD, however, we do not do this due to time constraints. Determining how *often* to pay parties their service fees is not obvious and involves some tradeoffs. This decision will be left up to the Arbitrum Foundation as they are in trust, by the ArbitrumDAO, to make these payments on behalf of the ArbitrumDAO, when necessary. All service fee payments will be manually processed by the Arbitrum Foundation on a periodic basis (weekly or monthly) alongside a requirement that all payments adhere to the Arbitrum Foundation’s compliance process. | ||
|
||
As outlined in the now-passed [AIP proposal to request funds to bootstrap the first BoLD validator](https://forum.arbitrum.foundation/t/aip-funds-to-bootstrap-the-first-bold-validator/24506#p-51247-payment-facilitation-final-costs-restrictions-13), all requested funds for the service fee will be sent to a multi-sig controlled by the Arbitrum Foundation. After 3 years, any unspent funds from the service fee reimbursement budget will be returned to the ArbitrumDAO and a subsequent proposal will be posted to help cover the future operational costs of Arbitrum. The ArbitrumDAO reserves the right to revoke the Arbitrum Foundation’s proposer at any time and return the bonds back to the treasury. This will be implemented and enforced via the BoLD smart contracts: | ||
* Withdrawal Address. The funds will be deposited into BoLD and the withdrawal address set to the ‘UpgradeExecutor’ contract on L1. |
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.
* Withdrawal Address. The funds will be deposited into BoLD and the withdrawal address set to the ‘UpgradeExecutor’ contract on L1. | |
* **Withdrawal address**: The funds will be deposited into BoLD and the withdrawal address set to the ‘UpgradeExecutor’ contract on the parent chain. |
|
||
As outlined in the now-passed [AIP proposal to request funds to bootstrap the first BoLD validator](https://forum.arbitrum.foundation/t/aip-funds-to-bootstrap-the-first-bold-validator/24506#p-51247-payment-facilitation-final-costs-restrictions-13), all requested funds for the service fee will be sent to a multi-sig controlled by the Arbitrum Foundation. After 3 years, any unspent funds from the service fee reimbursement budget will be returned to the ArbitrumDAO and a subsequent proposal will be posted to help cover the future operational costs of Arbitrum. The ArbitrumDAO reserves the right to revoke the Arbitrum Foundation’s proposer at any time and return the bonds back to the treasury. This will be implemented and enforced via the BoLD smart contracts: | ||
* Withdrawal Address. The funds will be deposited into BoLD and the withdrawal address set to the ‘UpgradeExecutor’ contract on L1. | ||
* Triggering Withdrawal. The ArbitrumDAO (via governance) or the Arbitrum Foundation will have the authority to trigger a withdrawal and the funds can only be sent to the pre-established withdrawal address (i.e. the ArbitrumDAO’s treasury). |
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.
* Triggering Withdrawal. The ArbitrumDAO (via governance) or the Arbitrum Foundation will have the authority to trigger a withdrawal and the funds can only be sent to the pre-established withdrawal address (i.e. the ArbitrumDAO’s treasury). | |
* **Triggering withdrawal**: The Arbitrum DAO (via governance) or the Arbitrum Foundation will have the authority to trigger a withdrawal and the funds can only be sent to the pre-established withdrawal address (i.e., the Arbitrum DAO’s treasury). |
* Withdrawal Address. The funds will be deposited into BoLD and the withdrawal address set to the ‘UpgradeExecutor’ contract on L1. | ||
* Triggering Withdrawal. The ArbitrumDAO (via governance) or the Arbitrum Foundation will have the authority to trigger a withdrawal and the funds can only be sent to the pre-established withdrawal address (i.e. the ArbitrumDAO’s treasury). | ||
|
||
Put another way, the ArbitrumDAO will have the authority to single-handedly return the funds back to the ArbitrumDAO treasury. This model can be used for future proposals if other entities want to run a proposer on behalf of the ArbitrumDAO. |
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.
Put another way, the ArbitrumDAO will have the authority to single-handedly return the funds back to the ArbitrumDAO treasury. This model can be used for future proposals if other entities want to run a proposer on behalf of the ArbitrumDAO. | |
In short, the Arbitrum DAO will have the authority to single-handedly return the funds back to the Arbitrum DAO treasury. This model can be used for future proposals if other entities want to run a proposer on behalf of the Arbitrum DAO. |
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.
Initial review
Co-authored-by: Pete <petevielhaber@gmail.com>
This pull request adds 3 specification pages for various reimbursement procedures and expectations related to the economics of BoLD.
TODO before merging: