Skip to content

refactor: [high] use rsmt2d from celestia-app - #5361

Draft
rootulp wants to merge 2 commits into
mainfrom
codex/migrate-rsmt2d-to-app
Draft

rootulp wants to merge 2 commits into
mainfrom
codex/migrate-rsmt2d-to-app

Conversation

@rootulp

@rootulp rootulp commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Migrate node's rsmt2d imports, generated mocks and nested tastora module to the independent library in celestia-app #8312. Pin app at the migration-only v10.4.0 backport #8314 simultaneously so exported EDS/tree types use the same Go import path.

The backport preserves node's current app API, Fibre defaults and dependency versions. Current app v10.x is deliberately not used: it contains additional Fibre interface/default changes. Outside the new rsmt2d path and app commit, dependency versions are unchanged in both modules.

Preview module/app commits are real and resolvable. Replace both pseudo-versions with the corresponding published releases before releasing node; maintainer selection of the app v10.4 release branch is pending. No release or tag is created here.

Validation: all root packages compile (go test -run '^$' ./...); EDS, shwap, IPLD, header and store suites pass; both module manifests tidied; changed imports checked with the repository's goimports-reviser configuration. The rsmt2d library's repeated race tests and old/new root/repair/JSON parity checks also pass. Nested tastora manifests were tidied, but its Docker integration suite was not run.

Review level: [high] — app and node exchange exported EDS types across a Go module identity change. Draft pending coordinated app/library releases and CI.

CI note: the Go Mod Parity Check reports two pre-existing mismatches (Azure/go-ansiterm and docker/go-connections). Complete module lists generated from untouched baseline 55a5be2 reproduce exactly the same two mismatches; neither dependency declaration changes here. Root/tastora tidy and import lint pass. This unrelated baseline CI failure remains visible rather than adding dependency upgrades to the migration.

Final CI snapshot: Linux and macOS unit tests, coverage, golangci-lint, import lint, tidy and OpenRPC generation all pass. Only the baseline parity mismatch above fails; Docker-based integration tests were skipped.

@codecov

codecov Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 38.75%. Comparing base (f197272) to head (2896bd2).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5361      +/-   ##
==========================================
- Coverage   38.77%   38.75%   -0.02%     
==========================================
  Files         323      323              
  Lines       22459    22459              
==========================================
- Hits         8708     8704       -4     
- Misses      12706    12708       +2     
- Partials     1045     1047       +2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@greptile-apps

greptile-apps Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

RetriggerView in GreptileConfidence Score: 5/5

[High impact] No blocking issue is identified. Replacing the preview dependency pins remains a documented prerequisite for releasing node, rather than an unresolved merge blocker.

Summary

Migrates node code, tests, and generated mocks to github.com/celestiaorg/celestia-app/rsmt2d, with matching app pins in the root and Tastora modules. No actionable correctness issue is reported.

rootulp explicitly deferred replacing the preview pseudo-versions with published releases until the coordinated app/library releases are available; maintainer selection of the app v10.4 release branch remains pending.

rootulp explicitly left the Azure/go-ansiterm and docker/go-connections parity mismatches outside this change because both reproduce on the untouched baseline and neither dependency declaration changes here.

  • Node data-availability code now uses the same rsmt2d package as Celestia app.

Reviews (2) · Last reviewed commit: "chore: merge main into codex/migrate-rsm..." · Reviewed by Greptile

Resolve the proofs_cache_test.go import conflict using the
celestia-app/rsmt2d path.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BcmovctaELpQeE3EMTd6fe

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