docs(ENS): Audit baseline, record remaining gaps, and defer ENS runtime changes due to bytecode headroom#170
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: db9e476b40
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| - `rootVersionCount()` | ||
| - `currentRootVersionId()` | ||
|
|
||
| These surfaces are present today; adding a direct `rootVersionInfo(rootVersionId)` read surface remains a follow-up to simplify explicit root-version repair selection. |
There was a problem hiding this comment.
Remove nonexistent root-version getter claims
This section states that rootVersionCount() and currentRootVersionId() are already available, but ENSJobPages only stores those values in private state (contracts/ens/ENSJobPages.sol:148-149) and does not expose public functions with those selectors. In practice, operators or scripts following this doc will expect callable getters and hit reverts (or misleading fallback reads), which can break root-version repair workflows.
Useful? React with 👍 / 👎.
Motivation
mainENS/Prime baseline and answer the mandatory current-state questions required for safe ENS cutover.Description
docs/ENS/CURRENT_BASELINE_AUDIT.mdrecording scope, findings, and answers to the mandatory questions about preview/effective semantics, legacy adoption, root-version observability, and size gates.docs/ENS/REMAINING_GAPS.mdanddocs/ENS/CHANGE_MINIMIZATION_PLAN.mdto separate confirmed open code gaps from operational follow-ups and to document the Prime size-freeze decision and rejected alternatives.docs/ENS/ENS_JOB_PAGES_OVERVIEW.mdto clarify which features are implemented vs deferred, and added machine-readable audit artifacts underscripts/ens/output/(current-baseline-audit.json,change-minimization-plan.json,remaining-gaps.json) for operator automation.PRIME_BLOCKER_VERIFICATION_MEMO.mdwith a freshnpm run test:sizerun and recorded current runtime/initcode sizes and headroom so deploy/runbook decisions reflect the measured bytecode budget.ENSJobPagesto exceed the EIP-170 runtime limit and was therefore rolled back; no ENS runtime behavior remains changed in this commit.Testing
npm run test:sizeand verified all enforced artifacts pass the size-gate after rollbacks, withENSJobPagesruntime measured at24560bytes (headroom 16 bytes) and Prime artifacts within expected headroom.npm run test:size:benchmarkto confirm the canonical best EIP-170-safe compiler profile and margin; the benchmark completed successfully.ENSJobPagesat25295runtime bytes (exceeded EIP-170), which prompted reverting those runtime edits; after revert, the size checks passed.Codex Task