Skip to content

Support ABCI app connections through proxy #744

@Ferret-san

Description

@Ferret-san

Developers that wish to leverage Rollkit's code for sequencing and posting data to a DA layer, but that wish to use an execution environment that is not written in Go, will have to create their own proxy to allow these components to connect.

A solution to this problem is to replace the use of abciclient.Client with proxy.AppConns, similar to how tendermint-core does it. This would allow developers to integrate execution environments with Rollkit through socket connections or gRPC.

The following files need to be modified in order to replace abciclient.Client and start supporting proxy connections:

  • NewNode(), as well as newFullNode and newLightNode, need to change the abciclient.Clientparameter for a parameter of typeproxy.ClientCreator`, which supports both built in ABCI apps as well as proxy connectoons.
  • NodeConfig should include a field proxyApp of type proxy.AppConns

Other components such as manager, mempool, and executor, might not need changes, since we can get the required types through proxy.ClientCreator

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions