Skip to content

aptos: add ledger-version read support and OCR3 transmitter decode compatibility (local CRE minimal)#1885

Open
cawthorne wants to merge 20 commits intomainfrom
feature/aptos-local-cre-minimal
Open

aptos: add ledger-version read support and OCR3 transmitter decode compatibility (local CRE minimal)#1885
cawthorne wants to merge 20 commits intomainfrom
feature/aptos-local-cre-minimal

Conversation

@cawthorne
Copy link
Contributor

@cawthorne cawthorne commented Mar 10, 2026

Summary

This PR contains the minimal chainlink-common changes required for Aptos local CRE read workflow support.

1) Aptos read path: ledger-version support

  • Adds LedgerVersion RPC to the Aptos loop service.
  • Adds LedgerVersionRequest / LedgerVersionReply protobuf messages.
  • Adds optional ledger_version to ViewRequest.
  • Wires these fields/methods through:
    • Aptos proto/gRPC stubs
    • loop relayer client/server adapters
    • relayerset adapters
    • types.AptosService unimplemented stub
    • generated AptosService mocks
  • Adds/updates relayerset tests for LedgerVersion and View with ledger_version.

2) Capability registry compatibility for OCR3 transmitters

  • Updates transmitter decode logic in capability config conversion to accept:
    • hex-encoded values (with or without 0x)
    • raw byte-form values (backward-compatible path)
  • This avoids decode failures when transmitter account bytes are not plain hex strings.

3) Generated artifacts

  • Regenerated Aptos protobuf outputs and Aptos service mocks to match CI generation.

Testing

  • go test ./pkg/chains/aptos
  • go test ./pkg/types/...
  • go test ./pkg/loop/internal/core/services/capability ./pkg/loop/internal/relayer ./pkg/loop/internal/relayerset

@github-actions
Copy link

github-actions bot commented Mar 10, 2026

⚠️ API Diff Results - github.com/smartcontractkit/chainlink-common

⚠️ Breaking Changes (3)

pkg/chains/aptos.AptosClient (1)
  • LedgerVersion — ➕ Added
pkg/types/chains/aptos.Client (2)
  • LedgerVersion — ➕ Added

  • LedgerVersion — ➕ Added

✅ Compatible Changes (15)

pkg/capabilities/v2/chain-capabilities/aptos.(*ViewRequest) (1)
  • GetLedgerVersion — ➕ Added
pkg/capabilities/v2/chain-capabilities/aptos.ViewRequest (1)
  • LedgerVersion — ➕ Added
pkg/chains/aptos (3)
  • Aptos_LedgerVersion_FullMethodName — ➕ Added

  • LedgerVersionReply — ➕ Added

  • LedgerVersionRequest — ➕ Added

pkg/chains/aptos.(*ViewRequest) (1)
  • GetLedgerVersion — ➕ Added
pkg/chains/aptos.AptosServer (1)
  • LedgerVersion — ➕ Added
pkg/chains/aptos.UnimplementedAptosServer (1)
  • LedgerVersion — ➕ Added
pkg/chains/aptos.ViewRequest (1)
  • LedgerVersion — ➕ Added
pkg/types.(*UnimplementedAptosService) (1)
  • LedgerVersion — ➕ Added
pkg/types/chains/aptos (1)
  • ViewPayloadFromCapability — ➕ Added
pkg/types/chains/aptos.ViewRequest (1)
  • LedgerVersion — ➕ Added
pkg/types/mocks (1)
  • AptosService_LedgerVersion_Call — ➕ Added
pkg/types/mocks.(*AptosService) (1)
  • LedgerVersion — ➕ Added
pkg/types/mocks.(*AptosService_Expecter) (1)
  • LedgerVersion — ➕ Added

📄 View full apidiff report

ilija42
ilija42 previously approved these changes Mar 10, 2026
@cawthorne cawthorne marked this pull request as ready for review March 11, 2026 19:14
Copy link
Contributor

@yashnevatia yashnevatia left a comment

Choose a reason for hiding this comment

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

Can you help point chainlink-protos to capabilities-development branch, once this gets merged in https://github.com/smartcontractkit/chainlink-protos/pull/312/changes

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.

4 participants