Conversation
celestia-node has deprecated and removed the full node type. The celestia full subcommand no longer exists in recent versions. Remove FullNode from DANodeType constants, GetFullNodes() from the network API, and update all tests to use only bridge and light nodes. Closes #183 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
📝 WalkthroughWalkthroughRemoves the FullNode DA node type across the framework due to celestia-node deprecation. Updates include removing the DANodeType constant, public GetFullNodes() method, test configurations, and refactoring test logic to exclusively use BridgeNode and LightNode types. Changes
Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
Suggested reviewers
Poem
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches
🧪 Generate unit tests (beta)
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. Comment |
|
Context: celestia-node no longer has a full node. Ref: https://github.com/celestiaorg/celestia-node?tab=readme-ov-file#run-a-node |
There was a problem hiding this comment.
🧹 Nitpick comments (1)
framework/docker/da_network_test.go (1)
748-753: Guard against emptyAddNodesresult before indexing.
newLightNodes[0]is used immediately afterrequire.NoError; add a length assertion first to avoid a panic on unexpected empty results.Proposed test-hardening diff
newLightNodeConfig := da.NewNodeBuilder().WithNodeType(types.LightNode).Build() newLightNodes, err := daNetwork.AddNodes(testCfg.Ctx, newLightNodeConfig) require.NoError(t, err, "should be able to add light node back") + require.Len(t, newLightNodes, 1, "should return one added light node") newLightNode := newLightNodes[0]🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In `@framework/docker/da_network_test.go` around lines 748 - 753, After calling daNetwork.AddNodes in the test, guard against an empty slice before indexing: check the length of newLightNodes (e.g., assert len(newLightNodes) > 0) right after require.NoError to avoid a panic when accessing newLightNodes[0]; update the test around da.NewNodeBuilder().WithNodeType(types.LightNode).Build() / daNetwork.AddNodes(...) to include that length assertion before assigning newLightNode := newLightNodes[0].
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In `@framework/docker/da_network_test.go`:
- Around line 748-753: After calling daNetwork.AddNodes in the test, guard
against an empty slice before indexing: check the length of newLightNodes (e.g.,
assert len(newLightNodes) > 0) right after require.NoError to avoid a panic when
accessing newLightNodes[0]; update the test around
da.NewNodeBuilder().WithNodeType(types.LightNode).Build() /
daNetwork.AddNodes(...) to include that length assertion before assigning
newLightNode := newLightNodes[0].
ℹ️ Review info
Configuration used: defaults
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (5)
framework/docker/da_network_test.goframework/docker/dataavailability/network.goframework/docker/dataavailability/node_config.goframework/docker/docker_test.goframework/types/node.go
💤 Files with no reviewable changes (2)
- framework/docker/dataavailability/network.go
- framework/types/node.go
chatton
left a comment
There was a problem hiding this comment.
LGTM 👍
only thing to watch out for is that this would break support for running tests using older versions, potentially compatibility ones? I think it's probably not a huge deal though and it can be re-added if it becomes an issue.
Summary
FullNodefromDANodeTypeconstants and"full"fromdaNodeTypeStringssince celestia-node has deprecated and removed thecelestia fullsubcommandGetFullNodes()from the DA network APICloses #183
Test plan
go build ./...passesgo vet ./...passesNodeTypeConsensusFullandchain.FullNodesare NOT affected by this change🤖 Generated with Claude Code
Summary by CodeRabbit
Release Notes
Refactoring
Documentation