Skip to content

[Feat] add soroban chain type#80

Open
RogerKSI wants to merge 14 commits intomainfrom
add-soroban-chain
Open

[Feat] add soroban chain type#80
RogerKSI wants to merge 14 commits intomainfrom
add-soroban-chain

Conversation

@RogerKSI
Copy link
Copy Markdown
Member

Fixed: #XXXX

Implementation details

Please ensure the following requirements are met before submitting a pull request:

  • The pull request is targeted against the correct target branch
  • The pull request is linked to an issue with appropriate discussion and an accepted design OR is linked to a spec that describes the work.
  • The pull request includes a description of the implementation/work done in detail.
  • The pull request includes any and all appropriate unit/integration tests
  • You have added a relevant changelog entry to CHANGELOG_UNRELEASED.md
  • You have re-reviewed the files affected by the pull request (e.g. using the Files changed tab in the Github PR explorer)

@RogerKSI RogerKSI requested review from Marca23 and tanut32039 March 26, 2026 09:24
Copy link
Copy Markdown

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

Adds Soroban (Stellar) as a supported destination chain type in the relayer, wiring up a Soroban chain provider, remote-only wallet signing via FKMS, and DB/proto updates to carry the new chain type end-to-end.

Changes:

  • Introduces ChainTypeSoroban plus a new Soroban chain provider (client/config/provider) and Soroban remote-only wallet signer.
  • Extends FKMS protobuf + generated stubs/mocks with SignSoroban RPC and SOROBAN chain type.
  • Updates storage/config/db migrations to recognize soroban and pulls in Stellar SDK + dependency updates.

Reviewed changes

Copilot reviewed 16 out of 17 changed files in this pull request and generated 8 comments.

Show a summary per file
File Description
relayer/wallet/soroban/wallet.go Adds Soroban wallet constructor using remote-only adapter.
relayer/wallet/soroban/types.go Defines Soroban signer payload model used for remote signing.
relayer/wallet/soroban/remote_signer.go Implements FKMS-backed Soroban remote signer calling SignSoroban.
relayer/store/filesystem.go Wires Soroban wallet creation into filesystem store factory.
relayer/db/migrations/sqlite/00001_create_transactions.sql Expands SQLite chain_type CHECK constraint to include soroban (and others).
relayer/db/migrations/postgres/00005_add_soroban_chain_type.sql Adds soroban value to Postgres chain_type enum.
relayer/config/config.go Enables parsing Soroban chain provider configs.
relayer/chains/types/chain_type.go Adds Soroban to chain type enum + string mappings.
relayer/chains/soroban/config.go Defines Soroban chain provider config fields.
relayer/chains/soroban/client.go Implements Horizon-based client pool, balance/tx queries, broadcast.
relayer/chains/soroban/provider.go Implements Soroban packet relay flow, metrics, DB persistence.
proto/fkms/v1/signer.proto Adds Soroban signing RPC + payload messages + enum value.
proto/fkms/v1/signer.pb.go Updates generated protobuf Go types for Soroban additions.
proto/fkms/v1/signer_grpc.pb.go Updates generated gRPC client/server interfaces for SignSoroban.
internal/relayertest/mocks/signer_grpc.go Extends gomock stubs with SignSoroban.
go.mod Adds Stellar SDK, bumps toolchain + dependency versions.
go.sum Records new/updated module checksums.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread relayer/chains/soroban/config.go
Comment thread relayer/chains/soroban/client.go
Comment thread relayer/chains/soroban/client.go Outdated
Comment thread relayer/chains/soroban/provider.go
Comment thread relayer/db/migrations/sqlite/00001_create_transactions.sql
Comment thread go.mod Outdated
Comment thread relayer/chains/soroban/client.go
Comment thread relayer/chains/soroban/provider.go Outdated
Copy link
Copy Markdown

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

Copilot reviewed 16 out of 17 changed files in this pull request and generated 4 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread relayer/chains/soroban/provider.go Outdated
Comment thread relayer/chains/soroban/provider.go
Comment thread relayer/chains/soroban/provider.go Outdated
Comment thread relayer/chains/soroban/provider.go
Copy link
Copy Markdown

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

Copilot reviewed 19 out of 20 changed files in this pull request and generated 5 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread relayer/chains/soroban/provider.go
Comment thread relayer/chains/soroban/provider.go
Comment thread relayer/chains/soroban/provider.go
Comment thread relayer/chains/soroban/provider.go
Comment thread relayer/chains/soroban/client.go
Tanut Lertwarachai added 2 commits April 3, 2026 17:18
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.

2 participants