Skip to content

Smart contract section #1563

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

Merged
merged 46 commits into from
May 30, 2025
Merged

Smart contract section #1563

merged 46 commits into from
May 30, 2025

Conversation

bradleycamacho
Copy link
Member

Creates a new section on docs relating to smart contracts

@bradleycamacho bradleycamacho requested a review from a team as a code owner April 10, 2025 18:26
Copy link

netlify bot commented Apr 10, 2025

Deploy Preview for docs-optimism ready!

Name Link
🔨 Latest commit 2521d60
🔍 Latest deploy log https://app.netlify.com/projects/docs-optimism/deploys/6839f7e0985e8c00085d12a2
😎 Deploy Preview https://deploy-preview-1563--docs-optimism.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@bradleycamacho bradleycamacho marked this pull request as draft April 10, 2025 18:28
Copy link
Contributor

coderabbitai bot commented Apr 10, 2025

Warning

Rate limit exceeded

@bradleycamacho has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 16 minutes and 50 seconds before requesting another review.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

📥 Commits

Reviewing files that changed from the base of the PR and between 3ffb217 and 2521d60.

📒 Files selected for processing (2)
  • pages/stack/_meta.json (1 hunks)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1 hunks)
📝 Walkthrough

"""

Walkthrough

This set of changes restructures and expands the OP Stack smart contract documentation. The main updates include splitting the previous single smart contracts documentation into a high-level overview page with navigation cards and a new, detailed guide covering all OP Stack smart contracts, their versions, upgrade processes, and deployment details. Additional guides for upgrading contracts using op-deployer and for migrating from version 1.3.0 to 1.8.0 are introduced. Numerous internal links are updated to reflect the new documentation structure. Metadata and redirect rules are also added or modified to support the new organization.

Sequence Diagram(s)

sequenceDiagram
    participant User
    participant DocsSite
    participant Redirects
    participant SmartContractsOverview
    participant DetailedGuide
    participant UpgradeGuides

    User->>DocsSite: Navigate to /stack/smart-contracts
    DocsSite->>Redirects: Check for redirect
    Redirects-->>DocsSite: Redirect to /stack/smart-contracts/smart-contracts
    DocsSite->>SmartContractsOverview: Render navigation cards
    User->>SmartContractsOverview: Clicks on a card
    SmartContractsOverview->>DetailedGuide: If "Smart Contracts" selected
    SmartContractsOverview->>UpgradeGuides: If upgrade guide selected
    DetailedGuide-->>User: Show detailed contract info
    UpgradeGuides-->>User: Show upgrade instructions
Loading

Possibly related PRs

Suggested labels

tutorial

Suggested reviewers

  • krofax
    """

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 4

🧹 Nitpick comments (8)
pages/stack/smart-contracts/smart-contract-upgrades.mdx (2)

42-44: Fix compound adjective in directory requirements.

The phrase "Top level directory" should be hyphenated as it's a compound adjective modifying "names".

-Top level directory names must follow the [EIP-3770](https://eips.ethereum.org/EIPS/eip-3770) short name for the network (e.g., "mainnet", "sepolia").
+Top-level directory names must follow the [EIP-3770](https://eips.ethereum.org/EIPS/eip-3770) short name for the network (e.g., "mainnet", "sepolia").
🧰 Tools
🪛 LanguageTool

[uncategorized] ~42-~42: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...ccording to these strict requirements: Top level directory names must follow the [EIP-37...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


47-54: Fix loose punctuation in list.

There's a loose punctuation mark in the list of required files. The asterisks should be directly followed by the content without additional spaces. Also, ensure list formatting is consistent.

-*   `README.md`: Describing precisely what the task will execute
-*   `Validation.md`: Detailing the expected state changes with justifications
-*   A foundry script for post-upgrade assertions:
-    *   Use `SignFromJson.s.sol` for a Safe owned by EOA signers
-    *   Use `NestedSignFromJson.s.sol` for a Safe owned by other Safes
-*   `input.json`: Defining the exact transaction for execution
-*   `.env`: Containing all environment variables specific to this task
+* `README.md`: Describing precisely what the task will execute
+* `Validation.md`: Detailing the expected state changes with justifications
+* A foundry script for post-upgrade assertions:
+  * Use `SignFromJson.s.sol` for a Safe owned by EOA signers
+  * Use `NestedSignFromJson.s.sol` for a Safe owned by other Safes
+* `input.json`: Defining the exact transaction for execution
+* `.env`: Containing all environment variables specific to this task
🧰 Tools
🪛 LanguageTool

[uncategorized] ~47-~47: Loose punctuation mark.
Context: ...directory must contain: * README.md: Describing precisely what the task will...

(UNLIKELY_OPENING_PUNCTUATION)

pages/stack/smart-contracts/upgrade-op-contracts-1-6-1-8.mdx (1)

23-23: Import Statement:
The file currently imports { Callout } from nextra/components. This is acceptable if the callout component matches the design intent. However, if a card-based layout is desired later on (as seen in related files), consider updating the import to { Card, Cards }.

pages/stack/smart-contracts/smart-contracts.mdx (5)

131-138: Text Refinement in Safe Extensions Section:
In the segment describing the safe extensions upgrade:

  • Change “1 week exit window” to “1‑week exit window” so that the compound adjective is correctly hyphenated.
  • Insert a comma after “Additionally” to improve readability.
  • Replace “able to” with “can” for conciseness.
    These suggestions will help the text flow more naturally.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~136-~136: When a number forms part of an adjectival compound, use a hyphen.
Context: ...Superchain closer to satisfying the 1 week exit window requirement for Stage 1. ...

(MISSING_HYPHEN)


[uncategorized] ~137-~137: A comma may be missing after the conjunctive/linking adverb ‘Additionally’.
Context: ...window requirement for Stage 1. * Additionally the Foundation is appointed to the new ...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[style] ~138-~138: As a shorter alternative for ‘able to’, consider using “can”.
Context: ...e new DeputyGuardian role which is able to act as Guardian through the Guardian Sa...

(BE_ABLE_TO)


576-578: GovernanceToken Description Improvement:
The current description appears fragmented:

“The OP token used in governance and supporting voting and delegation. Implements EIP 2612 allowing signed approvals.”
Consider revising to a complete sentence such as:
“The OP token is used in governance—supporting voting and delegation—and implements EIP 2612 to allow signed approvals.”
This change will enhance clarity and grammatical correctness.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~576-~576: This verb may not be in the correct form. Consider using a different form for this context.
Context: ...en The OP token used in governance and supporting voting and delegation. Implements EIP 2...

(AI_EN_LECTOR_REPLACEMENT_VERB_FORM)


640-641: ProxyAdmin Description Conciseness:
The sentence “The ProxyAdmin is the owner of all of the proxy contracts set at the predeploys.” can be made more concise. Consider revising it to:

“The ProxyAdmin is the owner of all proxy contracts set at the predeploys.”
This removes the redundant “of all of” phrase.

🧰 Tools
🪛 LanguageTool

[style] ~641-~641: Consider removing “of” to be more concise
Context: ...Admin The ProxyAdmin is the owner of all of the proxy contracts set at the predeploys. ...

(ALL_OF_THE)


652-664: Fee Vault Wording:
Review the usage of “a certain amount of fees” in this section. If fees are considered a measurable (mass) quantity (e.g. ETH amounts), “amount” is appropriate. However, if referencing individual fee items, “number” might be more precise. Please double-check the intended meaning and adjust if necessary.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~653-~653: ‘Amount of’ should usually only be used with uncountable or mass nouns. Consider using “number” if this is not the case.
Context: ...nce the contract has received a certain amount of fees, the ETH can be withdrawn to an...

(AMOUNTOF_TO_NUMBEROF)


[uncategorized] ~664-~664: ‘Amount of’ should usually only be used with uncountable or mass nouns. Consider using “number” if this is not the case.
Context: ...nce the contract has received a certain amount of fees, the ETH can be withdrawn to an...

(AMOUNTOF_TO_NUMBEROF)


722-723: Compound Adjective Consistency:
Ensure that compound adjectives are hyphenated when they modify a noun. For example, verify that terms related to the Ethereum Attestation Service (or similar compound descriptors) follow the project’s capitalization and hyphenation standards.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~723-~723: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...estation-service/eas-ponder-graph) * [Open Source Indexer](https://github.com/ethereum-at...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a7ab58c and e799212.

📒 Files selected for processing (12)
  • pages/operators/chain-operators/deploy/overview.mdx (1 hunks)
  • pages/operators/chain-operators/deploy/smart-contracts.mdx (1 hunks)
  • pages/operators/chain-operators/self-hosted.mdx (1 hunks)
  • pages/stack/_meta.json (1 hunks)
  • pages/stack/opcm.mdx (1 hunks)
  • pages/stack/smart-contracts.mdx (1 hunks)
  • pages/stack/smart-contracts/_meta.json (1 hunks)
  • pages/stack/smart-contracts/smart-contract-upgrades.mdx (1 hunks)
  • pages/stack/smart-contracts/smart-contracts.mdx (1 hunks)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-6-1-8.mdx (1 hunks)
  • pages/superchain/addresses.mdx (1 hunks)
  • public/_redirects (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with the following criteria: - First, check the frontmatter section at the top of the file: 1. For regular pages, ensure AL...

**/*.mdx: "ALWAYS review Markdown content THOROUGHLY with the following criteria:

  • First, check the frontmatter section at the top of the file:
    1. For regular pages, ensure ALL these fields are present and not empty:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    personas: [non-empty array]
    categories: [non-empty array]
    content_type: [valid type]
    ---
    1. For landing pages (index.mdx or files with ), only these fields are required:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    ---
    1. If any required fields are missing or empty, comment:
      'This file appears to be missing required metadata. Please check keywords.config.yaml for valid options and add the required fields manually. You can validate your changes by running:
    pnpm validate-metadata
    ```'
  • Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
  • Avoid gender-specific language and use the imperative form.
  • Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
  • Ensure proper nouns are capitalized in sentences.
  • Apply the Oxford comma.
  • Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
  • Use correct spelling and grammar at all times (IMPORTANT).
  • For H1, H2, and H3 headers:
    1. Use sentence case, capitalizing only the first word.
    2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
    3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
  • Flag any headers that seem to inconsistently apply these rules for manual review.
  • When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
    "
  • pages/operators/chain-operators/deploy/smart-contracts.mdx
  • pages/superchain/addresses.mdx
  • pages/stack/opcm.mdx
  • pages/operators/chain-operators/deploy/overview.mdx
  • pages/operators/chain-operators/self-hosted.mdx
  • pages/stack/smart-contracts/smart-contract-upgrades.mdx
  • pages/stack/smart-contracts/upgrade-op-contracts-1-6-1-8.mdx
  • pages/stack/smart-contracts/smart-contracts.mdx
  • pages/stack/smart-contracts.mdx
🪛 LanguageTool
pages/stack/smart-contracts/smart-contract-upgrades.mdx

[uncategorized] ~42-~42: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...ccording to these strict requirements: Top level directory names must follow the [EIP-37...

(EN_COMPOUND_ADJECTIVE_INTERNAL)


[uncategorized] ~47-~47: Loose punctuation mark.
Context: ...directory must contain: * README.md: Describing precisely what the task will...

(UNLIKELY_OPENING_PUNCTUATION)

pages/stack/smart-contracts/upgrade-op-contracts-1-6-1-8.mdx

[uncategorized] ~48-~48: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)

pages/stack/smart-contracts/smart-contracts.mdx

[style] ~95-~95: Consider a shorter alternative to avoid wordiness.
Context: ...anchor state for the Fault Proof System in order to prevent referencing invalid anchor stat...

(IN_ORDER_TO_PREMIUM)


[uncategorized] ~136-~136: When a number forms part of an adjectival compound, use a hyphen.
Context: ...Superchain closer to satisfying the 1 week exit window requirement for Stage 1. ...

(MISSING_HYPHEN)


[uncategorized] ~137-~137: A comma may be missing after the conjunctive/linking adverb ‘Additionally’.
Context: ...window requirement for Stage 1. * Additionally the Foundation is appointed to the new ...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[style] ~138-~138: As a shorter alternative for ‘able to’, consider using “can”.
Context: ...e new DeputyGuardian role which is able to act as Guardian through the Guardian Sa...

(BE_ABLE_TO)


[style] ~369-~369: The phrase ‘has the ability to’ might be wordy. Consider using “can”.
Context: ...uration of global superchain values. It has the ability to pause and unpause all withdrawals in th...

(HAS_THE_ABILITY_TO)


[uncategorized] ~576-~576: This verb may not be in the correct form. Consider using a different form for this context.
Context: ...en The OP token used in governance and supporting voting and delegation. Implements EIP 2...

(AI_EN_LECTOR_REPLACEMENT_VERB_FORM)


[style] ~641-~641: Consider removing “of” to be more concise
Context: ...Admin The ProxyAdmin is the owner of all of the proxy contracts set at the predeploys. ...

(ALL_OF_THE)


[uncategorized] ~653-~653: ‘Amount of’ should usually only be used with uncountable or mass nouns. Consider using “number” if this is not the case.
Context: ...nce the contract has received a certain amount of fees, the ETH can be withdrawn to an...

(AMOUNTOF_TO_NUMBEROF)


[uncategorized] ~664-~664: ‘Amount of’ should usually only be used with uncountable or mass nouns. Consider using “number” if this is not the case.
Context: ...nce the contract has received a certain amount of fees, the ETH can be withdrawn to an...

(AMOUNTOF_TO_NUMBEROF)


[uncategorized] ~723-~723: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...estation-service/eas-ponder-graph) * [Open Source Indexer](https://github.com/ethereum-at...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

⏰ Context from checks skipped due to timeout of 90000ms (3)
  • GitHub Check: Redirect rules - docs-optimism
  • GitHub Check: Header rules - docs-optimism
  • GitHub Check: Pages changed - docs-optimism
🔇 Additional comments (18)
pages/stack/_meta.json (1)

17-17: Looks good - navigation item is maintained for smart contracts.

The navigation entry for "smart contracts" is properly included in the stack navigation structure. This change aligns with the reorganization of the smart contracts documentation.

pages/stack/smart-contracts/smart-contract-upgrades.mdx (4)

1-21: Frontmatter looks complete with all required fields.

The frontmatter section correctly includes all required fields for a regular page:

  • title
  • description
  • lang
  • content_type
  • topic
  • personas (array)
  • categories (array)

All fields contain appropriate non-empty values.


25-28: Appropriate heading structure and introduction.

The document starts with a clear H1 heading followed by a concise introduction that explains the purpose of the guide. The content uses sentence case for headings as required by the guidelines.


96-96: Clear and important Docker memory requirement.

The warning about Docker memory requirements is well-placed and crucial for preventing compilation failures. This practical information will help users avoid common setup issues.


106-106: Critical configuration warning properly emphasized.

The document appropriately highlights the critical nature of the faultGameAbsolutePrestate value configuration with clear emphasis, which is essential for the proper functioning of fault proof systems.

pages/superchain/addresses.mdx (1)

25-25: Updated link path to match new documentation structure.

The hyperlink has been correctly updated to point to /stack/smart-contracts/smart-contracts instead of /stack/smart-contracts, reflecting the reorganized documentation structure.

public/_redirects (1)

171-171: Added appropriate redirect for restructured documentation.

A redirect rule has been added to ensure that users accessing the old path (/stack/smart-contracts) are automatically redirected to the new path (/stack/smart-contracts/smart-contracts). This maintains backward compatibility while allowing for the documentation restructuring.

pages/operators/chain-operators/deploy/overview.mdx (2)

1-19: Metadata Validation and Frontmatter Compliance
The frontmatter section includes all the required fields with valid, non-empty values. All arrays (personas and categories) are properly populated.


37-42: Updated Smart Contract Link in Callout
The hyperlink in the warning callout now correctly points to /stack/smart-contracts/smart-contracts, which aligns with the updated documentation structure.

pages/operators/chain-operators/deploy/smart-contracts.mdx (2)

1-19: Frontmatter and Metadata Check
The frontmatter includes all required fields—title, lang, description, content_type, topic, personas, and categories—with appropriate values.


25-33: Smart Contract Overview Link Update
The link to the smart contract overview is correctly updated to /stack/smart-contracts/smart-contracts, ensuring consistency across the documentation.

pages/stack/opcm.mdx (2)

1-19: Frontmatter and Metadata Validation
The frontmatter is comprehensive with all required metadata fields present and non-empty. This ensures the document is properly categorized.


25-29: Updated Link Reference in Content
The hyperlink for the PermissionedDisputeGame now directs to /stack/smart-contracts/smart-contracts, which aligns with the revised URL structure for smart contracts in the documentation.

pages/stack/smart-contracts/_meta.json (1)

1-5: Valid JSON Metadata File
The JSON file is correctly formatted and includes the expected keys: "smart-contracts", "smart-contract-upgrades", and "upgrade-op-contracts-1-6-1-8.mdx", each with an appropriate descriptive value.

pages/operators/chain-operators/self-hosted.mdx (2)

1-18: Frontmatter Inspection and Metadata Validity
The frontmatter section is complete with all required fields and non-empty values, ensuring the document meets metadata standards.


35-41: Updated Smart Contracts Link
The hyperlinks for both "L1 smart contracts" and "L2 predeploy contracts" are updated to point to /stack/smart-contracts/smart-contracts, which ensures that all references to smart contract resources are consistent. The link for "L2 preinstall contracts" remains appropriately directed.

pages/stack/smart-contracts/upgrade-op-contracts-1-6-1-8.mdx (1)

1-21: Frontmatter Validation:
The frontmatter is complete with all required fields (title, description, lang, content_type, topic, personas, categories, and is_imported_content). Please verify that the value used for “is_imported_content” (the string 'false') conforms with the project’s metadata conventions.

pages/stack/smart-contracts.mdx (1)

7-17: Content and Card Links:
The use of <Cards> with three <Card> elements clearly presents the navigation options. Verify that each card’s title and hyperlink accurately direct users to the intended sections.

@krofax
Copy link
Collaborator

krofax commented Apr 10, 2025

This is going to be a pain to review, i'd suggest we have this broken down into 2/3 PR's.

@bradleycamacho
Copy link
Member Author

This is going to be a pain to review, i'd suggest we have this broken down into 2/3 PR's.

It's just two new short docs, the rest of the changes are just redirects and link fixes

Copy link
Collaborator

@sbvegan sbvegan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is starting to shape up, I'd recommend addressing my comments and then have @Wazabie take a look. You're right, it's probably a good idea to split this into two PRs for op-deployer upgrade and the v1.8.0 upgrade

@bradleycamacho bradleycamacho marked this pull request as ready for review May 29, 2025 20:59
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 8

♻️ Duplicate comments (1)
pages/stack/smart-contracts/smart-contracts.mdx (1)

1-21: Frontmatter metadata is valid but title consistency should be improved
All required frontmatter fields are present. However, to align with existing documentation, consider pluralizing the title to “Smart Contracts overview”.

🧹 Nitpick comments (2)
pages/stack/smart-contracts/superchain-ops-guide.mdx (1)

29-29: Hyphenate compound adjective
When used as an adjective, “non-Optimism governed” should be hyphenated for clarity.

-For non-Optimism governed chains, you can use [op-deployer](/stack/smart-contracts/op-deployer-upgrade) and your own tooling to upgrade your chain.
+For non-Optimism-governed chains, you can use [op-deployer](/stack/smart-contracts/op-deployer-upgrade) and your own tooling to upgrade your chain.
words.txt (1)

57-58: Inconsistent casing in repeated entry
The list includes BOOTNODES (uppercase), Bootnodes (title-case), and bootnodes (lowercase). To maintain consistency with other environment-variable and CLI flag pairs, remove the title-case Bootnodes variant.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between e799212 and a528cf1.

📒 Files selected for processing (12)
  • pages/operators/chain-operators/deploy/overview.mdx (1 hunks)
  • pages/operators/chain-operators/deploy/smart-contracts.mdx (1 hunks)
  • pages/stack/_meta.json (1 hunks)
  • pages/stack/opcm.mdx (1 hunks)
  • pages/stack/smart-contracts.mdx (1 hunks)
  • pages/stack/smart-contracts/_meta.json (1 hunks)
  • pages/stack/smart-contracts/op-deployer-upgrade.mdx (1 hunks)
  • pages/stack/smart-contracts/smart-contracts.mdx (1 hunks)
  • pages/stack/smart-contracts/superchain-ops-guide.mdx (1 hunks)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1 hunks)
  • public/_redirects (1 hunks)
  • words.txt (9 hunks)
✅ Files skipped from review due to trivial changes (4)
  • pages/stack/opcm.mdx
  • public/_redirects
  • pages/stack/_meta.json
  • pages/stack/smart-contracts/_meta.json
🚧 Files skipped from review as they are similar to previous changes (2)
  • pages/operators/chain-operators/deploy/smart-contracts.mdx
  • pages/operators/chain-operators/deploy/overview.mdx
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with the following criteria: - First, check the frontmatter section at the top of the file: 1. For regular pages, ensure AL...

**/*.mdx: "ALWAYS review Markdown content THOROUGHLY with the following criteria:

  • First, check the frontmatter section at the top of the file:
    1. For regular pages, ensure ALL these fields are present and not empty:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    personas: [non-empty array]
    categories: [non-empty array]
    content_type: [valid type]
    ---
    1. For landing pages (index.mdx or files with ), only these fields are required:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    ---
    1. If any required fields are missing or empty, comment:
      'This file appears to be missing required metadata. Please check keywords.config.yaml for valid options and add the required fields manually. You can validate your changes by running:
    pnpm validate-metadata
    ```'
  • Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
  • Avoid gender-specific language and use the imperative form.
  • Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
  • Ensure proper nouns are capitalized in sentences.
  • Apply the Oxford comma.
  • Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
  • Use correct spelling and grammar at all times (IMPORTANT).
  • For H1, H2, and H3 headers:
    1. Use sentence case, capitalizing only the first word.
    2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
    3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
  • Flag any headers that seem to inconsistently apply these rules for manual review.
  • When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
    "
  • pages/stack/smart-contracts/superchain-ops-guide.mdx
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx
  • pages/stack/smart-contracts.mdx
  • pages/stack/smart-contracts/smart-contracts.mdx
  • pages/stack/smart-contracts/op-deployer-upgrade.mdx
🪛 Gitleaks (8.26.0)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

78-78: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.

(generic-api-key)

🪛 LanguageTool
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

[uncategorized] ~37-~37: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)


[uncategorized] ~48-~48: Loose punctuation mark.
Context: ...ur specific chain**: deployments.json: ``` { "AddressManager": "0xEF8115F27...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~64-~64: Loose punctuation mark.
Context: ...BBF17930d86" } `deploy-config.json`: { "l1StartingBlockTag": "0x10aa1...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ...O, all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...esses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)

pages/stack/smart-contracts/smart-contracts.mdx

[uncategorized] ~39-~39: Loose punctuation mark.
Context: ...ack/smart-contracts/op-deployer-upgrade): a simple tool to upgrade your contracts...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~40-~40: Loose punctuation mark.
Context: ...ck/smart-contracts/superchain-ops-guide): a workflow for chains that require secu...

(UNLIKELY_OPENING_PUNCTUATION)


[style] ~102-~102: Consider a more concise word here.
Context: ...anchor state for the Fault Proof System in order to prevent referencing invalid anchor stat...

(IN_ORDER_TO_PREMIUM)


[uncategorized] ~143-~143: When a number forms part of an adjectival compound, use a hyphen.
Context: ...Superchain closer to satisfying the 1 week exit window requirement for Stage 1. ...

(MISSING_HYPHEN)


[uncategorized] ~144-~144: A comma may be missing after the conjunctive/linking adverb ‘Additionally’.
Context: ...window requirement for Stage 1. * Additionally the Foundation is appointed to the new ...

(SENT_START_CONJUNCTIVE_LINKING_ADVERB_COMMA)


[style] ~145-~145: As a shorter alternative for ‘able to’, consider using “can”.
Context: ...e new DeputyGuardian role which is able to act as Guardian through the Guardian Sa...

(BE_ABLE_TO)


[style] ~376-~376: The phrase ‘has the ability to’ might be wordy. Consider using “can”.
Context: ...uration of global superchain values. It has the ability to pause and unpause all withdrawals in th...

(HAS_THE_ABILITY_TO)


[uncategorized] ~485-~485: Possible missing comma found.
Context: ...s state. They are similar to precompiles but instead run directly in the EVM instead...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~488-~488: Possible missing comma found.
Context: ...piles to make it easier for multiclient implementations as well as allowing for more integratio...

(AI_HYDRA_LEO_MISSING_COMMA)


[uncategorized] ~584-~584: Possible missing article found.
Context: ...nts EIP 2612 allowing signed approvals. Contract is "owned" by a MintManager instance ...

(AI_HYDRA_LEO_MISSING_THE)


[style] ~648-~648: Consider removing “of” to be more concise
Context: ...Admin The ProxyAdmin is the owner of all of the proxy contracts set at the predeploys. ...

(ALL_OF_THE)


[uncategorized] ~660-~660: ‘Amount of’ should usually only be used with uncountable or mass nouns. Consider using “number” if this is not the case.
Context: ...nce the contract has received a certain amount of fees, the ETH can be withdrawn to an...

(AMOUNTOF_TO_NUMBEROF)


[uncategorized] ~671-~671: ‘Amount of’ should usually only be used with uncountable or mass nouns. Consider using “number” if this is not the case.
Context: ...nce the contract has received a certain amount of fees, the ETH can be withdrawn to an...

(AMOUNTOF_TO_NUMBEROF)


[uncategorized] ~730-~730: If this is a compound adjective that modifies the following noun, use a hyphen.
Context: ...estation-service/eas-ponder-graph) * [Open Source Indexer](https://github.com/ethereum-at...

(EN_COMPOUND_ADJECTIVE_INTERNAL)

pages/stack/smart-contracts/op-deployer-upgrade.mdx

[uncategorized] ~23-~23: This verb may not be in the correct form. Consider using a different form for this context.
Context: ... that is several versions behind can be upgrade to the latest version by running multip...

(AI_EN_LECTOR_REPLACEMENT_VERB_FORM)


[uncategorized] ~60-~60: Loose punctuation mark.
Context: ...n the superchain registry: * opcm: under op_contracts_manager for [Mainn...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~61-~61: Loose punctuation mark.
Context: ...-sepolia.toml). * absolutePrestate: the hash under your [chosen upgrade](...

(UNLIKELY_OPENING_PUNCTUATION)

words.txt

[duplication] ~2-~2: Možný preklep: zopakovali ste slovo
Context: ACCOUNTQUEUE accountqueue ACCOUNTSLOTS accountslots ACDC ADDI ADDIU ADDU airgap Allnodes al...

(WORD_REPEAT_RULE)


[duplication] ~11-~11: Možný preklep: zopakovali ste slovo
Context: ... ADDI ADDIU ADDU airgap Allnodes allocs Alphanet alphanet Alphanets alphanets altda ANDI Ankr Ape...

(WORD_REPEAT_RULE)


[duplication] ~13-~13: Možný preklep: zopakovali ste slovo
Context: ...irgap Allnodes allocs Alphanet alphanet Alphanets alphanets altda ANDI Ankr Apeworx Arweave authrpc...

(WORD_REPEAT_RULE)


[duplication] ~21-~21: Možný preklep: zopakovali ste slovo
Context: ...altda ANDI Ankr Apeworx Arweave authrpc Autorelay autorelay autorelayer basefee bcde Betanet betane...

(WORD_REPEAT_RULE)


[duplication] ~26-~26: Možný preklep: zopakovali ste slovo
Context: ...elay autorelay autorelayer basefee bcde Betanet betanet Betanets betanets BGEZ BGTZ Biconomy BL...

(WORD_REPEAT_RULE)


[duplication] ~28-~28: Možný preklep: zopakovali ste slovo
Context: ...utorelayer basefee bcde Betanet betanet Betanets betanets BGEZ BGTZ Biconomy BLEZ BLOBPOOL blobpo...

(WORD_REPEAT_RULE)


[duplication] ~34-~34: Možný preklep: zopakovali ste slovo
Context: ...tanets betanets BGEZ BGTZ Biconomy BLEZ BLOBPOOL blobpool blobspace Blockdaemon blockhash blockli...

(WORD_REPEAT_RULE)


[duplication] ~40-~40: Možný preklep: zopakovali ste slovo
Context: ...bspace Blockdaemon blockhash blocklists BLOCKLOGS blocklogs BLOCKPROFILERATE blockprofilerate Block...

(WORD_REPEAT_RULE)


[duplication] ~42-~42: Možný preklep: zopakovali ste slovo
Context: ...lockhash blocklists BLOCKLOGS blocklogs BLOCKPROFILERATE blockprofilerate Blockscout Blockspace blockspace blockt...

(WORD_REPEAT_RULE)


[duplication] ~45-~45: Možný preklep: zopakovali ste slovo
Context: ...PROFILERATE blockprofilerate Blockscout Blockspace blockspace blocktime Blocktimes blocktimes BLOOMFI...

(WORD_REPEAT_RULE)


[duplication] ~48-~48: Možný preklep: zopakovali ste slovo
Context: ...ckscout Blockspace blockspace blocktime Blocktimes blocktimes BLOOMFILTER bloomfilter BLTZ Bootcamp b...

(WORD_REPEAT_RULE)


[duplication] ~50-~50: Možný preklep: zopakovali ste slovo
Context: ...ckspace blocktime Blocktimes blocktimes BLOOMFILTER bloomfilter BLTZ Bootcamp bootnode BOOTNODES Bootno...

(WORD_REPEAT_RULE)


[duplication] ~55-~55: Možný preklep: zopakovali ste slovo
Context: ...LTER bloomfilter BLTZ Bootcamp bootnode BOOTNODES Bootnodes bootnodes bottlenecked Brotli brotli ca...

(WORD_REPEAT_RULE)


[duplication] ~59-~59: Možný preklep: zopakovali ste slovo
Context: ...TNODES Bootnodes bootnodes bottlenecked Brotli brotli calldate Callouts callouts CCIP cdef Ce...

(WORD_REPEAT_RULE)


[duplication] ~62-~62: Možný preklep: zopakovali ste slovo
Context: ...des bottlenecked Brotli brotli calldate Callouts callouts CCIP cdef Celestia Celestia's chainid C...

(WORD_REPEAT_RULE)


[duplication] ~80-~80: Možný preklep: zopakovali ste slovo
Context: ...alized collateralized compr Comprensive COMPUTEPENDINGBLOCK computependingblock confs Consen corsdomain counterfactuall...

(WORD_REPEAT_RULE)


[duplication] ~86-~86: Možný preklep: zopakovali ste slovo
Context: ...onfs Consen corsdomain counterfactually Crosschain crosschain Crossmint Dapphub daserver DATACAP data...

(WORD_REPEAT_RULE)


[duplication] ~91-~91: Možný preklep: zopakovali ste slovo
Context: ...n crosschain Crossmint Dapphub daserver DATACAP datacap DATADIR datadir Devnet devnet Devnets d...

(WORD_REPEAT_RULE)


[duplication] ~93-~93: Možný preklep: zopakovali ste slovo
Context: ...ssmint Dapphub daserver DATACAP datacap DATADIR datadir Devnet devnet Devnets devnets devs dire...

(WORD_REPEAT_RULE)


[duplication] ~95-~95: Možný preklep: zopakovali ste slovo
Context: ...aserver DATACAP datacap DATADIR datadir Devnet devnet Devnets devnets devs direnv DISABLETXPO...

(WORD_REPEAT_RULE)


[duplication] ~97-~97: Možný preklep: zopakovali ste slovo
Context: ...P datacap DATADIR datadir Devnet devnet Devnets devnets devs direnv DISABLETXPOOLGOSSIP disable...

(WORD_REPEAT_RULE)


[duplication] ~101-~101: Možný preklep: zopakovali ste slovo
Context: ...vnet devnet Devnets devnets devs direnv DISABLETXPOOLGOSSIP disabletxpoolgossip Discv discv DIVU Drand dripcheck Drippi...

(WORD_REPEAT_RULE)


[duplication] ~103-~103: Možný preklep: zopakovali ste slovo
Context: ...DISABLETXPOOLGOSSIP disabletxpoolgossip Discv discv DIVU Drand dripcheck Drippie Eigen EIPs...

(WORD_REPEAT_RULE)


[duplication] ~111-~111: Možný preklep: zopakovali ste slovo
Context: ...DIVU Drand dripcheck Drippie Eigen EIPs ENABLEDEPRECATEDPERSONAL enabledeprecatedpersonal enginekind Erigon erigon ETHERBASE ethe...

(WORD_REPEAT_RULE)


[duplication] ~114-~114: Možný preklep: zopakovali ste slovo
Context: ...NAL enabledeprecatedpersonal enginekind Erigon erigon ETHERBASE etherbase Ethernity Ethernow ...

(WORD_REPEAT_RULE)


[duplication] ~116-~116: Možný preklep: zopakovali ste slovo
Context: ...ecatedpersonal enginekind Erigon erigon ETHERBASE etherbase Ethernity Ethernow ETHSTATS ethstats EV...

(WORD_REPEAT_RULE)


[duplication] ~120-~120: Možný preklep: zopakovali ste slovo
Context: ... ETHERBASE etherbase Ethernity Ethernow ETHSTATS ethstats EVMTIMEOUT evmtimeout excercise executa...

(WORD_REPEAT_RULE)


[duplication] ~122-~122: Možný preklep: zopakovali ste slovo
Context: ...se Ethernity Ethernow ETHSTATS ethstats EVMTIMEOUT evmtimeout excercise executability exfiltrate EXIT...

(WORD_REPEAT_RULE)


[duplication] ~127-~127: Možný preklep: zopakovali ste slovo
Context: ...eout excercise executability exfiltrate EXITWHENSYNCED exitwhensynced EXTRADATA extradata Farcaster Faultproo...

(WORD_REPEAT_RULE)


[duplication] ~129-~129: Možný preklep: zopakovali ste slovo
Context: ...xfiltrate EXITWHENSYNCED exitwhensynced EXTRADATA extradata Farcaster Faultproof FDLIMIT fdlimit Fl...

(WORD_REPEAT_RULE)


[duplication] ~133-~133: Možný preklep: zopakovali ste slovo
Context: ...XTRADATA extradata Farcaster Faultproof FDLIMIT fdlimit Flashblocks Flashbots forkable forkchoi...

(WORD_REPEAT_RULE)


[duplication] ~147-~147: Možný preklep: zopakovali ste slovo
Context: ...tionality Funct GASCAP gascap gaslessly GCMODE gcmode Gelato gifs GLOBALQUEUE globalqueue GLO...

(WORD_REPEAT_RULE)


[duplication] ~151-~151: Možný preklep: zopakovali ste slovo
Context: ...cap gaslessly GCMODE gcmode Gelato gifs GLOBALQUEUE globalqueue GLOBALSLOTS globalslots gokzg growthepi...

(WORD_REPEAT_RULE)


[duplication] ~153-~153: Možný preklep: zopakovali ste slovo
Context: ...ode Gelato gifs GLOBALQUEUE globalqueue GLOBALSLOTS globalslots gokzg growthepie hardfork hardforks HEA...

(WORD_REPEAT_RULE)


[duplication] ~159-~159: Možný preklep: zopakovali ste slovo
Context: ...ots gokzg growthepie hardfork hardforks HEALTHCHECK healthcheck healthchecks HISTORICALRPC historicalrp...

(WORD_REPEAT_RULE)


[duplication] ~162-~162: Možný preklep: zopakovali ste slovo
Context: ...ks HEALTHCHECK healthcheck healthchecks HISTORICALRPC historicalrpc HISTORICALRPCTIMEOUT historicalrpctimeo...

(WORD_REPEAT_RULE)


[duplication] ~164-~164: Možný preklep: zopakovali ste slovo
Context: ...ealthchecks HISTORICALRPC historicalrpc HISTORICALRPCTIMEOUT historicalrpctimeout HOLESKY Holesky holesky IERC IGNOREPRIC...

(WORD_REPEAT_RULE)


[duplication] ~166-~166: Možný preklep: zopakovali ste slovo
Context: ...STORICALRPCTIMEOUT historicalrpctimeout HOLESKY Holesky holesky IERC IGNOREPRICE ignoreprice Im...

(WORD_REPEAT_RULE)


[duplication] ~170-~170: Možný preklep: zopakovali ste slovo
Context: ...rpctimeout HOLESKY Holesky holesky IERC IGNOREPRICE ignoreprice Immunefi Inator inator INFLUXDBV influx...

(WORD_REPEAT_RULE)


[duplication] ~173-~173: Možný preklep: zopakovali ste slovo
Context: ...y IERC IGNOREPRICE ignoreprice Immunefi Inator inator INFLUXDBV influxdbv initcode IPCDISABLE...

(WORD_REPEAT_RULE)


[duplication] ~175-~175: Možný preklep: zopakovali ste slovo
Context: ...RICE ignoreprice Immunefi Inator inator INFLUXDBV influxdbv initcode IPCDISABLE ipcdisable ipcfile ...

(WORD_REPEAT_RULE)


[duplication] ~178-~178: Možný preklep: zopakovali ste slovo
Context: ...tor inator INFLUXDBV influxdbv initcode IPCDISABLE ipcdisable ipcfile IPCPATH ipcpath IPFS JALR JOURN...

(WORD_REPEAT_RULE)


[duplication] ~181-~181: Možný preklep: zopakovali ste slovo
Context: ... initcode IPCDISABLE ipcdisable ipcfile IPCPATH ipcpath IPFS JALR JOURNALREMOTES journalremotes...

(WORD_REPEAT_RULE)


[duplication] ~185-~185: Možný preklep: zopakovali ste slovo
Context: ...sable ipcfile IPCPATH ipcpath IPFS JALR JOURNALREMOTES journalremotes JSPATH jspath jwtsecret Keccak leveldb ...

(WORD_REPEAT_RULE)


[duplication] ~187-~187: Možný preklep: zopakovali ste slovo
Context: ...IPFS JALR JOURNALREMOTES journalremotes JSPATH jspath jwtsecret Keccak leveldb lightkdf Lisk ...

(WORD_REPEAT_RULE)


[duplication] ~199-~199: Možný preklep: zopakovali ste slovo
Context: ...k logfile logfmt Mainnets MAXAGE maxage MAXBACKUPS maxbackups MAXPEERS maxpeers MAXPENDPEERS maxpendp...

(WORD_REPEAT_RULE)


[duplication] ~201-~201: Možný preklep: zopakovali ste slovo
Context: ...ets MAXAGE maxage MAXBACKUPS maxbackups MAXPEERS maxpeers MAXPENDPEERS maxpendpeers MAXPRICE maxp...

(WORD_REPEAT_RULE)


[duplication] ~203-~203: Možný preklep: zopakovali ste slovo
Context: ...MAXBACKUPS maxbackups MAXPEERS maxpeers MAXPENDPEERS maxpendpeers MAXPRICE maxprice MEMPROFILERATE mempro...

(WORD_REPEAT_RULE)


[duplication] ~205-~205: Možný preklep: zopakovali ste slovo
Context: ...EERS maxpeers MAXPENDPEERS maxpendpeers MAXPRICE maxprice MEMPROFILERATE memprofilerate Merkle me...

(WORD_REPEAT_RULE)


[duplication] ~207-~207: Možný preklep: zopakovali ste slovo
Context: ...ENDPEERS maxpendpeers MAXPRICE maxprice MEMPROFILERATE memprofilerate Merkle merkle MFHI MFLO Mgas Minato MIN...

(WORD_REPEAT_RULE)


[duplication] ~209-~209: Možný preklep: zopakovali ste slovo
Context: ... maxprice MEMPROFILERATE memprofilerate Merkle merkle MFHI MFLO Mgas Minato MINFREEDISK minfr...

(WORD_REPEAT_RULE)


[duplication] ~215-~215: Možný preklep: zopakovali ste slovo
Context: ...ate Merkle merkle MFHI MFLO Mgas Minato MINFREEDISK minfreedisk MINSUGGESTEDPRIORITYFEE minsuggestedpri...

(WORD_REPEAT_RULE)


[duplication] ~217-~217: Možný preklep: zopakovali ste slovo
Context: ...FLO Mgas Minato MINFREEDISK minfreedisk MINSUGGESTEDPRIORITYFEE minsuggestedpriorityfee Mintable Mintplex MIPSEVM Mitigations M...

(WORD_REPEAT_RULE)


[duplication] ~223-~223: Možný preklep: zopakovali ste slovo
Context: ...e Mintable Mintplex MIPSEVM Mitigations Monitorism monitorism Moralis Mordor mountpoint MOVN MOVZ MTH...

(WORD_REPEAT_RULE)


[duplication] ~240-~240: Možný preklep: zopakovali ste slovo
Context: ... multiclient multisigs MULTU nethermind NETRESTRICT netrestrict NETWORKID networkid NEWPAYLOAD newpaylo...

(WORD_REPEAT_RULE)


[duplication] ~242-~242: Možný preklep: zopakovali ste slovo
Context: ...ULTU nethermind NETRESTRICT netrestrict NETWORKID networkid NEWPAYLOAD newpayload nextra NOCOMPACTI...

(WORD_REPEAT_RULE)


[duplication] ~244-~244: Možný preklep: zopakovali ste slovo
Context: ...ESTRICT netrestrict NETWORKID networkid NEWPAYLOAD newpayload nextra NOCOMPACTION nocompaction NODEKE...

(WORD_REPEAT_RULE)


[duplication] ~247-~247: Možný preklep: zopakovali ste slovo
Context: ... networkid NEWPAYLOAD newpayload nextra NOCOMPACTION nocompaction NODEKEY nodekey NODEKEYHEX nodekeyhex n...

(WORD_REPEAT_RULE)


[duplication] ~249-~249: Možný preklep: zopakovali ste slovo
Context: ...ayload nextra NOCOMPACTION nocompaction NODEKEY nodekey NODEKEYHEX nodekeyhex nodename Nodies N...

(WORD_REPEAT_RULE)


[duplication] ~251-~251: Možný preklep: zopakovali ste slovo
Context: ...COMPACTION nocompaction NODEKEY nodekey NODEKEYHEX nodekeyhex nodename Nodies NODISCOVER nodiscover N...

(WORD_REPEAT_RULE)


[duplication] ~255-~255: Možný preklep: zopakovali ste slovo
Context: ...y NODEKEYHEX nodekeyhex nodename Nodies NODISCOVER nodiscover NOLOCALS nolocals NOPREFETCH noprefetch...

(WORD_REPEAT_RULE)


[duplication] ~257-~257: Možný preklep: zopakovali ste slovo
Context: ...x nodename Nodies NODISCOVER nodiscover NOLOCALS nolocals NOPREFETCH noprefetch NOPRUNING nopruni...

(WORD_REPEAT_RULE)


[duplication] ~259-~259: Možný preklep: zopakovali ste slovo
Context: ...NODISCOVER nodiscover NOLOCALS nolocals NOPREFETCH noprefetch NOPRUNING nopruning NOSYNCSERVE nosyncs...

(WORD_REPEAT_RULE)


[duplication] ~261-~261: Možný preklep: zopakovali ste slovo
Context: ...NOLOCALS nolocals NOPREFETCH noprefetch NOPRUNING nopruning NOSYNCSERVE nosyncserve Numba Offchain ...

(WORD_REPEAT_RULE)


[duplication] ~263-~263: Možný preklep: zopakovali ste slovo
Context: ...PREFETCH noprefetch NOPRUNING nopruning NOSYNCSERVE nosyncserve Numba Offchain offchain opchaina opchai...

(WORD_REPEAT_RULE)


[duplication] ~266-~266: Možný preklep: zopakovali ste slovo
Context: ...nopruning NOSYNCSERVE nosyncserve Numba Offchain offchain opchaina opchainb OPCM opcm Openfort op...

(WORD_REPEAT_RULE)


[duplication] ~270-~270: Možný preklep: zopakovali ste slovo
Context: ...mba Offchain offchain opchaina opchainb OPCM opcm Openfort oplabs opnode's outfile Pausab...

(WORD_REPEAT_RULE)


[duplication] ~278-~278: Možný preklep: zopakovali ste slovo
Context: ... opnode's outfile Pausability pcscdpath Pectra pectra Pectra's Peerstore peerstore peerstores...

(WORD_REPEAT_RULE)


[duplication] ~281-~281: Možný preklep: zopakovali ste slovo
Context: ...bility pcscdpath Pectra pectra Pectra's Peerstore peerstore peerstores Permissioned permissioned Pe...

(WORD_REPEAT_RULE)


[duplication] ~284-~284: Možný preklep: zopakovali ste slovo
Context: ...Pectra's Peerstore peerstore peerstores Permissioned permissioned Permissionless permissionless permissio...

(WORD_REPEAT_RULE)


[duplication] ~286-~286: Možný preklep: zopakovali ste slovo
Context: ...re peerstores Permissioned permissioned Permissionless permissionless permissionlessly Perps Peta Pimlico POA...

(WORD_REPEAT_RULE)


[duplication] ~294-~294: Možný preklep: zopakovali ste slovo
Context: ...ionlessly Perps Peta Pimlico POAP POAPs PPROF pprof Precommitments precommitments preconfig...

(WORD_REPEAT_RULE)


[duplication] ~296-~296: Možný preklep: zopakovali ste slovo
Context: ...rps Peta Pimlico POAP POAPs PPROF pprof Precommitments precommitments preconfigured predeploy Predeployed pre...

(WORD_REPEAT_RULE)


[duplication] ~300-~300: Možný preklep: zopakovali ste slovo
Context: ... precommitments preconfigured predeploy Predeployed predeployed Predeploys predeploys prefunded Preimag...

(WORD_REPEAT_RULE)


[duplication] ~302-~302: Možný preklep: zopakovali ste slovo
Context: ...gured predeploy Predeployed predeployed Predeploys predeploys prefunded Preimage preimage PREIMAGES p...

(WORD_REPEAT_RULE)


[duplication] ~305-~305: Možný preklep: zopakovali ste slovo
Context: ...eployed Predeploys predeploys prefunded Preimage preimage PREIMAGES preimages preinstall Preinsta...

(WORD_REPEAT_RULE)


[duplication] ~307-~307: Možný preklep: zopakovali ste slovo
Context: ... predeploys prefunded Preimage preimage PREIMAGES preimages preinstall Preinstalls preinstalls Pres...

(WORD_REPEAT_RULE)


[duplication] ~310-~310: Možný preklep: zopakovali ste slovo
Context: ...preimage PREIMAGES preimages preinstall Preinstalls preinstalls Prestate prestate prestates PREVRANDAO ...

(WORD_REPEAT_RULE)


[duplication] ~312-~312: Možný preklep: zopakovali ste slovo
Context: ...ages preinstall Preinstalls preinstalls Prestate prestate prestates PREVRANDAO PRICEBUMP pricebum...

(WORD_REPEAT_RULE)


[duplication] ~316-~316: Možný preklep: zopakovali ste slovo
Context: ... Prestate prestate prestates PREVRANDAO PRICEBUMP pricebump PRICELIMIT pricelimit productionize pro...

(WORD_REPEAT_RULE)


[duplication] ~318-~318: Možný preklep: zopakovali ste slovo
Context: ...restates PREVRANDAO PRICEBUMP pricebump PRICELIMIT pricelimit productionize productionized Protip Pro...

(WORD_REPEAT_RULE)


[duplication] ~324-~324: Možný preklep: zopakovali ste slovo
Context: ...uctionize productionized Protip Proxied Proxyd proxyd Pyth Pyth's QRNG Quicknode quicknode qu...

(WORD_REPEAT_RULE)


[duplication] ~326-~326: Možný preklep: zopakovali ste slovo
Context: ...uctionized Protip Proxied Proxyd proxyd Pyth Pyth's QRNG Quicknode quicknode quickstarts ...

(WORD_REPEAT_RULE)


[duplication] ~329-~329: Možný preklep: zopakovali ste slovo
Context: ... Proxied Proxyd proxyd Pyth Pyth's QRNG Quicknode quicknode quickstarts rebalancing reemit Reemitti...

(WORD_REPEAT_RULE)


[duplication] ~335-~335: Možný preklep: zopakovali ste slovo
Context: ...ickstarts rebalancing reemit Reemitting Regenesis regenesis Reimagine REJOURNAL rejournal REMOTEDB ...

(WORD_REPEAT_RULE)


[duplication] ~338-~338: Možný preklep: zopakovali ste slovo
Context: ...eemitting Regenesis regenesis Reimagine REJOURNAL rejournal REMOTEDB remotedb Reown Reown's replaya...

(WORD_REPEAT_RULE)


[duplication] ~340-~340: Možný preklep: zopakovali ste slovo
Context: ...regenesis Reimagine REJOURNAL rejournal REMOTEDB remotedb Reown Reown's replayability replayor re...

(WORD_REPEAT_RULE)


[duplication] ~342-~342: Možný preklep: zopakovali ste slovo
Context: ...e REJOURNAL rejournal REMOTEDB remotedb Reown Reown's replayability replayor reposts reprov...

(WORD_REPEAT_RULE)


[duplication] ~348-~348: Možný preklep: zopakovali ste slovo
Context: ...replayability replayor reposts reproven REQUIREDBLOCKS requiredblocks rollouts Rollups rollups Routescan rpck...

(WORD_REPEAT_RULE)


[duplication] ~351-~351: Možný preklep: zopakovali ste slovo
Context: ... REQUIREDBLOCKS requiredblocks rollouts Rollups rollups Routescan rpckind RPCPREFIX rpcprefix r...

(WORD_REPEAT_RULE)


[duplication] ~355-~355: Možný preklep: zopakovali ste slovo
Context: ...louts Rollups rollups Routescan rpckind RPCPREFIX rpcprefix rpcs RPGF Runbooks runbooks RWAs safedb...

(WORD_REPEAT_RULE)


[duplication] ~359-~359: Možný preklep: zopakovali ste slovo
Context: ...n rpckind RPCPREFIX rpcprefix rpcs RPGF Runbooks runbooks RWAs safedb Schnorr SEPOLIA Sepolia sep...

(WORD_REPEAT_RULE)


[duplication] ~364-~364: Možný preklep: zopakovali ste slovo
Context: ...F Runbooks runbooks RWAs safedb Schnorr SEPOLIA Sepolia sepolia seqnr SEQUENCERHTTP sequencerht...

(WORD_REPEAT_RULE)


[duplication] ~368-~368: Možný preklep: zopakovali ste slovo
Context: ...b Schnorr SEPOLIA Sepolia sepolia seqnr SEQUENCERHTTP sequencerhttp serv signup SLLV SLTI SLTIU SLTU smartc...

(WORD_REPEAT_RULE)


[duplication] ~386-~386: Možný preklep: zopakovali ste slovo
Context: ...olana Soneium soyboy Spearbit SRAV SRLV Stablecoins stablecoins statefulset structs subcomponents subga...

(WORD_REPEAT_RULE)


[duplication] ~398-~398: Možný preklep: zopakovali ste slovo
Context: ...nd SUBU Sunnyside SUPERCHAIN Superchain superchain Superchain's superchainerc Superlend Superloans Su...

(WORD_REPEAT_RULE)


[duplication] ~405-~405: Možný preklep: zopakovali ste slovo
Context: ...uperlend Superloans Superscan Superseed Supersim supersim SYNCMODE syncmode SYNCTARGET synctarget...

(WORD_REPEAT_RULE)


[duplication] ~407-~407: Možný preklep: zopakovali ste slovo
Context: ...s Superscan Superseed Supersim supersim SYNCMODE syncmode SYNCTARGET synctarget syscalls SYSCON t...

(WORD_REPEAT_RULE)


[duplication] ~409-~409: Možný preklep: zopakovali ste slovo
Context: ...eed Supersim supersim SYNCMODE syncmode SYNCTARGET synctarget syscalls SYSCON thirdweb threadcreate t...

(WORD_REPEAT_RULE)


[duplication] ~437-~437: Možný preklep: zopakovali ste slovo
Context: ...ubmitted UPNP upstreaming VERKLE verkle VHOSTS vhosts Viem viem Viem's viem's VMDEBUG vmdebug...

(WORD_REPEAT_RULE)


[duplication] ~439-~439: Možný preklep: zopakovali ste slovo
Context: ...upstreaming VERKLE verkle VHOSTS vhosts Viem viem Viem's viem's VMDEBUG vmdebug VMODULE v...

(WORD_REPEAT_RULE)


[duplication] ~443-~443: Možný preklep: zopakovali ste slovo
Context: ...e VHOSTS vhosts Viem viem Viem's viem's VMDEBUG vmdebug VMODULE vmodule xlarge XORI ZKPs ZKVM Z...

(WORD_REPEAT_RULE)


[duplication] ~445-~445: Možný preklep: zopakovali ste slovo
Context: ...Viem viem Viem's viem's VMDEBUG vmdebug VMODULE vmodule xlarge XORI ZKPs ZKVM Zora zora

(WORD_REPEAT_RULE)


[duplication] ~451-~451: Možný preklep: zopakovali ste slovo
Context: ...g VMODULE vmodule xlarge XORI ZKPs ZKVM Zora zora

(WORD_REPEAT_RULE)

🔇 Additional comments (3)
pages/stack/smart-contracts/smart-contracts.mdx (1)

23-23: Callout import is appropriate
The file uses <Callout> components for warnings throughout, so importing Callout from nextra/components is correct.

pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1)

1-20: Frontmatter metadata is complete and correct
All required fields (title, lang, description, topic, personas, categories, content_type, is_imported_content) are present and non-empty for a regular guide page.

words.txt (1)

62-62: Verify missing uppercase variant for new CLI flag
The new entry calldate appears only in lowercase. If this term is exposed both as a CLI flag and an environment variable, consider adding the uppercase CALLDATE to mirror the existing pattern (e.g., DATADIR/datadir, RPCPREFIX/rpcprefix).

🧰 Tools
🪛 LanguageTool

[duplication] ~62-~62: Možný preklep: zopakovali ste slovo
Context: ...des bottlenecked Brotli brotli calldate Callouts callouts CCIP cdef Celestia Celestia's chainid C...

(WORD_REPEAT_RULE)

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🧹 Nitpick comments (5)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (5)

22-22: Remove unused import
Callout is imported but never used in this document. Consider removing the import to keep the code clean.


102-145: Ensure JSON examples remain valid
Inline lines starting with - inside the JSON block (e.g. - RELEVANT VALUES, comment annotations) break JSON syntax. Move explanatory notes outside the fenced JSON or split into multiple valid JSON blocks annotated with surrounding text.


148-148: Hyphenate compound verb “cross-checking”
Grammar suggestion: change “cross checking” to “cross-checking” for consistency.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)


208-215: Use a supported language identifier for Docker commands
Replace docker with bash or ```shell for the docker run snippet to ensure proper syntax highlighting.


226-229: Avoid duplicate section title
You have two “Verify outputs” steps (5 and 6). Rename the second one (step 6) to something like “Simulate and execute upgrade” to differentiate its purpose.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a528cf1 and 45a9539.

📒 Files selected for processing (1)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with the following criteria: - First, check the frontmatter section at the top of the file: 1. For regular pages, ensure AL...

**/*.mdx: "ALWAYS review Markdown content THOROUGHLY with the following criteria:

  • First, check the frontmatter section at the top of the file:
    1. For regular pages, ensure ALL these fields are present and not empty:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    personas: [non-empty array]
    categories: [non-empty array]
    content_type: [valid type]
    ---
    1. For landing pages (index.mdx or files with ), only these fields are required:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    ---
    1. If any required fields are missing or empty, comment:
      'This file appears to be missing required metadata. Please check keywords.config.yaml for valid options and add the required fields manually. You can validate your changes by running:
    pnpm validate-metadata
    ```'
  • Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
  • Avoid gender-specific language and use the imperative form.
  • Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
  • Ensure proper nouns are capitalized in sentences.
  • Apply the Oxford comma.
  • Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
  • Use correct spelling and grammar at all times (IMPORTANT).
  • For H1, H2, and H3 headers:
    1. Use sentence case, capitalizing only the first word.
    2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
    3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
  • Flag any headers that seem to inconsistently apply these rules for manual review.
  • When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
    "
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx
🪛 LanguageTool
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

[uncategorized] ~37-~37: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)


[uncategorized] ~48-~48: Loose punctuation mark.
Context: ...ur specific chain**: deployments.json: ```json { "AddressManager": "0xEF811...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~64-~64: Loose punctuation mark.
Context: ...BBF17930d86" } `deploy-config.json`: json { "l1StartingBlockTag": "0x1...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)

🪛 Gitleaks (8.26.0)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

78-78: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.

(generic-api-key)

🔇 Additional comments (1)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1)

1-20: Frontmatter metadata is complete and valid
All required fields for a regular guide page are present and populated.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

🧹 Nitpick comments (4)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (4)

214-221: Use a recognized code fence language for Docker commands
The code fence is labeled docker, which isn't a standard syntax highlighter. Change it to bash or shell for proper formatting.

Proposed change:

@@ 214c214
- ```docker 
+ ```bash

148-148: Hyphenate “up-to-date” and “cross-checking”
Apply hyphens to these compound phrases for correctness.

Proposed diff:

@@ 148c148
- ... are actually up to date by cross checking ...
+ ... are actually up-to-date by cross-checking ...
🧰 Tools
🪛 LanguageTool

[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)


22-22: Remove or utilize the unused Callout import
The Callout component is imported but never used in this document. Either remove the import or add a corresponding callout to highlight important notes.


37-38: Add missing period at end of bullet item
Ensure consistent punctuation by ending the “Foundry” bullet with a period.

Proposed diff:

@@ 38c38
- *   [Foundry](https://getfoundry.sh/) for contract simulation and verification
+ *   [Foundry](https://getfoundry.sh/) for contract simulation and verification.
🧰 Tools
🪛 LanguageTool

[uncategorized] ~37-~37: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 45a9539 and 29ca519.

📒 Files selected for processing (1)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with the following criteria: - First, check the frontmatter section at the top of the file: 1. For regular pages, ensure AL...

**/*.mdx: "ALWAYS review Markdown content THOROUGHLY with the following criteria:

  • First, check the frontmatter section at the top of the file:
    1. For regular pages, ensure ALL these fields are present and not empty:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    personas: [non-empty array]
    categories: [non-empty array]
    content_type: [valid type]
    ---
    1. For landing pages (index.mdx or files with ), only these fields are required:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    ---
    1. If any required fields are missing or empty, comment:
      'This file appears to be missing required metadata. Please check keywords.config.yaml for valid options and add the required fields manually. You can validate your changes by running:
    pnpm validate-metadata
    ```'
  • Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
  • Avoid gender-specific language and use the imperative form.
  • Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
  • Ensure proper nouns are capitalized in sentences.
  • Apply the Oxford comma.
  • Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
  • Use correct spelling and grammar at all times (IMPORTANT).
  • For H1, H2, and H3 headers:
    1. Use sentence case, capitalizing only the first word.
    2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
    3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
  • Flag any headers that seem to inconsistently apply these rules for manual review.
  • When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
    "
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx
🪛 LanguageTool
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

[uncategorized] ~37-~37: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)


[uncategorized] ~48-~48: Loose punctuation mark.
Context: ...ur specific chain**: deployments.json: ```json { "AddressManager": "0xEF811...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~64-~64: Loose punctuation mark.
Context: ...BBF17930d86" } `deploy-config.json`: json { "l1StartingBlockTag": "0x1...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)

🪛 Gitleaks (8.26.0)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

78-78: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.

(generic-api-key)

⏰ Context from checks skipped due to timeout of 90000ms (3)
  • GitHub Check: Redirect rules - docs-optimism
  • GitHub Check: Header rules - docs-optimism
  • GitHub Check: Pages changed - docs-optimism

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

♻️ Duplicate comments (2)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (2)

175-208: Split .env content and shell validations into separate fences
The block is currently labeled json but mixes environment‐variable placeholders and shell checks. Please split this into two fences:

  1. A dotenv (or text) fence for the .env snippet
  2. A bash fence for the file‐existence checks

223-236: Duplicate “Verify outputs” headings
Steps 5 and 6 are both titled “Verify outputs,” which can confuse readers. Rename the second heading (step 6) to something more specific (e.g., “Simulate and finalize upgrade”) and update its numbering.

🧹 Nitpick comments (2)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (2)

214-221: Use a proper shell language label for the Docker command
The fence is marked as docker```, which may not provide correct syntax highlighting. Consider using bashorshell```` for clarity.


148-148: Hyphenate compound adjectives
Use “up-to-date” (adj.) and “cross-checking” to conform with style guidelines.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 29ca519 and 2ac88ad.

📒 Files selected for processing (1)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with the following criteria: - First, check the frontmatter section at the top of the file: 1. For regular pages, ensure AL...

**/*.mdx: "ALWAYS review Markdown content THOROUGHLY with the following criteria:

  • First, check the frontmatter section at the top of the file:
    1. For regular pages, ensure ALL these fields are present and not empty:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    personas: [non-empty array]
    categories: [non-empty array]
    content_type: [valid type]
    ---
    1. For landing pages (index.mdx or files with ), only these fields are required:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    ---
    1. If any required fields are missing or empty, comment:
      'This file appears to be missing required metadata. Please check keywords.config.yaml for valid options and add the required fields manually. You can validate your changes by running:
    pnpm validate-metadata
    ```'
  • Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
  • Avoid gender-specific language and use the imperative form.
  • Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
  • Ensure proper nouns are capitalized in sentences.
  • Apply the Oxford comma.
  • Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
  • Use correct spelling and grammar at all times (IMPORTANT).
  • For H1, H2, and H3 headers:
    1. Use sentence case, capitalizing only the first word.
    2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
    3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
  • Flag any headers that seem to inconsistently apply these rules for manual review.
  • When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
    "
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx
🪛 LanguageTool
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

[uncategorized] ~37-~37: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)


[uncategorized] ~48-~48: Loose punctuation mark.
Context: ...ur specific chain**: deployments.json: ```json { "AddressManager": "0xEF811...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~64-~64: Loose punctuation mark.
Context: ...BBF17930d86" } `deploy-config.json`: json { "l1StartingBlockTag": "0x1...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~148-~148: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~148-~148: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)

🪛 Gitleaks (8.26.0)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

78-78: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.

(generic-api-key)

⏰ Context from checks skipped due to timeout of 90000ms (3)
  • GitHub Check: Redirect rules - docs-optimism
  • GitHub Check: Header rules - docs-optimism
  • GitHub Check: Pages changed - docs-optimism
🔇 Additional comments (1)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1)

1-20: Frontmatter metadata is complete and correctly populated
All required fields (title, lang, description, topic, personas, categories, and content_type) are present and non-empty.

Copy link
Collaborator

@sbvegan sbvegan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good! A few comments in there and the breadcrumb file needs to be updated
Screenshot 2025-05-30 at 11 07 26 AM

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

♻️ Duplicate comments (4)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (4)

64-143: Invalid JSON in the deploy-config.json example
The fenced block labeled json contains directive lines (prefixed with -) that aren’t valid JSON. Either remove these comment lines or move them outside the fenced block, or switch the fence to jsonc to allow comments.

🧰 Tools
🪛 Gitleaks (8.26.0)

76-76: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.

(generic-api-key)


173-206: Split .env content and shell checks into separate fences
The block is labeled json but mixes environment variable placeholders with shell conditionals. Use one fence (e.g., dotenv or text) for the .env snippet and a separate bash fence for the file existence checks to improve syntax highlighting and clarity.


223-230: Mismatch between file count and list items
The text states “The deployment should output four files:” but then lists six items. Update the count to six or reduce the list to four entries to keep them consistent.


232-236: Resolve duplicate section headings
Steps 5 and 6 are both titled “Verify outputs,” which can confuse readers. Rename the second heading to reflect its distinct purpose (for example, “Simulate and finalize upgrade”) and adjust the numbering accordingly.

🧹 Nitpick comments (2)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (2)

146-146: Use hyphens in compound adjectives
Change “up to date” → “up-to-date” and “cross checking” → “cross-checking” for proper compound adjective formatting.

🧰 Tools
🪛 LanguageTool

[uncategorized] ~146-~146: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~146-~146: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)


215-222: Use a standard code fence label for shell commands
The Docker command is inside a fence labeled docker. For proper syntax highlighting, consider using bash or shell instead.

📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 38be307 and 3ffb217.

📒 Files selected for processing (1)
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (1)
`**/*.mdx`: "ALWAYS review Markdown content THOROUGHLY with the following criteria: - First, check the frontmatter section at the top of the file: 1. For regular pages, ensure AL...

**/*.mdx: "ALWAYS review Markdown content THOROUGHLY with the following criteria:

  • First, check the frontmatter section at the top of the file:
    1. For regular pages, ensure ALL these fields are present and not empty:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    personas: [non-empty array]
    categories: [non-empty array]
    content_type: [valid type]
    ---
    1. For landing pages (index.mdx or files with ), only these fields are required:
    ---
    title: [non-empty]
    lang: [non-empty]
    description: [non-empty]
    topic: [non-empty]
    ---
    1. If any required fields are missing or empty, comment:
      'This file appears to be missing required metadata. Please check keywords.config.yaml for valid options and add the required fields manually. You can validate your changes by running:
    pnpm validate-metadata
    ```'
  • Use proper nouns in place of personal pronouns like 'We' and 'Our' to maintain consistency in communal documentation.
  • Avoid gender-specific language and use the imperative form.
  • Monitor capitalization for emphasis. Avoid using all caps, italics, or bold for emphasis.
  • Ensure proper nouns are capitalized in sentences.
  • Apply the Oxford comma.
  • Use proper title case for buttons, tab names, page names, and links. Sentence case should be used for body content and short phrases, even in links.
  • Use correct spelling and grammar at all times (IMPORTANT).
  • For H1, H2, and H3 headers:
    1. Use sentence case, capitalizing only the first word.
    2. Preserve the capitalization of proper nouns, technical terms, and acronyms as defined in the 'nouns.txt' file located in the root directory of the project.
    3. Do not automatically lowercase words that appear in the 'nouns.txt' file, regardless of their position in the header.
  • Flag any headers that seem to inconsistently apply these rules for manual review.
  • When reviewing capitalization, always refer to the 'nouns.txt' file for the correct capitalization of proper nouns and technical terms specific to the project.
    "
  • pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx
🪛 LanguageTool
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

[uncategorized] ~35-~35: A punctuation mark might be missing here.
Context: ...and runner for executing upgrade scripts * Foundry for con...

(AI_EN_LECTOR_MISSING_PUNCTUATION)


[uncategorized] ~46-~46: Loose punctuation mark.
Context: ...ur specific chain**: deployments.json: ```json { "AddressManager": "0xEF811...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~62-~62: Loose punctuation mark.
Context: ...BBF17930d86" } `deploy-config.json`: json { "l1StartingBlockTag": "0x1...

(UNLIKELY_OPENING_PUNCTUATION)


[uncategorized] ~146-~146: It appears that hyphens are missing in the adjective “up-to-date”.
Context: ... all L1 addresses, L2OO) are actually up to date by cross checking the Superchain Regist...

(UP_TO_DATE_HYPHEN)


[grammar] ~146-~146: The word “cross-checking” is spelled with a hyphen.
Context: ...ses, L2OO) are actually up to date by cross checking the Superchain Registry and on-chain (y...

(CROSS_COMPOUNDS)

🪛 Gitleaks (8.26.0)
pages/stack/smart-contracts/upgrade-op-contracts-1-3-1-8.mdx

76-76: Detected a Generic API Key, potentially exposing access to various services and sensitive operations.

(generic-api-key)

@bradleycamacho bradleycamacho merged commit d18cb9d into main May 30, 2025
12 checks passed
@bradleycamacho bradleycamacho deleted the contract-updates branch May 30, 2025 18:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants