Skip to content

Conversation

rvagg
Copy link
Member

@rvagg rvagg commented May 13, 2025

This is on top of #13123 to explore how we can further decouple F3.

@rvagg rvagg requested review from masih and Copilot May 13, 2025 14:23
@rvagg rvagg added the skip/changelog This change does not require CHANGELOG.md update label May 13, 2025
@github-project-automation github-project-automation bot moved this to Todo in F3 May 13, 2025
@github-project-automation github-project-automation bot moved this to 📌 Triage in FilOz May 13, 2025
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR aims to decouple Eth modules from directly depending on the legacy F3Backend by replacing it with a certificate provider abstraction.

  • Replace F3Backend with F3CertificateProvider in the Eth module constructor and types.
  • Update the tipset resolver to call the new method on the certificate provider.

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
node/modules/eth.go Updated the dependency type from lf3.F3Backend to full.F3CertificateProvider.
node/impl/eth/tipsetresolver.go Adjusted the tipset resolver to use the new provider interface and method.
Comments suppressed due to low confidence (2)

node/impl/eth/tipsetresolver.go:42

  • The error check still references f3.ErrF3NotRunning even though the lf3 package has been removed. Update this reference to use the appropriate error constant from the new certificate provider package.
if errors.Is(err, f3.ErrF3NotRunning) || errors.Is(err, api.ErrF3NotReady) {

node/impl/eth/tipsetresolver.go:22

  • [nitpick] Consider aligning the F3CertificateProvider interface defined locally with the one imported in node/modules/eth.go (from the full package) to ensure consistent type usage across modules.
type F3CertificateProvider interface {

@github-project-automation github-project-automation bot moved this from 📌 Triage to ✔️ Approved by reviewer in FilOz May 13, 2025
@github-project-automation github-project-automation bot moved this from Todo to In review in F3 May 13, 2025
@masih masih merged commit dbba460 into masih/f3-be-gone-in-gateway May 13, 2025
88 of 91 checks passed
@masih masih deleted the rvagg/decouple-f3-eth branch May 13, 2025 14:44
@github-project-automation github-project-automation bot moved this from ✔️ Approved by reviewer to 🎉 Done in FilOz May 13, 2025
@github-project-automation github-project-automation bot moved this from In review to Done in F3 May 13, 2025
masih added a commit that referenced this pull request May 13, 2025
Disable F3 module when lotus is run with `--lite` commend since in that
mode the daemon is simply a reverse proxy of a full node.

Stop using F3Backend directly in Eth modules (#13127)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
skip/changelog This change does not require CHANGELOG.md update
Projects
Status: Done
Status: 🎉 Done
Development

Successfully merging this pull request may close these issues.

2 participants