Skip to content
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

Update init_full_node script and full_and_sequencer_node guide #406

Merged
merged 6 commits into from
Sep 9, 2024

Conversation

yarikbratashchuk
Copy link
Contributor

@yarikbratashchuk yarikbratashchuk commented Jun 27, 2024

When running full node on local-da for some reason I see "blob not found" debug messages:

6:05PM DBG no block found daHeight=214795 module=BlockManager reason="blob: not found"
6:05PM DBG trying to retrieve block from DA daHeight=214796 module=BlockManager
6:05PM DBG no block found daHeight=214796 module=BlockManager reason="blob: not found"
6:05PM DBG trying to retrieve block from DA daHeight=214797 module=BlockManager
6:05PM DBG no block found daHeight=214797 module=BlockManager reason="blob: not found"
6:05PM DBG trying to retrieve block from DA daHeight=214798 module=BlockManager
6:05PM DBG no block found daHeight=214798 module=BlockManager reason="blob: not found"
6:05PM DBG trying to retrieve block from DA daHeight=214799 module=BlockManager
6:05PM DBG no block found daHeight=214799 module=BlockManager reason="blob: not found"

Closes: #402

Summary by CodeRabbit

  • Documentation

    • Improved clarity and consistency in the guide for setting up a GM World rollup as a multi-node network using full and sequencer nodes.
  • Chores

    • Updated init-full-node.sh script to streamline the initialization and startup process for FullNode, including path adjustments and configuration changes.

Copy link
Contributor

coderabbitai bot commented Jun 27, 2024

Warning

Rate limit exceeded

@yarikbratashchuk has exceeded the limit for the number of commits or files that can be reviewed per hour. Please wait 3 minutes and 59 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

Files that changed from the base of the PR and between 7a24b56 and 50cdf7d.

Walkthrough

The recent updates involve rephrasing and reorganizing the instructions in the guides/full-and-sequencer-node.md file for better clarity. Additionally, significant changes were made to the init-full-node.sh script including removal of the rollkit.toml file, initialization process changes, path updates, and modifications to the FullNode startup command.

Changes

Files/Directories Summary of Changes
guides/full-and-sequencer-node.md Rephrased content, updated code snippets, and refined instructions for clarity.
public/gm/init-full-node.sh Major updates: removed rollkit.toml, modified FullNode initialization, updated paths/configurations, changed startup commands.

Poem

In the heart of code, lines rearrange,
Nodes now dance in a fresh exchange.
Paths aligned, commands made sleek,
FullNode runs smoother, no more leaks.
🎉 Welcome changes, light and breezy,
Coding life just got more easy! 🚀


Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

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>.
    • Generate unit testing code for this file.
    • 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 generate unit testing code for this file.
    • @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 generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @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.

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 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.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

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.

@RollkitBot RollkitBot requested review from tuxcanfly and tzdybal June 27, 2024 18:14
Copy link
Contributor

github-actions bot commented Jun 27, 2024

PR Preview Action v1.4.7
🚀 Deployed preview to https://rollkit.github.io/docs-preview/./pr-406/
on branch main at 2024-09-05 14:44 UTC

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

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between ffc8644 and 26dc2e5.

Files selected for processing (2)
  • guides/full-and-sequencer-node.md (2 hunks)
  • public/gm/init-full-node.sh (2 hunks)
Additional context used
Shellcheck
public/gm/init-full-node.sh

[error] 1-1: Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.

(SC2148)

Markdownlint
guides/full-and-sequencer-node.md

29-29: Expected: 1; Actual: 2
Multiple consecutive blank lines

(MD012, no-multiple-blanks)

Additional comments not posted (10)
public/gm/init-full-node.sh (5)

9-14: Ensure file creation follows best practices for configuration management.

Creating configuration files dynamically is generally safe, but ensure that permissions are set correctly to avoid unauthorized access.


16-16: Clarify the purpose of rollkit rebuild.

It's unclear what rollkit rebuild does from this context. Consider adding a comment explaining its purpose or linking to documentation.


56-56: Ensure the updated start command is configured correctly.

The command has been simplified by removing some parameters. Verify that the remaining parameters are sufficient for the intended setup and that the node starts without issues.


20-20: Check the updated paths for correctness.

Ensure that the updated path reflects the new directory structure and that the genesis.json file is located correctly.

Verification successful

The genesis.json file was not found at the specified path.

To ensure the correctness of the updated path, let's search the repository for the genesis.json file and verify its correct location.


The genesis.json file was not found within the repository.

To gather more context, let's search for any references to genesis.json within the repository to understand its expected location or generation process.


The genesis.json file was not found at the specified path, but multiple references to ~/.gm/config/genesis.json in other scripts suggest that the path is correct.

  • public/gm/init-full-node.sh:20
  • public/gm/init-arabica-testnet.sh:50
  • public/gm/init-mainnet.sh:50
  • public/gm/init-local.sh:86
  • public/gm/init-mocha-testnet.sh:50

The file might be generated or moved to this location as part of the initialization process.

Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the existence of the genesis.json at the new location.

# Test: Check if the file exists at the specified path.
[ -f "$HOME/gm/.gm/config/genesis.json" ] && echo "File exists" || echo "File not found"

Length of output: 93



Script:

#!/bin/bash
# Description: Search for the genesis.json file within the repository to determine its correct location.

# Find the genesis.json file
fd genesis.json

Length of output: 17



Script:

#!/bin/bash
# Description: Search for references to genesis.json within the repository to gather more context about its expected location or generation process.

# Search for references to genesis.json
rg --no-heading --line-number "genesis.json"

Length of output: 3323


18-18: Validate the updated initialization command.

The command has been updated to use rollkit instead of gmd. Ensure that all parameters and their effects are documented and tested.

guides/full-and-sequencer-node.md (5)

8-9: Clear and concise introduction to the setup guide.

The updated introduction provides a clear overview of what the guide will cover, which is beneficial for users setting up the network.


58-58: Clarify the purpose of updating the P2P_ID.

The instructions for setting the P2P_ID are clear, but it would be beneficial to explain why this update is necessary and how it affects the node's operation.


29-29: Remove excessive blank lines.

There are multiple consecutive blank lines, which is against markdown best practices.

- 
- 
Tools
Markdownlint

29-29: Expected: 1; Actual: 2
Multiple consecutive blank lines

(MD012, no-multiple-blanks)


13-13: Ensure the updated link is accessible and relevant.

The link to the GM World tutorial should be verified to ensure it is accessible and provides relevant information for setting up the local-da.

Verification successful

The link is accessible and relevant.

The gm-world tutorial contains relevant information about setting up a local DA network.

  • File: tutorials/gm-world.md
  • Section: ## 🌐 Running a local DA network {#running-local-da}
Scripts executed

The following scripts were executed for the analysis:


Script:

#!/bin/bash
# Description: Verify the accessibility and relevance of the linked GM World tutorial.

# Test: Check if the link is accessible and contains relevant information.
curl -sSL https://github.com/path/to/GM-World/tutorial | grep -i "local-da"

Length of output: 75



Script:

#!/bin/bash
# Locate the gm-world tutorial file within the repository
fd gm-world

# Check the contents of the located file(s) for the term 'local-da'
fd gm-world --exec grep -i 'local-da' {}

Length of output: 408


18-18: Validate the script command for setting up the local DA network.

Ensure the script command works as expected and does not introduce security risks, especially since it involves piping to bash.

public/gm/init-full-node.sh Show resolved Hide resolved
guides/full-and-sequencer-node.md Show resolved Hide resolved
@yarikbratashchuk yarikbratashchuk force-pushed the yarik/full-node-local-da branch from ba8a0e6 to 26dc2e5 Compare June 28, 2024 11:59
@Manav-Aggarwal Manav-Aggarwal force-pushed the yarik/full-node-local-da branch from 26dc2e5 to 7a24b56 Compare July 5, 2024 13:38
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

Review details

Configuration used: CodeRabbit UI
Review profile: CHILL

Commits

Files that changed from the base of the PR and between 26dc2e5 and 7a24b56.

Files selected for processing (2)
  • guides/full-and-sequencer-node.md (2 hunks)
  • public/gm/init-full-node.sh (2 hunks)
Additional context used
Shellcheck
public/gm/init-full-node.sh

[error] 1-1: Tips depend on target shell and yours is unknown. Add a shebang or a 'shell' directive.

(SC2148)

Markdownlint
guides/full-and-sequencer-node.md

29-29: Expected: 1; Actual: 2
Multiple consecutive blank lines

(MD012, no-multiple-blanks)

Additional comments not posted (10)
public/gm/init-full-node.sh (5)

3-4: LGTM!

The addition of the P2P_ID variable is appropriate for the updated configuration.


9-14: LGTM!

The creation of the rollkit.toml configuration file is appropriate and necessary for the updated setup.


16-18: LGTM!

The change from gmd to rollkit for initializing the FullNode is appropriate and aligns with the updated setup.


20-20: LGTM!

The updated path for copying the genesis.json file aligns with the new directory structure.


56-56: LGTM!

The updated command for starting the FullNode aligns with the new setup requirements.

guides/full-and-sequencer-node.md (5)

3-6: LGTM!

The addition of the script setup section with imports is appropriate for the guide.


8-9: LGTM!

The rephrased guide improves clarity and consistency.


11-19: LGTM!

The updated instructions provide clear steps for setting up the local DA network.


27-30: LGTM!

The inclusion of instructions for setting up a full node alongside the sequencer node improves the comprehensiveness of the guide.

Tools
Markdownlint

29-29: Expected: 1; Actual: 2
Multiple consecutive blank lines

(MD012, no-multiple-blanks)


Line range hint 42-58:
LGTM!

The example of setting the P2P_ID variable is clear and necessary for the updated setup.

Tools
Markdownlint

29-29: Expected: 1; Actual: 2
Multiple consecutive blank lines

(MD012, no-multiple-blanks)

public/gm/init-full-node.sh Show resolved Hide resolved
Manav-Aggarwal
Manav-Aggarwal previously approved these changes Jul 5, 2024
@Manav-Aggarwal Manav-Aggarwal enabled auto-merge (squash) July 5, 2024 15:32
@Manav-Aggarwal Manav-Aggarwal self-requested a review July 5, 2024 15:33
@Manav-Aggarwal
Copy link
Member

Revisit so the error in the description doesn't occur anymore.

@Manav-Aggarwal Manav-Aggarwal marked this pull request as draft July 5, 2024 15:36
auto-merge was automatically disabled July 5, 2024 15:36

Pull request was converted to draft

@yarikbratashchuk
Copy link
Contributor Author

With the latest update of go-da and local-da we have this issue resolved.

@yarikbratashchuk yarikbratashchuk marked this pull request as ready for review September 5, 2024 14:43
Copy link
Contributor

@tuxcanfly tuxcanfly left a comment

Choose a reason for hiding this comment

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

OK.

@yarikbratashchuk yarikbratashchuk merged commit 0dbedd2 into main Sep 9, 2024
4 checks passed
@yarikbratashchuk yarikbratashchuk deleted the yarik/full-node-local-da branch September 9, 2024 07:53
@coderabbitai coderabbitai bot mentioned this pull request Sep 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

Revamp how to guide for creating a full node to be DA-agnostic
3 participants