Implement Fiber DA spec compatibility (FiberFetcher)
- Vorherrschende Sprache
- Go
- Sterne
- 4
- Forks
- 0
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
## Summary
Implement `FiberFetcher` as a `DataFetcher` backend that conforms to the [Fiber DA spec](https://github.com/celestiaorg/fibre-da-spec). This enables apex to fetch namespace data directly from the Fiber network instead of going through celestia-node, reducing latency and removing the celestia-node dependency for production deployments.
## Context
The architecture already defines a pluggable `DataFetcher` interface (`pkg/fetch/fetcher.go`). The `FiberFetcher` implementation (`pkg/fetch/fiber.go`) is planned for Phase 4. This issue tracks aligning that implementation with the upstream Fiber DA spec as it stabilizes.
## Requirements
- Implement `FiberFetcher` satisfying the `DataFetcher` interface:
- `GetHeader(ctx, height)`
- `GetBlobs(ctx, height, namespace)`
- `GetNetworkHead(ctx)`
- `SubscribeHeaders(ctx)`
- `Close()`
- Conform to the data types and wire format defined in [fibre-da-spec](https://github.com/celestiaorg/fibre-da-spec)
- Add config support for `type = "fiber"` in `[data_source]`
- Integration tests against a local Fiber node (or mock)
## Blocked on
- Fiber DA spec reaching a stable/tagged version
- Fiber network availability for testing
## References
- Spec: https://github.com/celestiaorg/fibre-da-spec
- Design doc: `test_plan.md` — Phase 4, `DataFetcher` interface
ref https://github.com/celestiaorg/celestia-node/issues/4777
Beitragsleitfaden
Rechercherichtung
Beginne mit dem DataFetcher-Interface in pkg/fetch/fetcher.go, der geplanten Implementierung in pkg/fetch/fiber.go und Phase 4 von test_plan.md. Lies die vorgelagerte fibre-da-spec und ermittle die erforderlichen Datentypen und das Wire-Format, bevor du die fünf Methoden und die fiber data_source-Konfiguration implementierst. Als abgeschlossen gilt die Arbeit, wenn die Implementierung der Spezifikation entspricht und die Integrationstests gegen einen lokalen Fiber-Knoten oder Mock ausgeführt werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- go
- Bereich
- backend, networking
- Issue-Typ
- Feature
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 25/100