Skip to content

Commit 2af3720

Browse files
committed
docs: fix all misspellings
1 parent 525e09e commit 2af3720

30 files changed

+57
-57
lines changed

certora/specs/core/Slasher.spec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,7 @@ invariant listHeadHasSmallestValueOfLatestUpdateBlock(address operator, uint256
142142
TODO: rule doesn't pass. We've got separate rules for checking the LinkedList lib properties.
143143
key properties seem to be that
144144
1) `StructuredLinkedList._createLink` creates only two-way links
145-
2) `StructuredLinkedList.remove` removes both links from a node, and stiches together its existing links (which it breaks)
145+
2) `StructuredLinkedList.remove` removes both links from a node, and stitches together its existing links (which it breaks)
146146
3) `StructuredLinkedList._insert` similarly inserts a new node 'between' nodes, ensuring that the new node is well-linked
147147
invariant consistentListStructure(address operator, uint256 node1)
148148
(

certora/specs/libraries/StructuredLinkedList.spec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ invariant headInList(uint256 node)
134134

135135
/*
136136
1) `StructuredLinkedList._createLink` creates only two-way links
137-
2) `StructuredLinkedList.remove` removes both links from a node, and stiches together its existing links (which it breaks)
137+
2) `StructuredLinkedList.remove` removes both links from a node, and stitches together its existing links (which it breaks)
138138
3) `StructuredLinkedList._insert` similarly inserts a new node 'between' nodes, ensuring that the new node is well-linked
139139
*/
140140
/*

docs/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -92,7 +92,7 @@ See full documentation in [`/core/RewardsCoordinator.md`](./core/RewardsCoordina
9292
| -------- | -------- | -------- |
9393
| [`AVSDirectory.sol`](../src/contracts/core/AVSDirectory.sol) | Singleton | Transparent proxy |
9494

95-
##### Note: This contract is left unchanged for backwards compatability. Operator<>AVS Registrations are to be replaced entirely with the `AllocationManager` and this contract will be deprecated in a future release.
95+
##### Note: This contract is left unchanged for backwards compatibility. Operator<>AVS Registrations are to be replaced entirely with the `AllocationManager` and this contract will be deprecated in a future release.
9696

9797
Previously, the `AVSDirectory` handled interactions between AVSs and the EigenLayer core contracts. Once registered as an operator in EigenLayer core (via the `DelegationManager`), operators could register with one or more AVSs (via the AVS's contracts) to begin providing services to them offchain. As a part of registering with an AVS, the AVS would record this registration in the core contracts by calling into the `AVSDirectory`. As of the slashing release, this process is now managed by the [`AllocationManager`](#allocationmanager).
9898

docs/core/AVSDirectory.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Functionality is provided for AVSs to migrate from an pre-operatorSet registrati
1818
function becomeOperatorSetAVS() external;
1919
```
2020

21-
AVSs call this to become an operator set AVS. Once an AVS becomes an operator set AVS, they can no longer register operators via the legacy M2 registration path. This is a seperate function to help avoid accidental migrations to the operator set AVS model.
21+
AVSs call this to become an operator set AVS. Once an AVS becomes an operator set AVS, they can no longer register operators via the legacy M2 registration path. This is a separate function to help avoid accidental migrations to the operator set AVS model.
2222

2323
## `createOperatorSets`
2424
```solidity
@@ -122,7 +122,7 @@ function forceDeregisterFromOperatorSets(
122122

123123
Operators can use this function to deregister from an operator set without requiring the AVS to sign off on the deregistration. This function is intended to be used in cases where the AVS contracts are in a state that prevents operators from deregistering (either malicious or unintentional).
124124

125-
Operators can also deallocate their slashable stake allocation seperately to avoid slashing risk, so this function is mainly for external integrations to interpret the correct state of the protocol.
125+
Operators can also deallocate their slashable stake allocation separately to avoid slashing risk, so this function is mainly for external integrations to interpret the correct state of the protocol.
126126

127127
## `updateAVSMetadataURI`
128128
```solidity
@@ -142,4 +142,4 @@ This function allows an AVS to update the metadata URI associated with the AVS.
142142

143143
## View Functions
144144

145-
See the [AVS Directory Inteface](../../../src/contracts/interfaces/IAVSDirectory.sol) for view functions.
145+
See the [AVS Directory Interface](../../../src/contracts/interfaces/IAVSDirectory.sol) for view functions.

docs/core/AllocationManager.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -463,7 +463,7 @@ _Note: this method can be called directly by an operator, or by a caller authori
463463

464464
This function is called by an operator to EITHER increase OR decrease the slashable magnitude allocated from a strategy to an operator set. As input, the operator provides an operator set as the target, and a list of strategies and corresponding `newMagnitudes` to allocate. The `newMagnitude` value is compared against the operator's current `Allocation` for that operator set/strategy:
465465
* If `newMagnitude` is _greater than_ `Allocation.currentMagnitude`, this is an allocation
466-
* If `newMagnitude` is _less than_ `Allocation.currentMagnitude`, this is a dellocation
466+
* If `newMagnitude` is _less than_ `Allocation.currentMagnitude`, this is a deallocation
467467
* If `newMagnitude` is _equal to_ `Allocation.currentMagnitude`, this is invalid (revert)
468468

469469
Allocation modifications play by different rules depending on a few factors. Recall that at all times, the `encumberedMagnitude` for a strategy may not exceed that strategy's `maxMagnitude`. Additionally, note that _before processing a modification for a strategy,_ the `deallocationQueue` for that strategy is first cleared. This ensures any completable deallocations are processed first, freeing up magnitude for allocation. This process is further explained in [`clearDeallocationQueue`](#cleardeallocationqueue).
@@ -550,7 +550,7 @@ This queue contains a per-strategy ordered list of operator sets that, due to pr
550550
This method stops iterating when: the queue is empty, a deallocation is reached that cannot be completed yet, or when it has cleared `numToClear` entries from the queue.
551551

552552
*Effects*:
553-
* For each `strategy` and _completeable_ deallocation in `deallocationQueue[operator][strategy]`:
553+
* For each `strategy` and _completable_ deallocation in `deallocationQueue[operator][strategy]`:
554554
* Pops the corresponding operator set from the `deallocationQueue`
555555
* Reduces `allocation.currentMagnitude` by the deallocated amount
556556
* Sets `allocation.pendingDiff` and `allocation.effectBlock` to 0
@@ -602,7 +602,7 @@ AVSs use slashing as a punitive disincentive for misbehavior. For details and ex
602602

603603
In order to slash an eligible operator, the AVS specifies which operator set the operator belongs to, the `strategies` the operator should be slashed for, and for each strategy, the _proportion of the operator's allocated magnitude_ that should be slashed (given by `wadsToSlash`). An optional `description` string allows the AVS to add context to the slash.
604604

605-
Once triggered in the `AllocationManager`, slashing is instant and irreversable. For each slashed strategy, the operator's `maxMagnitude` and `encumberedMagnitude` are decreased, and the allocation made to the given operator set has its `currentMagnitude` reduced. See [TODO - Accounting Doc]() for details on how slashed amounts are calculated.
605+
Once triggered in the `AllocationManager`, slashing is instant and irreversible. For each slashed strategy, the operator's `maxMagnitude` and `encumberedMagnitude` are decreased, and the allocation made to the given operator set has its `currentMagnitude` reduced. See [TODO - Accounting Doc]() for details on how slashed amounts are calculated.
606606

607607
There are two edge cases to note for this method:
608608
1. In the process of slashing an `operator` for a given `strategy`, if the `Allocation` being slashed has a `currentMagnitude` of 0, the call will NOT revert. Instead, the `strategy` is skipped and slashing continues with the next `strategy` listed. This is to prevent an edge case where slashing occurs on or around a deallocation's `effectBlock` -- if the call reverted, the entire slash would fail. Skipping allows any valid slashes to be processed without requiring resubmission.

docs/core/DelegationManager.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ The `DelegationManager's` responsibilities can be broken down into the following
4747
The `DelegationManager` tracks operator-related state in the following mappings:
4848

4949
```solidity
50-
/// @notice Returns the `operator` a `staker` is delgated to, or address(0) if not delegated.
50+
/// @notice Returns the `operator` a `staker` is delegated to, or address(0) if not delegated.
5151
/// Note: operators are delegated to themselves
5252
mapping(address staker => address operator) public delegatedTo;
5353
@@ -192,7 +192,7 @@ The `DelegationManager` tracks withdrawal-related state in the following mapping
192192
*
193193
* @param staker The address that queued the withdrawal
194194
* @param delegatedTo The address that the staker was delegated to at the time the withdrawal was queued. Used to determine if additional slashing occurred before
195-
* this withdrawal became completeable.
195+
* this withdrawal became completable.
196196
* @param withdrawer The address that will call the contract to complete the withdrawal. Note that this will always equal `staker`; alternate withdrawers are not
197197
* supported at this time.
198198
* @param nonce The staker's `cumulativeWithdrawalsQueued` at time of queuing. Used to ensure withdrawals have unique hashes.
@@ -464,7 +464,7 @@ struct QueuedWithdrawalParams {
464464
* to slashing. If any slashing has occurred, the shares received may be less than the queued deposit shares.
465465
*
466466
* @dev To view all the staker's strategies/deposit shares that can be queued for withdrawal, see `getDepositedShares`
467-
* @dev To view the current coversion between a staker's deposit shares and withdrawable shares, see `getWithdrawableShares`
467+
* @dev To view the current conversion between a staker's deposit shares and withdrawable shares, see `getWithdrawableShares`
468468
*/
469469
function queueWithdrawals(
470470
QueuedWithdrawalParams[] calldata queuedWithdrawalParams
@@ -518,7 +518,7 @@ Note that the `QueuedWithdrawalParams.__deprecated_withdrawer` field is ignored.
518518
*
519519
* @param staker The address that queued the withdrawal
520520
* @param delegatedTo The address that the staker was delegated to at the time the withdrawal was queued. Used to determine if additional slashing occurred before
521-
* this withdrawal became completeable.
521+
* this withdrawal became completable.
522522
* @param withdrawer The address that will call the contract to complete the withdrawal. Note that this will always equal `staker`; alternate withdrawers are not
523523
* supported at this time.
524524
* @param nonce The staker's `cumulativeWithdrawalsQueued` at time of queuing. Used to ensure withdrawals have unique hashes.
@@ -661,7 +661,7 @@ This method is called by the `AllocationManager` when processing an AVS's slash
661661

662662
Additionally, any _slashable shares_ in the withdrawal queue are marked for burning according to the same slashing proportion (shares in the withdrawal queue remain slashable for `MIN_WITHDRAWAL_DELAY_BLOCKS`). For the slashed strategy, the corresponding share manager (`EigenPodManager/StrateyManager`) is called, increasing the burnable shares for that strategy.
663663

664-
**Note**: native ETH does not currently posess a burning mechanism, as this requires Pectra to be able to force exit validators. Currently, slashing for the `beaconChainETHStrategy` is realized by modifying the amount stakers are able to withdraw.
664+
**Note**: native ETH does not currently possess a burning mechanism, as this requires Pectra to be able to force exit validators. Currently, slashing for the `beaconChainETHStrategy` is realized by modifying the amount stakers are able to withdraw.
665665

666666
*Effects*:
667667
* The `operator's` `operatorShares` are reduced for the given `strategy`, according to the proportion given by `prevMaxMagnitude` and `newMaxMagnitude`

docs/core/RewardsCoordinator.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ This document is organized according to the following themes (click each to be t
4343
* Stakers and Operators can designate a "claimer" who can claim rewards via on their behalf via `processClaim`. If a claimer is not set in `claimerFor`, the earner will have to call `processClaim` themselves.
4444
* Note that the claimer isn't necessarily the reward recipient, but they do have the authority to specify the recipient when calling `processClaim` on the earner's behalf.
4545
* `mapping(address => mapping(IERC20 => uint256)) public cumulativeClaimed`: earner => token => total amount claimed to date
46-
* Mapping for earners(Stakers/Operators) to track their total claimed earnings per reward token. This mapping is used to calculate the difference between the cumulativeEarnings stored in the merkle tree and the previous total claimed amount. This difference is then transfered to the specified destination address.
46+
* Mapping for earners(Stakers/Operators) to track their total claimed earnings per reward token. This mapping is used to calculate the difference between the cumulativeEarnings stored in the merkle tree and the previous total claimed amount. This difference is then transferred to the specified destination address.
4747
* `uint16 public defaultOperatorSplitBips`: *Used off-chain* by the rewards updater to calculate an Operator's split for a specific reward.
4848
* This is expected to be a flat 10% rate for the initial rewards release. Expressed in basis points, this is `1000`.
4949
* `mapping(address => mapping(address => OperatorSplit)) internal _operatorAVSSplitBips`: operator => AVS => `OperatorSplit`
@@ -58,7 +58,7 @@ This document is organized according to the following themes (click each to be t
5858
* **AVS** (Autonomous Verifiable Service) refers to the contract entity that is submitting rewards to the `RewardsCoordinator`.
5959
* This is assumed to be a customized `ServiceManager` contract of some kind that is interfacing with the EigenLayer protocol. See the `ServiceManagerBase` docs here: [`eigenlayer-middleware/docs/ServiceManagerBase.md`](https://github.com/Layr-Labs/eigenlayer-middleware/blob/dev/docs/ServiceManagerBase.md).
6060
* An **Operator Set** refers to a collection of registered operators and strategies. See [ELIP-002](https://github.com/eigenfoundation/ELIPs/blob/main/ELIPs/ELIP-002.md#operator-sets) for more details.
61-
* An **Operator Set Key** descibes the tuple of an AVS address and an ID that uniquely identifies an Operator Set. See the [AllocationManager](./AllocationManager.md#operator-sets) for details.
61+
* An **Operator Set Key** describes the tuple of an AVS address and an ID that uniquely identifies an Operator Set. See the [AllocationManager](./AllocationManager.md#operator-sets) for details.
6262
* A **rewards submission** includes, unless specified otherwise, both the v1 `RewardsSubmission` and the v2 `OperatorDirectedRewardsSubmission` types.
6363
* The internal function `_checkClaim(RewardsMerkleClaim calldata claim, DistributionRoot memory root)` checks the merkle inclusion of a claim against a `DistributionRoot`
6464
* It reverts if any of the following are true:

docs/core/accounting/SharesAccountingEdgeCases.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ Note that in the first case, it _is_ possible for the staker to undelegate, queu
3232

3333
Additionally, if $l_n = 0$ for a given staker in the beacon chain ETH strategy, then **any further deposits of ETH or restaking of validators will not yield shares in EigenLayer.** This should only occur in extraordinary circumstances, as a beacon chain slashing factor of 0 means that a staker both has ~0 assets in their `EigenPod`, and ALL of their validators have been ~100% slashed on the beacon chain - something that happens only when coordinated groups of validators are slashed. If this case occurs, an `EigenPod` is essentially bricked - the pod owner should NOT send ETH to the pod, and should NOT point additional validators at the pod.
3434

35-
These are all expected edge cases and their occurances and side effects are within acceptable tolerances.
35+
These are all expected edge cases and their occurrences and side effects are within acceptable tolerances.
3636

3737
## Upper Bound on Deposit Scaling Factor $k_n$
3838

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "eigenlayer-contracts",
33
"version": "1.0.0",
4-
"description": "<a name=\"introduction\"/></a> # EigenLayer EigenLayer (formerly 'EigenLayr') is a set of smart contracts deployed on Ethereum that enable restaking of assets to secure new services. At present, this repository contains *both* the contracts for EigenLayer *and* a set of general \"middleware\" contracts, designed to be reuseable across different applications built on top of EigenLayer.",
4+
"description": "<a name=\"introduction\"/></a> # EigenLayer EigenLayer (formerly 'EigenLayr') is a set of smart contracts deployed on Ethereum that enable restaking of assets to secure new services. At present, this repository contains *both* the contracts for EigenLayer *and* a set of general \"middleware\" contracts, designed to be reusable across different applications built on top of EigenLayer.",
55
"main": "index.js",
66
"directories": {
77
"doc": "docs",

script/deploy/devnet/deploy_from_scratch.s.sol

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,7 @@ contract DeployFromScratch is Script, Test {
330330
// Create a proxy beacon for base strategy implementation
331331
strategyBeacon = new UpgradeableBeacon(address(baseStrategyImplementation));
332332

333-
// Strategy Factory, upgrade and initalized
333+
// Strategy Factory, upgrade and initialized
334334
eigenLayerProxyAdmin.upgradeAndCall(
335335
ITransparentUpgradeableProxy(payable(address(strategyFactory))),
336336
address(strategyFactoryImplementation),

0 commit comments

Comments
 (0)