Skip to content

Add Robinhood Chain to the subgraph network list - #2888

Open
Siddharth2207 wants to merge 1 commit into
mainfrom
add-robinhood-subgraph-network
Open

Siddharth2207 wants to merge 1 commit into
mainfrom
add-robinhood-subgraph-network

Conversation

@Siddharth2207

@Siddharth2207 Siddharth2207 commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Add Robinhood Chain (robinhood) to subgraph/networks.json with the deployed Raindex address and start block 59557818.
  • Pin that start block in LibRaindexDeploy and check it against networks.json.
  • Include Robinhood in script/build-start-blocks.sh so a later refresh keeps the entry.

Test plan

  • forge test --match-contract LibRaindexDeployNetworksJsonStartBlockRobinhoodTest
  • forge test --match-contract LibRaindexDeployNetworksJsonAddressesTest

Summary by CodeRabbit

  • New Features
    • Added support for deploying and indexing Raindex on Robinhood mainnet, including its start block configuration.
  • Tests
    • Added a check to verify the Robinhood start block configuration is consistent across deployment settings.

Pin its Raindex start block so deploys and the start-block refresh include chain 4663.

Co-authored-by: Cursor <cursoragent@cursor.com>
@coderabbitai

coderabbitai Bot commented Sep 25, 2026 •

Copy link
Copy Markdown
Contributor

Review in Change Stack →

Navigate logical layers of code changes, visualize relationships, and explore their blast radius.

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: rainlanguage/raindex/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 7a193b6f-098e-4664-8e52-cbabeb3118bc

📥 Commits

Reviewing files that changed from the base of the PR and between d249071 and f404dcf.

📒 Files selected for processing (4)
  • script/build-start-blocks.sh
  • src/lib/deploy/LibRaindexDeploy.sol
  • subgraph/networks.json
  • test/lib/deploy/LibRaindexDeployNetworksJsonStartBlockRobinhood.t.sol

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The start-block build script now supports Robinhood mainnet. The Robinhood start block is recorded in the Solidity constant and subgraph network configuration, with a test that checks the values match.

Changes

Robinhood start-block support

Layer / File(s) Summary
Discover and validate the start block
script/build-start-blocks.sh
The script uses ROBINHOOD_RPC_URL or the default Robinhood RPC endpoint to find the start block. Input-file mode also requires a Robinhood start block, and missing values follow the existing error path.
Write and verify Robinhood configuration
script/build-start-blocks.sh, src/lib/deploy/LibRaindexDeploy.sol, subgraph/networks.json, test/lib/deploy/LibRaindexDeployNetworksJsonStartBlockRobinhood.t.sol
The script writes the Robinhood start block to the Solidity constant and network configuration and includes it in the final status output. The constant and network entry use block 59557818. The test checks that the two configured values match.

Priority: ⬇️ Low

Estimated code review effort: 2 (Simple) | ~10 minutes

Change: Feature

Suggested reviewers: thedavidmeister

Merge Risk: ⚪ Minimal · up to f404d

Robinhood is included in the generated network configuration and the deployment workflow's build/deploy loop. No concrete indexing or deployment blocker is established; the change appears ready for normal project checks.

Security Architecture Review

Security architecture risk: 🔵 Low · up to f404d

Robinhood uses the existing address and start-block configuration pattern. No security boundary bypass or live deployment change was established. The new chain does add an RPC dependency to future configuration refreshes, and its rollout controls remain unconfirmed.

Retained concerns
No architecture-level concerns identified.

Security review details

Security Blast Radius

  • inferred — An incorrect Robinhood block or network source would affect the new chain’s configuration if that record is deployed. The available files do not establish a live indexer or exposure beyond that configuration.

Trust Boundaries and Controls

  • observed — The Robinhood RPC URL is environment-configurable. Discovery checks for code and rechecks the block boundary, while input-file mode supplies blocks without RPC discovery; neither path in this script independently verifies Robinhood chain identity.

Resilience and Maintainability Implications

  • inferred — A failed Robinhood RPC lookup prevents a normal refresh before any writes; interruption during later sequential writes can leave metadata out of agreement. These are extensions of the existing refresh flow, not evidence of a new security exploit.

Hardening Proposals

  • proposed — Before relying on refreshed Robinhood metadata for deployment, verify the RPC chain identity and deployed contract independently, and check cross-file agreement after a refresh.
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. (3 skipped: 3 … Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: adding Robinhood Chain to the subgraph network list.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 1 functions across 1 files. (3 skipped: 3 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Commit to this branch
  • Create a new PR
🧪 Generate unit tests (beta)
  • Commit to this branch
  • Create a new PR

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

Comment @coderabbitai help to get the list of available commands.

This branch has not been deployed

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

1 participant