docs: address the second round of EDF docs review - #995
Merged
TheDZhon merged 9 commits intoSep 15, 2026
Merged
Conversation
- ejector allowlist must hold delegate EOAs, old accounts stay ~7 days, only a build with execute() unwrapping works - oracle manual: deploy DelegationContract and configure the daemon before the vote - operator guide: real council daemon behaviour with an empty DELEGATION_CONTRACT_ADDRESS, oracle 8.1.0 log text, trace-level alerts and delegate code polling, minimum versions, funding required before the vote - custody policy: minimum 48 h cooldown, delegate must be a plain EOA and never sign EIP-7702 - deposit security manual: DSM v5 signed message and the direct call path for pause and unvet - protocol levers: fix the DSM address, add the proposed v5 one - tooling: bump council daemon to 4.1.2 and depositor bot to 5.7.0
Contributor
There was a problem hiding this comment.
🟡 Changes recommended
Operational version guidance and several contract and monitoring descriptions remain contradictory or inaccurate.
Get a fresh assessment by requesting another Copilot review.
Pull request overview
Updates EDF documentation for LIP-37 deployment, operation, custody, rotation, and DSM v5 integration.
Changes:
- Adds DelegationFactory and DelegationContract references.
- Updates EDF operator procedures and minimum software versions.
- Revises DSM, validator-ejector, and related operational guidance.
File summaries
| File | Description |
|---|---|
sidebars.js |
Adds EDF contract pages. |
docs/contracts/delegation-contract.md |
Documents DelegationContract behavior and API. |
docs/contracts/delegation-factory.md |
Documents factory deployment API. |
docs/contracts/deposit-security-module.md |
Updates reference for DSM v5. |
docs/guides/curated-module/exits/tooling-setup.md |
Corrects oracle allowlist guidance. |
docs/guides/deposit-security-manual.md |
Documents EDF guardian behavior. |
docs/guides/edf/edf-operator-guide.md |
Updates setup, monitoring, and daemon guidance. |
docs/guides/edf/edf-rotation-and-incidents.md |
Adds ejector rotation guidance. |
docs/guides/edf/key-custody-policy-for-edf-operators.md |
Strengthens cooldown and delegate requirements. |
docs/guides/oracle-operator-manual.md |
Adds EDF onboarding instructions. |
docs/guides/protocol-levers.md |
Updates DSM role-holder addresses. |
docs/guides/tooling.md |
Updates council daemon and depositor bot versions. |
docs/guides/validator-ejector-guide.md |
Documents EDF-compatible allowlisting. |
Review details
Suppressed comments (1)
docs/contracts/delegation-contract.md:76
- This parameter can also contain the signature format accepted by an ERC-1271 contract delegate, not only an ECDSA signature. Keeping the ECDSA-only description here would still contradict the function's supported behavior after the prose above is corrected.
| `signature` | `bytes` | ECDSA signature |
- Files reviewed: 13/13 changed files
- Comments generated: 6
- Review effort level: Balanced
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…github.com:lidofinance/docs into feature/stc-924-fix-edf-docs-after-review-2nd-part
karinamaulitova
previously approved these changes
Sep 14, 2026
iamnp
reviewed
Sep 14, 2026
chasingrainbows
dismissed stale reviews from karinamaulitova and TheDZhon
via
September 15, 2026 09:42
32b9a58
cakeinpanic
self-requested a review
September 15, 2026 10:03
cakeinpanic
approved these changes
Sep 15, 2026
lemonjelly27
approved these changes
Sep 15, 2026
TheDZhon
approved these changes
Sep 15, 2026
TheDZhon
deleted the
feature/stc-924-fix-edf-docs-after-review-2nd-part
branch
September 15, 2026 10:29
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follow-up to #962. Fixes the items from the post-merge review (#962 (review)) that should land before the LIP-37 vote, plus a few related pages that would be stale after the vote. The changed text is written for the state after LIP-37 is enacted, without "before / after the vote" wording.
Linear: STC-924.
Changes
EDF operator guide (
docs/guides/edf/edf-operator-guide.md)DELEGATION_CONTRACT_ADDRESSpasses startup validation on DSM v4; the check to look for isEDF preflight passed/EDF setup is not ready; on DSM v5 a daemon with a wrong config logsGuardian cycle processing errorevery cycle and signs nothing, a restart exits with code 1.execute()targets and non-zeromsg.valueneed trace-level monitoring (no events); added polling of the delegate account code.Custody policy (
docs/guides/edf/key-custody-policy-for-edf-operators.md)Validator ejector (
docs/guides/validator-ejector-guide.md,docs/guides/curated-module/exits/tooling-setup.md,docs/guides/edf/edf-rotation-and-incidents.md)ORACLE_ADDRESSES_ALLOWLISTmust hold the oracle delegate EOAs, not the DelegationContracts returned bygetMembers(); after a rotation keep the previous delegate for about 7 days (BLOCKS_PRELOAD50000); validator-ejector 2.2.0 or newer is required.Contract reference (
docs/contracts/)delegation-factory.mdanddelegation-contract.md, added to the sidebar after Deposit Security Module. Written from the sources inlidofinance/execution-delegation-framework. Deployed instances are marked as proposed.deposit-security-module.md: added a proposed link to the DSM v5 deployed contract. The page content stays on v4 until the vote.Other pages
(prefix, guardian, blockNumber, blockHash, depositRoot, stakingModuleId, nonce)and the direct call path for pause and unvet where the DelegationContract is the sender.0xfFA9...), replaced with the current v4 address and the proposed v5 one.Not changed
TOP_UP_ROLEfrom the old depositor bot EOA and grants it to the DelegationContract, so the deployed contracts page is correct as is.Testing
npm run buildpasses withonBrokenLinksandonBrokenAnchorsset tothrow. Log strings were checked against lido-council-daemon 4.1.2 and lido-oracle 8.1.0 sources; the DSM address was checked on-chain; the new contract pages were checked against the EDF sources.