Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .github/workflows/golangci-lint.yml
Original file line number Diff line number Diff line change
Expand Up @@ -48,16 +48,18 @@
version=$(grep '^golangci-lint ' .tool-versions | awk '{print $2}')
echo "version=${version}" | tee -a "$GITHUB_OUTPUT"

- name: Run golangci-lint (integration-tests)
- name: Run golangci-lint (relay)
if: ${{ always() && !contains(join(github.event.pull_request.labels.*.name, ' '), 'allow-lint-issues') }}
uses: smartcontractkit/.github/actions/ci-lint-go@ci-lint-go/3.0.0

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'golangci_lint' step
Uses Step
uses 'smartcontractkit/.github/actions/ci-lint-go' with ref 'ci-lint-go/3.0.0', not a pinned commit hash
with:
checkout-repo: false
golangci-lint-version: v${{ steps.get-version.outputs.version }}
go-directory: pkg
golangci-lint-args:
--output.checkstyle.path=${{ github.workspace }}/pkg/golangci-lint-report.xml --output.text.path=stdout
- name: Upload report
if: always()
uses: actions/upload-artifact@v4
with:
name: golangci-lint-relay-report
path: pkg/golangci-lint-report.xml
path: ${{ github.workspace }}/pkg/golangci-lint-report.xml
3 changes: 3 additions & 0 deletions .mockery.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ packages:
NodeSuccess:
ReportObservations:
SlotHeight:
github.com/smartcontractkit/chainlink-solana/pkg/solana:
interfaces:
Chain:
github.com/smartcontractkit/chainlink-solana/pkg/solana/client:
interfaces:
ReaderWriter:
Expand Down
4 changes: 3 additions & 1 deletion go.md
Original file line number Diff line number Diff line change
Expand Up @@ -209,14 +209,15 @@ flowchart LR
click chainlink-testing-framework/seth href "https://github.com/smartcontractkit/chainlink-testing-framework"
chainlink-testing-framework/wasp
click chainlink-testing-framework/wasp href "https://github.com/smartcontractkit/chainlink-testing-framework"
chainlink-ton --> chainlink-deployments-framework
chainlink-ton --> chainlink-ccip
click chainlink-ton href "https://github.com/smartcontractkit/chainlink-ton"
chainlink-ton/deployment
click chainlink-ton/deployment href "https://github.com/smartcontractkit/chainlink-ton"
chainlink-tron/relayer --> chainlink-common
click chainlink-tron/relayer href "https://github.com/smartcontractkit/chainlink-tron"
chainlink/deployment --> ccip-contract-examples/chains/evm
chainlink/deployment --> chainlink-ccip/deployment
chainlink/deployment --> chainlink-deployments-framework
chainlink/deployment --> chainlink-sui/deployment
chainlink/deployment --> chainlink-testing-framework/lib
chainlink/deployment --> chainlink-ton/deployment
Expand All @@ -234,6 +235,7 @@ flowchart LR
chainlink/v2 --> chainlink-feeds
chainlink/v2 --> chainlink-protos/orchestrator
chainlink/v2 --> chainlink-solana
chainlink/v2 --> chainlink-sui
chainlink/v2 --> chainlink-ton
chainlink/v2 --> cre-sdk-go
chainlink/v2 --> cre-sdk-go/capabilities/networking/http
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ require (
github.com/smartcontractkit/chainlink-ccip v0.1.1-solana.0.20250930202440-88c08e65d960
github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250912190424-fd2e35d7deb5
github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20250912190424-fd2e35d7deb5
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251107181740-8b842a2f1192
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251121153303-e81270604e49
github.com/smartcontractkit/chainlink-common/pkg/monitoring v0.0.0-20250415235644-8703639403c7
github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20250818175541-3389ac08a563
github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20250717121125-2350c82883e2
Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -513,8 +513,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250912190424-f
github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250912190424-fd2e35d7deb5/go.mod h1:Ve1xD71bl193YIZQEoJMmBqLGQJdNs29bwbuObwvbhQ=
github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20250912190424-fd2e35d7deb5 h1:Z4t2ZY+ZyGWxtcXvPr11y4o3CGqhg3frJB5jXkCSvWA=
github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20250912190424-fd2e35d7deb5/go.mod h1:xtZNi6pOKdC3sLvokDvXOhgHzT+cyBqH/gWwvxTxqrg=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251107181740-8b842a2f1192 h1:0OjRg/+Vl4CjBrFllKd0b6oDApWGdjTEajBBCu6QjrM=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251107181740-8b842a2f1192/go.mod h1:AgiJcndCiWnUOVmCBX/K3PdST/fvrY1uCqSF65j960w=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251121153303-e81270604e49 h1:rUsFMwAN/+xsgABxkt6x+MW3di+5i4TwLuTpNw2aoMY=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251121153303-e81270604e49/go.mod h1:RTN7cUG1m9cl0AS4V3QhDA2pDJ2pg2QbrAAqZR1jiRc=
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10 h1:FJAFgXS9oqASnkS03RE1HQwYQQxrO4l46O5JSzxqLgg=
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10/go.mod h1:oiDa54M0FwxevWwyAX773lwdWvFYYlYHHQV1LQ5HpWY=
github.com/smartcontractkit/chainlink-common/pkg/monitoring v0.0.0-20250415235644-8703639403c7 h1:9wh1G+WbXwPVqf0cfSRSgwIcaXTQgvYezylEAfwmrbw=
Expand Down
16 changes: 8 additions & 8 deletions integration-tests/go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,15 @@ require (
github.com/pelletier/go-toml/v2 v2.2.4
github.com/rs/zerolog v1.34.0
github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250912190424-fd2e35d7deb5
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251107181740-8b842a2f1192
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251121153303-e81270604e49
github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20251021010742-3f8d3dba17d8
github.com/smartcontractkit/chainlink-solana v1.1.2-0.20251105160343-b77843a1daf4
github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.6
github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.7
github.com/smartcontractkit/chainlink-testing-framework/parrot v0.6.2
github.com/smartcontractkit/chainlink-testing-framework/seth v1.51.2
github.com/smartcontractkit/chainlink/deployment v0.0.0-20251110100253-b7d72c7c00fb
github.com/smartcontractkit/chainlink/integration-tests v0.0.0-20251110100253-b7d72c7c00fb
github.com/smartcontractkit/chainlink/v2 v2.29.1-cre-beta.0.0.20251110100253-b7d72c7c00fb
github.com/smartcontractkit/chainlink/deployment v0.0.0-20251114183516-c3b1a4a2be75
github.com/smartcontractkit/chainlink/integration-tests v0.0.0-20251114183516-c3b1a4a2be75
github.com/smartcontractkit/chainlink/v2 v2.29.1-cre-beta.0.0.20251114183516-c3b1a4a2be75
github.com/smartcontractkit/libocr v0.0.0-20251031190958-7324c200a6b0
github.com/stretchr/testify v1.11.1
github.com/testcontainers/testcontainers-go v0.39.0
Expand Down Expand Up @@ -127,7 +127,7 @@ require (
github.com/coder/websocket v1.8.14 // indirect
github.com/cometbft/cometbft v0.38.17 // indirect
github.com/cometbft/cometbft-db v1.0.1 // indirect
github.com/consensys/gnark-crypto v0.18.0 // indirect
github.com/consensys/gnark-crypto v0.18.1 // indirect
github.com/containerd/errdefs v1.0.0 // indirect
github.com/containerd/errdefs/pkg v0.3.0 // indirect
github.com/containerd/log v0.1.0 // indirect
Expand Down Expand Up @@ -361,7 +361,7 @@ require (
github.com/sigurn/crc16 v0.0.0-20211026045750-20ab5afb07e3 // indirect
github.com/sirupsen/logrus v1.9.3 // indirect
github.com/slack-go/slack v0.15.0 // indirect
github.com/smartcontractkit/chain-selectors v1.0.78 // indirect
github.com/smartcontractkit/chain-selectors v1.0.82 // indirect
github.com/smartcontractkit/chainlink-aptos v0.0.0-20251027153600-2b072ff3618e // indirect
github.com/smartcontractkit/chainlink-automation v0.8.1 // indirect
github.com/smartcontractkit/chainlink-ccip v0.1.1-solana.0.20251105200616-e158f436aa95 // indirect
Expand All @@ -385,7 +385,7 @@ require (
github.com/smartcontractkit/chainlink-protos/svr v1.1.0 // indirect
github.com/smartcontractkit/chainlink-protos/workflows/go v0.0.0-20251025021331-aa7746850cc4 // indirect
github.com/smartcontractkit/chainlink-sui v0.0.0-20251105220250-f8d7f06e3b8d // indirect
github.com/smartcontractkit/chainlink-ton v0.0.0-20251031142050-8d1f83814966 // indirect
github.com/smartcontractkit/chainlink-ton v0.0.0-20251113211653-082bd18d77bb // indirect
github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20251014143056-a0c6328c91e9 // indirect
github.com/smartcontractkit/freeport v0.1.3-0.20250716200817-cb5dfd0e369e // indirect
github.com/smartcontractkit/grpc-proxy v0.0.0-20240830132753-a7e17fec5ab7 // indirect
Expand Down
32 changes: 16 additions & 16 deletions integration-tests/go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -306,8 +306,8 @@ github.com/cometbft/cometbft-db v1.0.1 h1:SylKuLseMLQKw3+i8y8KozZyJcQSL98qEe2CGM
github.com/cometbft/cometbft-db v1.0.1/go.mod h1:EBrFs1GDRiTqrWXYi4v90Awf/gcdD5ExzdPbg4X8+mk=
github.com/confluentinc/confluent-kafka-go/v2 v2.3.0 h1:icCHutJouWlQREayFwCc7lxDAhws08td+W3/gdqgZts=
github.com/confluentinc/confluent-kafka-go/v2 v2.3.0/go.mod h1:/VTy8iEpe6mD9pkCH5BhijlUl8ulUXymKv1Qig5Rgb8=
github.com/consensys/gnark-crypto v0.18.0 h1:vIye/FqI50VeAr0B3dx+YjeIvmc3LWz4yEfbWBpTUf0=
github.com/consensys/gnark-crypto v0.18.0/go.mod h1:L3mXGFTe1ZN+RSJ+CLjUt9x7PNdx8ubaYfDROyp2Z8c=
github.com/consensys/gnark-crypto v0.18.1 h1:RyLV6UhPRoYYzaFnPQA4qK3DyuDgkTgskDdoGqFt3fI=
github.com/consensys/gnark-crypto v0.18.1/go.mod h1:L3mXGFTe1ZN+RSJ+CLjUt9x7PNdx8ubaYfDROyp2Z8c=
github.com/containerd/continuity v0.4.5 h1:ZRoN1sXq9u7V6QoHMcVWGhOwDFqZ4B9i5H6un1Wh0x4=
github.com/containerd/continuity v0.4.5/go.mod h1:/lNJvtJKUQStBzpVQ1+rasXO1LAWtUQssk28EZvJ3nE=
github.com/containerd/errdefs v1.0.0 h1:tg5yIfIlQIrxYtu9ajqY42W3lpS19XqdxRQeEwYG8PI=
Expand Down Expand Up @@ -1250,8 +1250,8 @@ github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
github.com/slack-go/slack v0.15.0 h1:LE2lj2y9vqqiOf+qIIy0GvEoxgF1N5yLGZffmEZykt0=
github.com/slack-go/slack v0.15.0/go.mod h1:hlGi5oXA+Gt+yWTPP0plCdRKmjsDxecdHxYQdlMQKOw=
github.com/smartcontractkit/chain-selectors v1.0.78 h1:TCnekPLzCux1lKsrygX8+n1iMO1N330GrykbCYiR0FM=
github.com/smartcontractkit/chain-selectors v1.0.78/go.mod h1:xsKM0aN3YGcQKTPRPDDtPx2l4mlTN1Djmg0VVXV40b8=
github.com/smartcontractkit/chain-selectors v1.0.82 h1:YCBn0HquAhH2jNVai32zQDFyC3XkrMHrBqWhH8W1hzo=
github.com/smartcontractkit/chain-selectors v1.0.82/go.mod h1:xsKM0aN3YGcQKTPRPDDtPx2l4mlTN1Djmg0VVXV40b8=
github.com/smartcontractkit/chainlink-aptos v0.0.0-20251027153600-2b072ff3618e h1:HIgcJV/CyhBntE5gK/8WitVzqD0k8PkuYj+lhfa6B6U=
github.com/smartcontractkit/chainlink-aptos v0.0.0-20251027153600-2b072ff3618e/go.mod h1:iteU0WORHkArACVh/HoY/1bipV4TcNcJdTmom9uIT0E=
github.com/smartcontractkit/chainlink-automation v0.8.1 h1:sTc9LKpBvcKPc1JDYAmgBc2xpDKBco/Q4h4ydl6+UUU=
Expand All @@ -1262,8 +1262,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250912190424-f
github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20250912190424-fd2e35d7deb5/go.mod h1:Ve1xD71bl193YIZQEoJMmBqLGQJdNs29bwbuObwvbhQ=
github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20250912190424-fd2e35d7deb5 h1:Z4t2ZY+ZyGWxtcXvPr11y4o3CGqhg3frJB5jXkCSvWA=
github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20250912190424-fd2e35d7deb5/go.mod h1:xtZNi6pOKdC3sLvokDvXOhgHzT+cyBqH/gWwvxTxqrg=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251107181740-8b842a2f1192 h1:0OjRg/+Vl4CjBrFllKd0b6oDApWGdjTEajBBCu6QjrM=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251107181740-8b842a2f1192/go.mod h1:AgiJcndCiWnUOVmCBX/K3PdST/fvrY1uCqSF65j960w=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251121153303-e81270604e49 h1:rUsFMwAN/+xsgABxkt6x+MW3di+5i4TwLuTpNw2aoMY=
github.com/smartcontractkit/chainlink-common v0.9.6-0.20251121153303-e81270604e49/go.mod h1:RTN7cUG1m9cl0AS4V3QhDA2pDJ2pg2QbrAAqZR1jiRc=
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10 h1:FJAFgXS9oqASnkS03RE1HQwYQQxrO4l46O5JSzxqLgg=
github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.10/go.mod h1:oiDa54M0FwxevWwyAX773lwdWvFYYlYHHQV1LQ5HpWY=
github.com/smartcontractkit/chainlink-common/pkg/monitoring v0.0.0-20250415235644-8703639403c7 h1:9wh1G+WbXwPVqf0cfSRSgwIcaXTQgvYezylEAfwmrbw=
Expand Down Expand Up @@ -1310,24 +1310,24 @@ github.com/smartcontractkit/chainlink-sui v0.0.0-20251105220250-f8d7f06e3b8d h1:
github.com/smartcontractkit/chainlink-sui v0.0.0-20251105220250-f8d7f06e3b8d/go.mod h1:VlyZhVw+a93Sk8rVHOIH6tpiXrMzuWLZrjs1eTIExW8=
github.com/smartcontractkit/chainlink-testing-framework/framework v0.11.7 h1:jVlRG9GTpDGYtP0iabxHZW4s3pXdpN4/lTgZEdE64P4=
github.com/smartcontractkit/chainlink-testing-framework/framework v0.11.7/go.mod h1:BTUmWJGbOQtMdDW8cy4fu0wLoj8tKFQiLR7SE+OyTXU=
github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.6 h1:t1db5+sEbmw/26xQVDqyeY448V4RW8xtAl4eNGpd0uw=
github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.6/go.mod h1:dgwtcefGr+0i+C2S6V/Xgntzm7E5CPxXMyi2OnQvnHI=
github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.7 h1:6dmdg2tppPKEFuEwBcT1kSEHj5Uj1xrWnKqX0wZg7zo=
github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.7/go.mod h1:dgwtcefGr+0i+C2S6V/Xgntzm7E5CPxXMyi2OnQvnHI=
github.com/smartcontractkit/chainlink-testing-framework/parrot v0.6.2 h1:cWUHB6QETyKbmh0B988f5AKIKb3aBDWugfrZ04jAUUY=
github.com/smartcontractkit/chainlink-testing-framework/parrot v0.6.2/go.mod h1:Z4K5VJLjsfqIIaBcZ1Sfccxu0xsCxBjPa6zF+5gtQaM=
github.com/smartcontractkit/chainlink-testing-framework/seth v1.51.2 h1:ZJ/8Jx6Be5//TyjPi1pS1uotnmcYq5vVkSyISIymSj8=
github.com/smartcontractkit/chainlink-testing-framework/seth v1.51.2/go.mod h1:kHYJnZUqiPF7/xN5273prV+srrLJkS77GbBXHLKQpx0=
github.com/smartcontractkit/chainlink-ton v0.0.0-20251031142050-8d1f83814966 h1:728FKEOr8E3DhUsD+/3IY6+tU4tEugN4cnTEfWGZBDQ=
github.com/smartcontractkit/chainlink-ton v0.0.0-20251031142050-8d1f83814966/go.mod h1:DWz7Zysn/QBf6dnzFYt4UsDXbclglPUum8FnCJQvleg=
github.com/smartcontractkit/chainlink-ton v0.0.0-20251113211653-082bd18d77bb h1:qwWAfnePapmspQQnSI3Jed9b32a9uNc5ohV/D2gCg1Q=
github.com/smartcontractkit/chainlink-ton v0.0.0-20251113211653-082bd18d77bb/go.mod h1:rxekiaWnJnFFfklae1OvO6T7xHJtsEldDvW/e5+b/qg=
github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20251014143056-a0c6328c91e9 h1:7Ut0g+Pdm+gcu2J/Xv8OpQOVf7uLGErMX8yhC4b4tIA=
github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20251014143056-a0c6328c91e9/go.mod h1:h9hMs6K4hT1+mjYnJD3/SW1o7yC/sKjNi0Qh8hLfiCE=
github.com/smartcontractkit/chainlink-tron/relayer/gotron-sdk v0.0.5-0.20251014124537-af6b1684fe15 h1:idp/RjsFznR48JWGfZICsrpcl9JTrnMzoUNVz8MhQMI=
github.com/smartcontractkit/chainlink-tron/relayer/gotron-sdk v0.0.5-0.20251014124537-af6b1684fe15/go.mod h1:ea1LESxlSSOgc2zZBqf1RTkXTMthHaspdqUHd7W4lF0=
github.com/smartcontractkit/chainlink/deployment v0.0.0-20251110100253-b7d72c7c00fb h1:xthE9DlLwB7BxFh0MuQ4MMG22jAhPVqKKCDZuLb0lQs=
github.com/smartcontractkit/chainlink/deployment v0.0.0-20251110100253-b7d72c7c00fb/go.mod h1:obIyYA3O06rspY6X6fyKgT1XUMPU5kpbqw7TeZaKB08=
github.com/smartcontractkit/chainlink/integration-tests v0.0.0-20251110100253-b7d72c7c00fb h1:WuWP9CH0x2DCWlWk4kfb78o1pfJKnBwAPT6c81Bb64k=
github.com/smartcontractkit/chainlink/integration-tests v0.0.0-20251110100253-b7d72c7c00fb/go.mod h1:nkNNvp9wBQuhDUhLXZKkJwGdyGtzWCMWXa0YGqwkRNU=
github.com/smartcontractkit/chainlink/v2 v2.29.1-cre-beta.0.0.20251110100253-b7d72c7c00fb h1:BY9AB4LXxsaa4EK+29XvW+HHJC1sUwPsNJfz9fB0qPc=
github.com/smartcontractkit/chainlink/v2 v2.29.1-cre-beta.0.0.20251110100253-b7d72c7c00fb/go.mod h1:8xBVDI1SCju2kvo6KEHWMg/MMS2noLnJqG+VcG7nsg8=
github.com/smartcontractkit/chainlink/deployment v0.0.0-20251114183516-c3b1a4a2be75 h1:bGe77meYVJ6fGDiCsA7jiXlv0JPMGoQbN8lDbvHn3b4=
github.com/smartcontractkit/chainlink/deployment v0.0.0-20251114183516-c3b1a4a2be75/go.mod h1:B/EIi+gAUvnZMjFbkpWDUrvAoW1co/XAHstR1TSUwao=
github.com/smartcontractkit/chainlink/integration-tests v0.0.0-20251114183516-c3b1a4a2be75 h1:WQ02gWbKbEGAm8wIHx1J90gql+jaFuEj1pPxwVMw6dA=
github.com/smartcontractkit/chainlink/integration-tests v0.0.0-20251114183516-c3b1a4a2be75/go.mod h1:pV0G5sT/qNVW5ZlLTFcEniXwY31rnv3BH4RPrzgR418=
github.com/smartcontractkit/chainlink/v2 v2.29.1-cre-beta.0.0.20251114183516-c3b1a4a2be75 h1:E/7iAl3sZs+w+N8BJSuWVuRKJPWGvnNzYNEiD5PZICs=
github.com/smartcontractkit/chainlink/v2 v2.29.1-cre-beta.0.0.20251114183516-c3b1a4a2be75/go.mod h1:qm0GVo6moxAA404yF7eUW5LIOvqs2p/fMke3eLRF7ME=
github.com/smartcontractkit/cre-sdk-go v0.7.1-0.20250919133015-2df149f34a81 h1:CfnjzJvn3iX93PzdGucyGJmgv/KDXv8DfKcLw/mix24=
github.com/smartcontractkit/cre-sdk-go v0.7.1-0.20250919133015-2df149f34a81/go.mod h1:CQY8hCISjctPmt8ViDVgFm4vMGLs5fYI198QhkBS++Y=
github.com/smartcontractkit/freeport v0.1.3-0.20250716200817-cb5dfd0e369e h1:Hv9Mww35LrufCdM9wtS9yVi/rEWGI1UnjHbcKKU0nVY=
Expand Down
1 change: 1 addition & 0 deletions pkg/solana/chain.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ type LogPoller interface {
HasFilter(context.Context, string) bool
RegisterFilter(ctx context.Context, filter logpollertypes.Filter) error
UnregisterFilter(ctx context.Context, name string) error
GetLatestBlock(ctx context.Context) (int64, error)
FilteredLogs(context.Context, []query.Expression, query.LimitAndSort, string) ([]logpollertypes.Log, error)
Replay(fromBlock int64)
}
Expand Down
22 changes: 22 additions & 0 deletions pkg/solana/client/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ type ReaderWriter interface {
type Reader interface {
AccountReader
Balance(ctx context.Context, addr solana.PublicKey) (uint64, error)
BalanceWithCommitment(ctx context.Context, addr solana.PublicKey, commitment rpc.CommitmentType) (uint64, error)
SlotHeight(ctx context.Context) (uint64, error)
LatestBlockhash(ctx context.Context) (*rpc.GetLatestBlockhashResult, error)
ChainID(ctx context.Context) (mn.StringID, error)
Expand Down Expand Up @@ -137,6 +138,27 @@ func (c *Client) Balance(ctx context.Context, addr solana.PublicKey) (bal uint64
return res.Value, err
}

func (c *Client) BalanceWithCommitment(ctx context.Context, addr solana.PublicKey, commitment rpc.CommitmentType) (bal uint64, err error) {
done := c.latency("balance")
defer func() { done(err) }()

ctx, cancel := context.WithTimeout(ctx, c.contextDuration)
defer cancel()

v, err, _ := c.requestGroup.Do(fmt.Sprintf("GetBalance(%s)", addr.String()), func() (interface{}, error) {
return c.rpc.GetBalance(ctx, addr, commitment)
})

if err != nil {
return 0, err
}
res, ok := v.(*rpc.GetBalanceResult)
if !ok {
return 0, fmt.Errorf("result is unexpected type %T, expected %T", v, &rpc.GetBalanceResult{})
}
return res.Value, err
}

func (c *Client) SlotHeight(ctx context.Context) (uint64, error) {
return c.SlotHeightWithCommitment(ctx, rpc.CommitmentProcessed) // get the latest slot height
}
Expand Down
Loading
Loading