diff --git a/.github/AGENTS.md b/.github/AGENTS.md index 2ee2e4aaa91..a8e76126da8 100644 --- a/.github/AGENTS.md +++ b/.github/AGENTS.md @@ -6,6 +6,7 @@ GitHub Actions in the Chainlink Go monorepo. - Prefer runs-on runners when ubuntu-latest is insufficient. - Minimize YAML and shell in workflows. - Resolve smartcontractkit/.github from a local clone. Ask the user for the path if you cannot find it. +- Use `echo "key=value" | tee -a "$GITHUB_OUTPUT"` instead of `echo "key=value" >> "${GITHUB_OUTPUT}"` diff --git a/.github/workflows/ccip-system-tests.yaml b/.github/workflows/ccip-system-tests.yaml index 11dc1805940..f33791d7a76 100644 --- a/.github/workflows/ccip-system-tests.yaml +++ b/.github/workflows/ccip-system-tests.yaml @@ -172,15 +172,10 @@ jobs: - name: Set up Go id: setup-go - uses: smartcontractkit/.github/actions/ctf-setup-go@fa1d48a33e24f9b3b9f8c52e99a578a4597cb2a5 # v0.4.0 + uses: actions/setup-go@v7 with: - go_mod_path: integration-tests/go.mod - cache_key_id: integration-tests-v1 - cache_builds: true - cache_restore_only: "true" - should_tidy: false - no_cache: false - gati_token: ${{ steps.github-token.outputs.access-token }} + go-version-file: integration-tests/go.mod + cache: false # Using pre-compiled binaries, only need go setup for gotestsum - name: Restore Pre-Compiled Test Binaries from S3 Cache uses: actions/cache/restore@v6 diff --git a/.github/workflows/ci-core.yml b/.github/workflows/ci-core.yml index ee3b01974e6..b252269f1f6 100644 --- a/.github/workflows/ci-core.yml +++ b/.github/workflows/ci-core.yml @@ -346,7 +346,7 @@ jobs: id: wasm-key shell: bash run: | - echo "key=${{ runner.os }}-${{ runner.arch }}-wasmcache-${{ hashFiles('go.mod', 'go.sum', 'core/internal/testutils/wasmtest/**', 'core/capabilities/compute/**', 'core/services/workflows/**') }}" >> "$GITHUB_OUTPUT" + echo "key=${{ runner.os }}-${{ runner.arch }}-wasmcache-${{ hashFiles('go.mod', 'go.sum', 'core/capabilities/compute/**', 'core/services/workflows/**', 'system-tests/lib/**') }}" | tee -a "$GITHUB_OUTPUT" - name: Restore WASM test binaries cache if: ${{ matrix.type.should-run == 'true' }} @@ -592,7 +592,7 @@ jobs: # Not a scheduled event - no frequencies to set. They default to false. exit 0 fi - + curent_day=$(date +%u) if [ "$curent_day" -ge 6 ]; then # Weekend diff --git a/.github/workflows/cre-mixed-env-tests.yaml b/.github/workflows/cre-mixed-env-tests.yaml index e7f5a52f900..37997808735 100644 --- a/.github/workflows/cre-mixed-env-tests.yaml +++ b/.github/workflows/cre-mixed-env-tests.yaml @@ -173,14 +173,14 @@ jobs: persist-credentials: false - name: Set up Go - id: setup-go - uses: smartcontractkit/.github/actions/ctf-setup-go@fa1d48a33e24f9b3b9f8c52e99a578a4597cb2a5 # v0.4.0 + + uses: actions/setup-go@v7 with: - go_mod_path: system-tests/tests/go.mod + go-version-file: system-tests/tests/go.mod # No Go build/restore: mixed-env runs the pre-compiled cre-smoke.test binary # (restored below), and the non-determinism gate reuses that same binary — so # nothing is compiled here and cache restore would only waste ~30-60s per run. - no_cache: true + cache: false - name: Restore Pre-Compiled Test Binaries from S3 Cache uses: actions/cache/restore@v6 diff --git a/.github/workflows/cre-regression-system-tests.yaml b/.github/workflows/cre-regression-system-tests.yaml index de6ed8b2526..47da3a974ea 100644 --- a/.github/workflows/cre-regression-system-tests.yaml +++ b/.github/workflows/cre-regression-system-tests.yaml @@ -158,11 +158,10 @@ jobs: persist-credentials: false - name: Set up Go - id: setup-go - uses: smartcontractkit/.github/actions/ctf-setup-go@fa1d48a33e24f9b3b9f8c52e99a578a4597cb2a5 # v0.4.0 + uses: actions/setup-go@v7 with: - go_mod_path: system-tests/tests/go.mod - no_cache: true + go-version-file: system-tests/tests/go.mod + cache: false - name: Restore Pre-Compiled Test Binaries from S3 Cache uses: actions/cache/restore@v6 @@ -268,7 +267,7 @@ jobs: exit_code="$?" if [ "$exit_code" -eq 0 ]; then - echo "tests_result=✅ Tests passed" >> "$GITHUB_OUTPUT" + echo "tests_result=✅ Tests passed" | tee -a "$GITHUB_OUTPUT" fi echo "⚠️⚠️⚠️ Add 'skip-e2e-regression' label to skip this step if necessary ⚠️⚠️⚠️" diff --git a/.github/workflows/cre-system-tests.yaml b/.github/workflows/cre-system-tests.yaml index 17d76bcb5a5..f694f8c81d3 100644 --- a/.github/workflows/cre-system-tests.yaml +++ b/.github/workflows/cre-system-tests.yaml @@ -138,11 +138,11 @@ jobs: persist-credentials: false - name: Set up Go - id: setup-go - uses: smartcontractkit/.github/actions/ctf-setup-go@fa1d48a33e24f9b3b9f8c52e99a578a4597cb2a5 # v0.4.0 + + uses: actions/setup-go@v7 with: - go_mod_path: system-tests/tests/go.mod - no_cache: true + go-version-file: system-tests/tests/go.mod + cache: false - name: Restore Pre-Compiled Test Binaries from S3 Cache uses: actions/cache/restore@v6 diff --git a/.github/workflows/integration-in-memory-tests.yml b/.github/workflows/integration-in-memory-tests.yml index e3e68e7a8ca..1c028fd0e4e 100644 --- a/.github/workflows/integration-in-memory-tests.yml +++ b/.github/workflows/integration-in-memory-tests.yml @@ -186,14 +186,17 @@ jobs: - name: Set up Go for compilation id: setup-go - uses: smartcontractkit/.github/actions/ctf-setup-go@fa1d48a33e24f9b3b9f8c52e99a578a4597cb2a5 # v0.4.0 + uses: actions/setup-go@v7 with: - go_mod_path: integration-tests/go.mod - cache_key_id: integration-tests-v1 - cache_builds: true - cache_restore_only: ${{ github.ref_name != 'develop' }} - should_tidy: false - gati_token: ${{ steps.github-token.outputs.access-token }} + go-version-file: integration-tests/go.mod + cache: true + cache-dependency-path: | + system-tests/tests/go.sum + integration-tests/go.sum + + - name: Configure Go private modules + shell: bash + run: go env -w GOPRIVATE=github.com/smartcontractkit/* - name: Compile E2E test binaries and tools shell: bash @@ -202,7 +205,6 @@ jobs: # Restored mod cache contains shallow VCS clones that can be in an # inconsistent state after tar restore, breaking fetches of new # pseudo-versions ("shallow file has changed since we read it"). - # Drop them; only private repos re-clone, public zips stay cached. rm -rf "$(go env GOMODCACHE)/cache/vcs" mkdir -p integration-tests/bin (cd integration-tests && go test -c -ldflags="-s -w" -o ./bin/ccip-inmemory.test ./smoke/ccip) diff --git a/.github/workflows/integration-tests.yml b/.github/workflows/integration-tests.yml index bfc80ee3e18..d3804099126 100644 --- a/.github/workflows/integration-tests.yml +++ b/.github/workflows/integration-tests.yml @@ -541,7 +541,7 @@ jobs: }} needs: - test-setup - runs-on: runs-on=${{ github.run_id }}-compile/cpu=32/ram=64/family=c7i+c8i/spot=co/volume=100GB/extras=s3-cache + runs-on: runs-on=${{ github.run_id }}-compile/cpu=32/ram=64/family=c8in+c6in/spot=co/volume=100gb:gp3:500mbs:4000iops/extras=s3-cache environment: name: integration deployment: false @@ -571,19 +571,33 @@ jobs: - name: Set up Go for compilation id: setup-go - uses: smartcontractkit/.github/actions/ctf-setup-go@fa1d48a33e24f9b3b9f8c52e99a578a4597cb2a5 # v0.4.0 + uses: actions/setup-go@v7 with: - # Key the cache on go.sum hash; restore-only on PRs to eliminate upload overhead and cache thrashing. - go_mod_path: ./system-tests/tests/go.mod - cache_key_id: integration-tests-v1 - cache_builds: true - cache_restore_only: ${{ github.ref_name != 'develop' }} - should_tidy: false - no_cache: false - gati_token: ${{ steps.github-token.outputs.access-token }} - - # No cache-hit short-circuit: ctf-setup-go@v0.4.0 exposes no `cache-hit` output, - # and this job's purpose is to (re)populate the shared build cache regardless. + go-version-file: system-tests/tests/go.mod + cache: true + cache-dependency-path: | + system-tests/tests/go.sum + integration-tests/go.sum + + - name: Configure Go private modules + shell: bash + run: go env -w GOPRIVATE=github.com/smartcontractkit/* + + - name: Compute WASM cache key + id: wasm-key + shell: bash + run: | + echo "key=${{ runner.os }}-${{ runner.arch }}-wasmcache-${{ hashFiles('go.mod', 'go.sum', 'system-tests/tests/go.mod', 'system-tests/tests/go.sum', 'system-tests/lib/**', 'core/capabilities/compute/**', 'core/services/workflows/**') }}" | tee -a "$GITHUB_OUTPUT" + + - name: Restore WASM test binaries cache + id: wasm-cache-restore + uses: actions/cache/restore@v6 + with: + path: .wasm-cache/ + key: ${{ steps.wasm-key.outputs.key }} + restore-keys: | + ${{ runner.os }}-${{ runner.arch }}-wasmcache- + - name: Compile E2E tests shell: bash env: @@ -594,6 +608,11 @@ jobs: mkdir -p "$GITHUB_WORKSPACE/.gotmp" export GOTMPDIR="$GITHUB_WORKSPACE/.gotmp" + # Restored mod cache contains shallow VCS clones that can be in an + # inconsistent state after tar restore, breaking fetches of new + # pseudo-versions ("shallow file has changed since we read it"). + rm -rf "$(go env GOMODCACHE)/cache/vcs" + mkdir -p "$GITHUB_WORKSPACE/system-tests/tests/bin" mkdir -p "$GITHUB_WORKSPACE/integration-tests/bin" @@ -641,6 +660,13 @@ jobs: rm -rf "$GITHUB_WORKSPACE/.gotmp" + - name: Save WASM test binaries cache + if: steps.wasm-cache-restore.outputs.cache-hit != 'true' + uses: actions/cache/save@v6 + with: + path: .wasm-cache/ + key: ${{ steps.wasm-key.outputs.key }} + - name: Cache Pre-Compiled CRE Test Binaries if: needs.test-setup.outputs.cre-should-run == 'true' uses: actions/cache/save@v6 diff --git a/.golangci.yml b/.golangci.yml index cf530c5c456..543456c103b 100644 --- a/.golangci.yml +++ b/.golangci.yml @@ -223,6 +223,6 @@ formatters: - standard - default - prefix(github.com/smartcontractkit/) - - prefix(github.com/smartcontractkit/chainlink) + - prefix(github.com/smartcontractkit/chainlink/) exclusions: generated: lax diff --git a/core/internal/testutils/wasmtest/wasm.go b/core/internal/testutils/wasmtest/wasm.go deleted file mode 100644 index 858f3c3167c..00000000000 --- a/core/internal/testutils/wasmtest/wasm.go +++ /dev/null @@ -1,461 +0,0 @@ -package wasmtest - -import ( - "bytes" - "context" - "crypto/sha256" - "encoding/hex" - "encoding/json" - "errors" - "fmt" - "io" - "os" - "os/exec" - "path/filepath" - "runtime" - "sort" - "strings" - "sync" - "testing" - "time" - - "github.com/andybalholm/brotli" - "github.com/stretchr/testify/require" -) - -const ( - modulePath = "github.com/smartcontractkit/chainlink/v2" - cacheDirName = ".wasm-cache" -) - -var buildFlags = []string{"-trimpath", "-buildvcs=false"} - -var getRepoRoot = sync.OnceValues(func() (string, error) { - _, filename, _, ok := runtime.Caller(0) - if !ok { - return "", errors.New("could not get caller info") - } - - dir := filepath.Dir(filename) - for { - if _, err := os.Stat(filepath.Join(dir, "go.mod")); err == nil { - return dir, nil - } - parent := filepath.Dir(dir) - if parent == dir { - return "", errors.New("could not find repo root (no go.mod found)") - } - dir = parent - } -}) - -var ( - binaryCache = make(map[string][]byte) - binaryCacheMu sync.RWMutex - - fingerprintCache = make(map[string]string) - fingerprintCacheMu sync.RWMutex - - buildLocksMu sync.Mutex - buildLocks = make(map[string]*sync.Mutex) -) - -// GetTestBinary returns a WASM binary for the given package path relative to the repo root -// (e.g. core/capabilities/compute/test/simple/cmd). The binary is built lazily on first use -// and cached in .wasm-cache/ using a content-addressed filename. -func GetTestBinary(tb testing.TB, outputPath string, compress bool) []byte { - tb.Helper() - - cacheKey := fmt.Sprintf("%s:%t", outputPath, compress) - if cached, ok := loadBinaryCache(cacheKey); ok { - return cached - } - - // Serialize per package (not per cacheKey) so parallel tests requesting the - // same binary build it once, while different packages still build in parallel. - mu := buildLock(outputPath) - mu.Lock() - defer mu.Unlock() - - if cached, ok := loadBinaryCache(cacheKey); ok { - return cached - } - - repoRoot, err := getRepoRoot() - require.NoError(tb, err, "failed to get repo root: %s", err) - - binary, err := getOrBuildBinary(repoRoot, outputPath, compress) - require.NoError(tb, err) - - storeBinaryCache(cacheKey, binary) - - return binary -} - -func loadBinaryCache(cacheKey string) ([]byte, bool) { - binaryCacheMu.RLock() - defer binaryCacheMu.RUnlock() - cached, ok := binaryCache[cacheKey] - if !ok { - return nil, false - } - res := make([]byte, len(cached)) - copy(res, cached) - return res, true -} - -func storeBinaryCache(cacheKey string, binary []byte) { - cp := make([]byte, len(binary)) - copy(cp, binary) - binaryCacheMu.Lock() - binaryCache[cacheKey] = cp - binaryCacheMu.Unlock() -} - -func buildLock(key string) *sync.Mutex { - buildLocksMu.Lock() - defer buildLocksMu.Unlock() - mu, ok := buildLocks[key] - if !ok { - mu = &sync.Mutex{} - buildLocks[key] = mu - } - return mu -} - -func getOrBuildBinary(repoRoot, pkgRelPath string, compress bool) ([]byte, error) { - if _, err := pkgSlug(pkgRelPath); err != nil { - return nil, err - } - - fingerprint, err := buildFingerprint(pkgRelPath) - if err != nil { - return nil, fmt.Errorf("compute build fingerprint for %s: %w", pkgRelPath, err) - } - - cachePath, err := cacheFilePath(repoRoot, pkgRelPath, fingerprint) - if err != nil { - return nil, err - } - - compressed, err := readCacheFile(cachePath) - if err != nil { - if !os.IsNotExist(err) { - return nil, fmt.Errorf("read WASM cache %s: %w", cachePath, err) - } - - compressed, err = buildAndCacheBinary(repoRoot, pkgRelPath, cachePath) - if err != nil { - return nil, err - } - } - - if compress { - res := make([]byte, len(compressed)) - copy(res, compressed) - return res, nil - } - - return decompressBinary(compressed) -} - -func cacheFilePath(repoRoot, pkgRelPath, fingerprint string) (string, error) { - slug, err := pkgSlug(pkgRelPath) - if err != nil { - return "", err - } - return filepath.Join(repoRoot, cacheDirName, fmt.Sprintf("%s-%s.wasm.br", slug, fingerprint)), nil -} - -func pkgSlug(pkgRelPath string) (string, error) { - clean := filepath.Clean(pkgRelPath) - if clean == "." || strings.HasPrefix(clean, "..") { - return "", fmt.Errorf("invalid package path: %s", pkgRelPath) - } - return strings.ReplaceAll(clean, string(filepath.Separator), "_"), nil -} - -func readCacheFile(cachePath string) ([]byte, error) { - return os.ReadFile(cachePath) -} - -func decompressBinary(compressed []byte) ([]byte, error) { - var b bytes.Buffer - bwr := brotli.NewReader(bytes.NewReader(compressed)) - if _, err := io.Copy(&b, bwr); err != nil { - return nil, fmt.Errorf("decompress WASM cache failed: %w", err) - } - return b.Bytes(), nil -} - -func buildAndCacheBinary(repoRoot, pkgRelPath, cachePath string) ([]byte, error) { - pkgPath := modulePath + "/" + filepath.ToSlash(pkgRelPath) - compressed, err := buildBinary(pkgPath) - if err != nil { - return nil, fmt.Errorf("build WASM for %s: %w", pkgRelPath, err) - } - - cacheDir := filepath.Join(repoRoot, cacheDirName) - if err = os.MkdirAll(cacheDir, 0o755); err != nil { - return nil, fmt.Errorf("create WASM cache dir: %w", err) - } - - // Unique temp file per writer: concurrent test processes building the same - // package must not share a temp path, or interleaved writes corrupt the cache. - tmp, err := os.CreateTemp(cacheDir, filepath.Base(cachePath)+".tmp.*") - if err != nil { - return nil, fmt.Errorf("create WASM cache temp file: %w", err) - } - tmpPath := tmp.Name() - if _, err := tmp.Write(compressed); err != nil { - _ = tmp.Close() - _ = os.Remove(tmpPath) - return nil, fmt.Errorf("write WASM cache temp file: %w", err) - } - if err := tmp.Close(); err != nil { - _ = os.Remove(tmpPath) - return nil, fmt.Errorf("close WASM cache temp file: %w", err) - } - if err := os.Rename(tmpPath, cachePath); err != nil { - _ = os.Remove(tmpPath) - if existing, readErr := os.ReadFile(cachePath); readErr == nil { - return existing, nil - } - return nil, fmt.Errorf("write WASM cache file: %w", err) - } - - return compressed, nil -} - -func buildFingerprint(pkgRelPath string) (string, error) { - fingerprintCacheMu.RLock() - if fp, ok := fingerprintCache[pkgRelPath]; ok { - fingerprintCacheMu.RUnlock() - return fp, nil - } - fingerprintCacheMu.RUnlock() - - pkgPath := modulePath + "/" + filepath.ToSlash(pkgRelPath) - fp, err := computeBuildFingerprint(pkgPath) - if err != nil { - return "", err - } - - fingerprintCacheMu.Lock() - fingerprintCache[pkgRelPath] = fp - fingerprintCacheMu.Unlock() - - return fp, nil -} - -type listPackage struct { - Dir string `json:"Dir"` - GoFiles []string `json:"GoFiles"` - EmbedFiles []string `json:"EmbedFiles"` -} - -type fileDigest struct { - path string - hash string -} - -func computeBuildFingerprint(pkgPath string) (string, error) { - repoRoot, err := getRepoRoot() - if err != nil { - return "", err - } - - goVersion, err := goEnv("GOVERSION") - if err != nil { - return "", err - } - - goSumPath := filepath.Join(repoRoot, "go.sum") - goSum, err := os.ReadFile(goSumPath) - if err != nil { - return "", fmt.Errorf("read go.sum: %w", err) - } - goSumDigest := sha256.Sum256(goSum) - - pkgs, err := listDeps(pkgPath) - if err != nil { - return "", err - } - - var digests []fileDigest - - for _, pkg := range pkgs { - if pkg.Dir == "" { - continue - } - if pkg.Dir != repoRoot && !strings.HasPrefix(pkg.Dir, repoRoot+string(filepath.Separator)) { - continue - } - - if err := hashPackageFiles(repoRoot, pkg, &digests); err != nil { - return "", fmt.Errorf("hash sources in %s: %w", pkg.Dir, err) - } - } - - sort.Slice(digests, func(i, j int) bool { - return digests[i].path < digests[j].path - }) - - h := sha256.New() - if err := writeFingerprint(h, goVersion, goSumDigest, digests); err != nil { - return "", err - } - - return hex.EncodeToString(h.Sum(nil)[:16]), nil -} - -// hashPackageFiles hashes exactly the files go compiles for this package under the -// target GOOS/GOARCH (GoFiles) plus its embedded assets (EmbedFiles). Using go list's -// file set (rather than walking the dir) omits build-tag-excluded and _test.go files -// that don't affect the WASM output, and correctly captures //go:embed inputs. -func hashPackageFiles(repoRoot string, pkg listPackage, digests *[]fileDigest) error { - root, err := os.OpenRoot(pkg.Dir) - if err != nil { - return err - } - defer root.Close() - - names := make([]string, 0, len(pkg.GoFiles)+len(pkg.EmbedFiles)) - names = append(names, pkg.GoFiles...) - names = append(names, pkg.EmbedFiles...) - - for _, name := range names { - data, err := root.ReadFile(name) - if err != nil { - return err - } - sum := sha256.Sum256(data) - rel, err := filepath.Rel(repoRoot, filepath.Join(pkg.Dir, filepath.FromSlash(name))) - if err != nil { - return err - } - *digests = append(*digests, fileDigest{ - path: filepath.ToSlash(rel), - hash: hex.EncodeToString(sum[:]), - }) - } - return nil -} - -func writeFingerprint(h io.Writer, goVersion string, goSumDigest [sha256.Size]byte, digests []fileDigest) error { - if _, err := io.WriteString(h, goVersion); err != nil { - return fmt.Errorf("hash go version: %w", err) - } - if _, err := io.WriteString(h, "\nwasip1\nwasm\n"); err != nil { - return fmt.Errorf("hash platform: %w", err) - } - if _, err := io.WriteString(h, strings.Join(buildFlags, " ")); err != nil { - return fmt.Errorf("hash build flags: %w", err) - } - if _, err := io.WriteString(h, "\n"); err != nil { - return fmt.Errorf("hash separator: %w", err) - } - if _, err := h.Write(goSumDigest[:]); err != nil { - return fmt.Errorf("hash go.sum digest: %w", err) - } - if _, err := io.WriteString(h, "\n"); err != nil { - return fmt.Errorf("hash separator: %w", err) - } - for _, d := range digests { - if _, err := io.WriteString(h, d.path); err != nil { - return fmt.Errorf("hash source path: %w", err) - } - if _, err := io.WriteString(h, "\n"); err != nil { - return fmt.Errorf("hash separator: %w", err) - } - if _, err := io.WriteString(h, d.hash); err != nil { - return fmt.Errorf("hash source digest: %w", err) - } - if _, err := io.WriteString(h, "\n"); err != nil { - return fmt.Errorf("hash separator: %w", err) - } - } - return nil -} - -func listDeps(pkgPath string) ([]listPackage, error) { - ctx, cancel := context.WithTimeout(context.Background(), time.Minute) - defer cancel() - - cmd := exec.CommandContext(ctx, "go", "list", "-deps", "-json", pkgPath) // #nosec - cmd.Env = append(os.Environ(), "GOOS=wasip1", "GOARCH=wasm") - // Capture stderr separately: stdout carries the JSON we decode, so it must stay - // clean, but stderr holds the compiler/module message we want on failure. - var stderr bytes.Buffer - cmd.Stderr = &stderr - - out, err := cmd.Output() - if err != nil { - return nil, fmt.Errorf("go list -deps %s failed: %s: %w", pkgPath, strings.TrimSpace(stderr.String()), err) - } - - var pkgs []listPackage - dec := json.NewDecoder(bytes.NewReader(out)) - for { - var pkg listPackage - if err := dec.Decode(&pkg); err != nil { - if errors.Is(err, io.EOF) { - break - } - return nil, fmt.Errorf("decode go list output: %w", err) - } - pkgs = append(pkgs, pkg) - } - - return pkgs, nil -} - -func goEnv(key string) (string, error) { - ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) - defer cancel() - - cmd := exec.CommandContext(ctx, "go", "env", key) // #nosec - out, err := cmd.Output() - if err != nil { - return "", fmt.Errorf("go env %s: %w", key, err) - } - return strings.TrimSpace(string(out)), nil -} - -func buildBinary(pkgPath string) ([]byte, error) { - tmpDir, err := os.MkdirTemp("", "wasmtest-*") - if err != nil { - return nil, fmt.Errorf("create temp dir: %w", err) - } - defer os.RemoveAll(tmpDir) - - cmdCtx, cancel := context.WithTimeout(context.Background(), time.Minute) - defer cancel() - - buildPath := filepath.Join(tmpDir, "output.wasm") - args := append([]string{"build"}, buildFlags...) - args = append(args, "-o", buildPath, pkgPath) - cmd := exec.CommandContext(cmdCtx, "go", args...) // #nosec - cmd.Env = append(os.Environ(), "GOOS=wasip1", "GOARCH=wasm") - - output, err := cmd.CombinedOutput() - if err != nil { - return nil, fmt.Errorf("build failed: %s %w", string(output), err) - } - - binary, err := os.ReadFile(buildPath) - if err != nil { - return nil, fmt.Errorf("read file failed: %w", err) - } - - var b bytes.Buffer - bwr := brotli.NewWriter(&b) - if _, err = bwr.Write(binary); err != nil { - return nil, err - } - if err = bwr.Close(); err != nil { - return nil, err - } - - return b.Bytes(), nil -} diff --git a/core/internal/testutils/wasmtest/wasm_test.go b/core/internal/testutils/wasmtest/wasm_test.go deleted file mode 100644 index ed2c99655e4..00000000000 --- a/core/internal/testutils/wasmtest/wasm_test.go +++ /dev/null @@ -1,199 +0,0 @@ -package wasmtest - -import ( - "bytes" - "crypto/sha256" - "encoding/hex" - "os" - "path/filepath" - "sort" - "sync" - "sync/atomic" - "testing" - "time" - - "github.com/andybalholm/brotli" - "github.com/stretchr/testify/assert" - "github.com/stretchr/testify/require" -) - -func TestDecompressBinary(t *testing.T) { - t.Parallel() - - want := []byte("wasm-bytes") - var b bytes.Buffer - bwr := brotli.NewWriter(&b) - _, err := bwr.Write(want) - require.NoError(t, err) - require.NoError(t, bwr.Close()) - - got, err := decompressBinary(b.Bytes()) - require.NoError(t, err) - assert.Equal(t, want, got) -} - -func TestCacheFilePath(t *testing.T) { - t.Parallel() - - repoRoot := t.TempDir() - path, err := cacheFilePath(repoRoot, "core/capabilities/compute/test/simple/cmd", "abc123") - require.NoError(t, err) - assert.Equal(t, filepath.Join(repoRoot, ".wasm-cache", "core_capabilities_compute_test_simple_cmd-abc123.wasm.br"), path) -} - -func TestPkgSlugRejectsTraversal(t *testing.T) { - t.Parallel() - - _, err := pkgSlug("../escape") - require.Error(t, err) -} - -func TestReadCacheFile(t *testing.T) { - t.Parallel() - - cacheDir := t.TempDir() - want := []byte("compressed-bytes") - cachePath := filepath.Join(cacheDir, "fixture.wasm.br") - require.NoError(t, os.WriteFile(cachePath, want, 0o600)) - - got, err := readCacheFile(cachePath) - require.NoError(t, err) - assert.Equal(t, want, got) -} - -func TestGetOrBuildBinaryUsesCache(t *testing.T) { - t.Parallel() - - repoRoot := t.TempDir() - require.NoError(t, os.WriteFile(filepath.Join(repoRoot, "go.mod"), []byte("module example.com/test\n"), 0o600)) - - pkgRelPath := "core/synthetic/test/cmd" - fingerprint := "deadbeefcafebabe" - cacheDir := filepath.Join(repoRoot, cacheDirName) - require.NoError(t, os.MkdirAll(cacheDir, 0o755)) - - slug, err := pkgSlug(pkgRelPath) - require.NoError(t, err) - cachePath := filepath.Join(cacheDir, slug+"-"+fingerprint+".wasm.br") - want := []byte("cached-wasm-bytes") - var compressedBuf bytes.Buffer - bwr := brotli.NewWriter(&compressedBuf) - _, err = bwr.Write(want) - require.NoError(t, err) - require.NoError(t, bwr.Close()) - wantCompressed := compressedBuf.Bytes() - require.NoError(t, os.WriteFile(cachePath, wantCompressed, 0o600)) - - fingerprintCacheMu.Lock() - fingerprintCache[pkgRelPath] = fingerprint - fingerprintCacheMu.Unlock() - t.Cleanup(func() { - fingerprintCacheMu.Lock() - delete(fingerprintCache, pkgRelPath) - fingerprintCacheMu.Unlock() - }) - - gotCompressed, err := getOrBuildBinary(repoRoot, pkgRelPath, true) - require.NoError(t, err) - assert.Equal(t, wantCompressed, gotCompressed) - - gotDecompressed, err := getOrBuildBinary(repoRoot, pkgRelPath, false) - require.NoError(t, err) - assert.Equal(t, want, gotDecompressed) -} - -// fingerprintFiles hashes a package's GoFiles+EmbedFiles the same way -// computeBuildFingerprint does, without invoking the go toolchain. -func fingerprintFiles(t *testing.T, repoRoot string, pkg listPackage) string { - t.Helper() - var digests []fileDigest - require.NoError(t, hashPackageFiles(repoRoot, pkg, &digests)) - sort.Slice(digests, func(i, j int) bool { return digests[i].path < digests[j].path }) - h := sha256.New() - require.NoError(t, writeFingerprint(h, "go1.26.5", sha256.Sum256([]byte("gosum")), digests)) - return hex.EncodeToString(h.Sum(nil)) -} - -// TestFingerprintInvalidation mutates shared files in sequence (base -> go edit -> -// embed edit), so the steps are intentionally ordered and not parallel subtests. -func TestFingerprintInvalidation(t *testing.T) { - t.Parallel() - - repoRoot := t.TempDir() - pkgDir := filepath.Join(repoRoot, "pkg") - assetsDir := filepath.Join(pkgDir, "assets") - require.NoError(t, os.MkdirAll(assetsDir, 0o755)) - - goFile := filepath.Join(pkgDir, "main.go") - embedFile := filepath.Join(assetsDir, "data.txt") - require.NoError(t, os.WriteFile(goFile, []byte("package main\n"), 0o600)) - require.NoError(t, os.WriteFile(embedFile, []byte("v1"), 0o600)) - - pkg := listPackage{ - Dir: pkgDir, - GoFiles: []string{"main.go"}, - EmbedFiles: []string{"assets/data.txt"}, - } - - base := fingerprintFiles(t, repoRoot, pkg) - - require.NoError(t, os.WriteFile(goFile, []byte("package main\n\nvar X = 1\n"), 0o600)) - afterGoEdit := fingerprintFiles(t, repoRoot, pkg) - assert.NotEqual(t, base, afterGoEdit, "go source edit must bust the fingerprint") - - require.NoError(t, os.WriteFile(embedFile, []byte("v2-changed"), 0o600)) - afterEmbedEdit := fingerprintFiles(t, repoRoot, pkg) - assert.NotEqual(t, afterGoEdit, afterEmbedEdit, "embedded asset edit must bust the fingerprint") -} - -func TestFingerprintStableWhenUnchanged(t *testing.T) { - t.Parallel() - - repoRoot := t.TempDir() - pkgDir := filepath.Join(repoRoot, "pkg") - require.NoError(t, os.MkdirAll(pkgDir, 0o755)) - require.NoError(t, os.WriteFile(filepath.Join(pkgDir, "main.go"), []byte("package main\n"), 0o600)) - - pkg := listPackage{Dir: pkgDir, GoFiles: []string{"main.go"}} - - first := fingerprintFiles(t, repoRoot, pkg) - second := fingerprintFiles(t, repoRoot, pkg) - assert.Equal(t, first, second) -} - -func TestBuildLockPerKey(t *testing.T) { - t.Parallel() - - lockA := buildLock("pkgA") - assert.Same(t, lockA, buildLock("pkgA"), "same key must return the same lock") - assert.NotSame(t, lockA, buildLock("pkgB"), "different keys must return different locks") -} - -func TestBuildLockSerializesSameKey(t *testing.T) { - t.Parallel() - - const goroutines = 25 - var active, maxActive int32 - var wg sync.WaitGroup - - for range goroutines { - wg.Go(func() { - mu := buildLock("serialize-test") - mu.Lock() - defer mu.Unlock() - - cur := atomic.AddInt32(&active, 1) - for { - prev := atomic.LoadInt32(&maxActive) - if cur <= prev || atomic.CompareAndSwapInt32(&maxActive, prev, cur) { - break - } - } - time.Sleep(time.Millisecond) - atomic.AddInt32(&active, -1) - }) - } - wg.Wait() - - assert.Equal(t, int32(1), maxActive, "same-key builds must not run concurrently") -} diff --git a/core/scripts/go.mod b/core/scripts/go.mod index 4709e9d072d..28530e82ae1 100644 --- a/core/scripts/go.mod +++ b/core/scripts/go.mod @@ -24,7 +24,7 @@ require ( require ( github.com/Masterminds/semver/v3 v3.5.0 - github.com/andybalholm/brotli v1.2.1 + github.com/andybalholm/brotli v1.2.2 github.com/avast/retry-go/v4 v4.7.0 github.com/c-bata/go-prompt v0.2.6 github.com/ethereum/go-ethereum v1.17.4 @@ -45,7 +45,7 @@ require ( github.com/smartcontractkit/chain-selectors v1.0.107 github.com/smartcontractkit/chainlink-automation v0.8.1 github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260624154507-ea7ff77a0ddb - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-common/keystore v1.3.0 github.com/smartcontractkit/chainlink-deployments-framework v0.111.1-0.20260612191326-e31c0ae4cd54 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260810110946-8174b6bb7fc9 diff --git a/core/scripts/go.sum b/core/scripts/go.sum index 7d3f2c3fe16..e61d89d8af9 100644 --- a/core/scripts/go.sum +++ b/core/scripts/go.sum @@ -149,8 +149,8 @@ github.com/anchore/go-struct-converter v0.1.0 h1:2rDRssAl6mgKBSLNiVCMADgZRhoqtw9 github.com/anchore/go-struct-converter v0.1.0/go.mod h1:rYqSE9HbjzpHTI74vwPvae4ZVYZd1lue2ta6xHPdblA= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1578,8 +1578,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h1:t5VUHVFEdcqa0/faJiHWusuW+egKpqK3YwWZO4/yJto= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/core/services/job/wasm_file_spec_factory_test.go b/core/services/job/wasm_file_spec_factory_test.go index 7c410c9ad0e..60ef93fd571 100644 --- a/core/services/job/wasm_file_spec_factory_test.go +++ b/core/services/job/wasm_file_spec_factory_test.go @@ -5,7 +5,6 @@ import ( "crypto/sha256" "encoding/hex" "os" - "os/exec" "strings" "testing" @@ -13,6 +12,7 @@ import ( "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" + "github.com/smartcontractkit/chainlink-common/pkg/wasmbuild" "github.com/smartcontractkit/chainlink-common/pkg/workflows/wasm/host" "github.com/smartcontractkit/chainlink/v2/core/logger" "github.com/smartcontractkit/chainlink/v2/core/services/job" @@ -88,11 +88,13 @@ func TestWasmFileSpecFactory(t *testing.T) { func createTestBinary(t *testing.T) string { const testBinaryLocation = "testdata/wasm/testmodule.wasm" - cmd := exec.Command("go", "build", "-o", testBinaryLocation, "github.com/smartcontractkit/chainlink/v2/core/services/job/testdata/wasm") - cmd.Env = append(os.Environ(), "GOOS=wasip1", "GOARCH=wasm") + binary, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: "testdata/wasm", + }) + require.NoError(t, err) - output, err := cmd.CombinedOutput() - require.NoError(t, err, string(output)) + err = os.WriteFile(testBinaryLocation, binary, 0600) + require.NoError(t, err) return testBinaryLocation } diff --git a/core/services/workflows/cmd/cre/examples/compile_test.go b/core/services/workflows/cmd/cre/examples/compile_test.go index 8972a6ba06d..07258751be0 100644 --- a/core/services/workflows/cmd/cre/examples/compile_test.go +++ b/core/services/workflows/cmd/cre/examples/compile_test.go @@ -1,16 +1,13 @@ package examples import ( - "path/filepath" "testing" "github.com/stretchr/testify/require" - "github.com/smartcontractkit/chainlink/v2/core/internal/testutils/wasmtest" + "github.com/smartcontractkit/chainlink-common/pkg/wasmbuild" ) -const pathPrefix = "core/services/workflows/cmd/cre/examples" - func Test_AllExampleWorkflowsCompileToWASM(t *testing.T) { t.Parallel() paths := []string{ @@ -23,7 +20,10 @@ func Test_AllExampleWorkflowsCompileToWASM(t *testing.T) { for _, path := range paths { t.Run(path, func(t *testing.T) { t.Parallel() - binary := wasmtest.GetTestBinary(t, filepath.Join(pathPrefix, path), false) + binary, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: path, + }) + require.NoError(t, err) require.NotEmpty(t, binary) }) } diff --git a/core/services/workflows/cmd/cre/utils/runner.go b/core/services/workflows/cmd/cre/utils/runner.go index 6dafad457d9..abd7bbc6906 100644 --- a/core/services/workflows/cmd/cre/utils/runner.go +++ b/core/services/workflows/cmd/cre/utils/runner.go @@ -9,6 +9,7 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/services" "github.com/smartcontractkit/chainlink-common/pkg/settings/cresettings" "github.com/smartcontractkit/chainlink-protos/cre/go/sdk" + "github.com/smartcontractkit/chainlink/v2/core/capabilities" v2 "github.com/smartcontractkit/chainlink/v2/core/services/workflows/v2" ) diff --git a/core/services/workflows/cmd/cre/utils/runner_test.go b/core/services/workflows/cmd/cre/utils/runner_test.go index 64cd94d2de4..a69d009a5e0 100644 --- a/core/services/workflows/cmd/cre/utils/runner_test.go +++ b/core/services/workflows/cmd/cre/utils/runner_test.go @@ -2,15 +2,15 @@ package utils import ( "context" - "path/filepath" "testing" "time" "github.com/stretchr/testify/require" "github.com/smartcontractkit/chainlink-common/pkg/services" + "github.com/smartcontractkit/chainlink-common/pkg/wasmbuild" + "github.com/smartcontractkit/chainlink/v2/core/capabilities" - "github.com/smartcontractkit/chainlink/v2/core/internal/testutils/wasmtest" "github.com/smartcontractkit/chainlink/v2/core/logger" v2 "github.com/smartcontractkit/chainlink/v2/core/services/workflows/v2" ) @@ -22,7 +22,10 @@ func TestRunner(t *testing.T) { t.Parallel() // Build before deadline; WASM compile can exceed 5s under CI load. - binary := wasmtest.GetTestBinary(t, filepath.Join("core/services/workflows/cmd/cre/examples/v2", "empty"), false) + binary, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: "../examples/v2/empty", + }) + require.NoError(t, err) duration := 5 * time.Second ctx, cancel := context.WithDeadline(t.Context(), time.Now().Add(duration)) diff --git a/core/services/workflows/cmd/cre/utils/standalone_engine.go b/core/services/workflows/cmd/cre/utils/standalone_engine.go index 7c40cff568d..71bedc68a71 100644 --- a/core/services/workflows/cmd/cre/utils/standalone_engine.go +++ b/core/services/workflows/cmd/cre/utils/standalone_engine.go @@ -27,6 +27,7 @@ import ( generichost "github.com/smartcontractkit/chainlink-common/pkg/workflows/host" "github.com/smartcontractkit/chainlink-common/pkg/workflows/wasm/host" sdkpb "github.com/smartcontractkit/chainlink-protos/cre/go/sdk" + "github.com/smartcontractkit/chainlink/v2/core/capabilities" "github.com/smartcontractkit/chainlink/v2/core/capabilities/fakes" "github.com/smartcontractkit/chainlink/v2/core/services/workflows/store" diff --git a/core/services/workflows/cmd/cre/utils/standard_capabilities.go b/core/services/workflows/cmd/cre/utils/standard_capabilities.go index 80f77c59c84..09a791f38a4 100644 --- a/core/services/workflows/cmd/cre/utils/standard_capabilities.go +++ b/core/services/workflows/cmd/cre/utils/standard_capabilities.go @@ -8,6 +8,7 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/loop" "github.com/smartcontractkit/chainlink-common/pkg/services" "github.com/smartcontractkit/chainlink-common/pkg/types/core" + "github.com/smartcontractkit/chainlink/v2/core/capabilities" "github.com/smartcontractkit/chainlink/v2/core/capabilities/fakes" "github.com/smartcontractkit/chainlink/v2/core/services/job" diff --git a/core/services/workflows/syncer/v2/handler_test.go b/core/services/workflows/syncer/v2/handler_test.go index 01f205b677a..6ddff5ea673 100644 --- a/core/services/workflows/syncer/v2/handler_test.go +++ b/core/services/workflows/syncer/v2/handler_test.go @@ -43,6 +43,7 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/settings/cresettings" "github.com/smartcontractkit/chainlink-common/pkg/settings/limits" "github.com/smartcontractkit/chainlink-common/pkg/types/core" + "github.com/smartcontractkit/chainlink-common/pkg/wasmbuild" pkgworkflows "github.com/smartcontractkit/chainlink-common/pkg/workflows" "github.com/smartcontractkit/chainlink-protos/cre/go/sdk" linkingclient "github.com/smartcontractkit/chainlink-protos/linking-service/go/v1" @@ -52,7 +53,6 @@ import ( "github.com/smartcontractkit/chainlink/v2/core/capabilities/confidentialrelay" "github.com/smartcontractkit/chainlink/v2/core/internal/testutils" "github.com/smartcontractkit/chainlink/v2/core/internal/testutils/pgtest" - "github.com/smartcontractkit/chainlink/v2/core/internal/testutils/wasmtest" "github.com/smartcontractkit/chainlink/v2/core/logger" ghcapabilities "github.com/smartcontractkit/chainlink/v2/core/services/gateway/handlers/capabilities" "github.com/smartcontractkit/chainlink/v2/core/services/job" @@ -220,11 +220,21 @@ func Test_Handler(t *testing.T) { } const ( - binaryCmd = "core/services/workflows/test/wasm/v2/cmd/without_tee" - noTeeV2Cmd = "core/services/workflows/test/wasm/v2/cmd/without_tee" - withTeeV2Cmd = "core/services/workflows/test/wasm/v2/cmd/with_tee" + binaryCmd = "../../test/wasm/v2/cmd/without_tee" + noTeeV2Cmd = "../../test/wasm/v2/cmd/without_tee" + withTeeV2Cmd = "../../test/wasm/v2/cmd/with_tee" ) +func getTestBinary(t *testing.T, pkgDir string) []byte { + t.Helper() + binary, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: pkgDir, + Compress: true, + }) + require.NoError(t, err) + return binary +} + func Test_workflowRegisteredHandler(t *testing.T) { t.Parallel() binaryURLFactory := func(wfID string) string { @@ -236,7 +246,7 @@ func Test_workflowRegisteredHandler(t *testing.T) { config := []byte("") wfOwner := testutils.NewAddress().Bytes() - binary := wasmtest.GetTestBinary(t, binaryCmd, true) + binary := getTestBinary(t, binaryCmd) encodedBinary := []byte(base64.StdEncoding.EncodeToString(binary)) workflowTag := "workflow-tag" signedURLParameter := "?auth=abc123" @@ -695,7 +705,7 @@ func Test_workflowRegisteredHandler_confidentialRouting(t *testing.T) { db = pgtest.NewSqlxDB(t) orm = artifacts.NewWorkflowRegistryDS(db, lggr) emitter = custmsg.NewLabeler() - binary = wasmtest.GetTestBinary(t, withTeeV2Cmd, true) + binary = getTestBinary(t, withTeeV2Cmd) encodedBinary = []byte(base64.StdEncoding.EncodeToString(binary)) config = []byte("") workflowName = testutils.RandomizeName(t.Name()) @@ -811,7 +821,7 @@ func Test_workflowRegisteredHandler_confidentialRouting(t *testing.T) { orm = artifacts.NewWorkflowRegistryDS(db, lggr) emitter = custmsg.NewLabeler() - binary = wasmtest.GetTestBinary(t, noTeeV2Cmd, true) + binary = getTestBinary(t, noTeeV2Cmd) encodedBinary = []byte(base64.StdEncoding.EncodeToString(binary)) config = []byte("") wfOwner = testutils.NewAddress().Bytes() @@ -1055,7 +1065,7 @@ func Test_workflowDeletedHandler(t *testing.T) { orm = artifacts.NewWorkflowRegistryDS(db, lggr) emitter = custmsg.NewLabeler() - binary = wasmtest.GetTestBinary(t, binaryCmd, true) + binary = getTestBinary(t, binaryCmd) encodedBinary = []byte(base64.StdEncoding.EncodeToString(binary)) config = []byte("") workflowName = testutils.RandomizeName(t.Name()) @@ -1158,7 +1168,7 @@ func Test_workflowDeletedHandler(t *testing.T) { orm = artifacts.NewWorkflowRegistryDS(db, lggr) emitter = custmsg.NewLabeler() - binary = wasmtest.GetTestBinary(t, binaryCmd, true) + binary = getTestBinary(t, binaryCmd) config = []byte("") workflowName = testutils.RandomizeName(t.Name()) workflowEncryptionKey = workflowkey.MustNewXXXTestingOnly(big.NewInt(1)) @@ -1209,7 +1219,7 @@ func Test_workflowDeletedHandler(t *testing.T) { orm = artifacts.NewWorkflowRegistryDS(db, lggr) emitter = custmsg.NewLabeler() - binary = wasmtest.GetTestBinary(t, binaryCmd, true) + binary = getTestBinary(t, binaryCmd) encodedBinary = []byte(base64.StdEncoding.EncodeToString(binary)) config = []byte("") workflowName = testutils.RandomizeName(t.Name()) @@ -1638,7 +1648,7 @@ func Test_Handler_OrganizationID(t *testing.T) { //nolint:paralleltest // behold lggr = logger.TestLogger(t) lf = limits.Factory{Logger: lggr} mockORM = mocks.NewORM(t) - binary = wasmtest.GetTestBinary(t, binaryCmd, true) + binary = getTestBinary(t, binaryCmd) encodedBinary = []byte(base64.StdEncoding.EncodeToString(binary)) config = []byte("") workflowName = testutils.RandomizeName(t.Name()) diff --git a/core/services/workflows/v2/engine_test.go b/core/services/workflows/v2/engine_test.go index 7346ad5a680..34dfc948824 100644 --- a/core/services/workflows/v2/engine_test.go +++ b/core/services/workflows/v2/engine_test.go @@ -42,6 +42,7 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/settings/cresettings" "github.com/smartcontractkit/chainlink-common/pkg/settings/limits" regmocks "github.com/smartcontractkit/chainlink-common/pkg/types/core/mocks" + "github.com/smartcontractkit/chainlink-common/pkg/wasmbuild" "github.com/smartcontractkit/chainlink-common/pkg/workflows" "github.com/smartcontractkit/chainlink-common/pkg/workflows/wasm/host" modulemocks "github.com/smartcontractkit/chainlink-common/pkg/workflows/wasm/host/mocks" @@ -51,7 +52,6 @@ import ( "github.com/smartcontractkit/chainlink-protos/workflows/go/events" coreCap "github.com/smartcontractkit/chainlink/v2/core/capabilities" capmocks "github.com/smartcontractkit/chainlink/v2/core/capabilities/mocks" - "github.com/smartcontractkit/chainlink/v2/core/internal/testutils/wasmtest" "github.com/smartcontractkit/chainlink/v2/core/platform" "github.com/smartcontractkit/chainlink/v2/core/services/registrysyncer" workflowEvents "github.com/smartcontractkit/chainlink/v2/core/services/workflows/events" @@ -1511,9 +1511,11 @@ func TestEngine_CapabilityCallTimeout(t *testing.T) { func TestEngine_WASMBinary_Simple(t *testing.T) { t.Parallel() - cmd := "core/services/workflows/test/wasm/v2/cmd" log := logger.Test(t) - binaryB := wasmtest.GetTestBinary(t, cmd, false) + binaryB, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: "../test/wasm/v2/cmd", + }) + require.NoError(t, err) module, err := host.NewModule(t.Context(), &host.ModuleConfig{ Logger: log, IsUncompressed: true, @@ -1594,8 +1596,10 @@ func TestEngine_WASMBinary_Simple(t *testing.T) { } func TestEngine_WASMBinary_With_Config(t *testing.T) { - cmd := "core/services/workflows/test/wasm/v2/cmd/with_config" - binaryB := wasmtest.GetTestBinary(t, cmd, false) + binaryB, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: "../test/wasm/v2/cmd/with_config", + }) + require.NoError(t, err) // Define a custom config to validate against giveName := "Foo" @@ -1691,8 +1695,10 @@ func TestEngine_WASMBinary_With_Config(t *testing.T) { func TestSecretsFetcher_Integration(t *testing.T) { t.Parallel() - cmd := "core/services/workflows/test/wasm/v2/cmd/with_secrets" - binaryB := wasmtest.GetTestBinary(t, cmd, false) + binaryB, err := wasmbuild.Compile(t.Context(), wasmbuild.Config{ + PkgDir: "../test/wasm/v2/cmd/with_secrets", + }) + require.NoError(t, err) // Define a custom config to validate against giveName := "Foo" diff --git a/deployment/go.mod b/deployment/go.mod index 5d9d5c7192c..daf99bad665 100644 --- a/deployment/go.mod +++ b/deployment/go.mod @@ -48,7 +48,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260624154507-ea7ff77a0ddb github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb github.com/smartcontractkit/chainlink-ccip/deployment v0.0.0-20260624154507-ea7ff77a0ddb - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-common/keystore v1.3.0 github.com/smartcontractkit/chainlink-data-streams v1.1.0 github.com/smartcontractkit/chainlink-deployments-framework v0.111.1-0.20260612191326-e31c0ae4cd54 @@ -124,7 +124,7 @@ require ( github.com/alecthomas/units v0.0.0-20240927000941-0f3dac36c52b // indirect github.com/alexflint/go-arg v1.5.1 // indirect github.com/alexflint/go-scalar v1.2.0 // indirect - github.com/andybalholm/brotli v1.2.1 // indirect + github.com/andybalholm/brotli v1.2.2 // indirect github.com/apache/arrow-go/v18 v18.6.0 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/atombender/go-jsonschema v0.16.1-0.20240916205339-a74cd4e2851c // indirect diff --git a/deployment/go.sum b/deployment/go.sum index e2c7e606135..961ed499711 100644 --- a/deployment/go.sum +++ b/deployment/go.sum @@ -142,8 +142,8 @@ github.com/allegro/bigcache v1.2.1/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2uc github.com/andres-erbsen/clock v0.0.0-20160526145045-9e14626cd129/go.mod h1:rFgpPQZYZ8vdbc+48xibu8ALc3yeyd64IhHS+PU6Yyg= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1410,8 +1410,8 @@ github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260616151800-9a3a31c4e194 h1:QxZkbKtQyPtVLYP4eMwc+VbXY7M5ve1deSiLZ2pOA+Y= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260616151800-9a3a31c4e194/go.mod h1:bNMFRxwWdgVFdSsFZRmsUUPoBUncU3RM765K99svIKM= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/devenv/go.mod b/devenv/go.mod index fa85cd52d7a..a3e0d4146f5 100644 --- a/devenv/go.mod +++ b/devenv/go.mod @@ -8,7 +8,7 @@ require ( github.com/c-bata/go-prompt v0.2.6 github.com/cockroachdb/errors v1.11.3 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc - github.com/ethereum/go-ethereum v1.17.1 + github.com/ethereum/go-ethereum v1.17.4 github.com/go-resty/resty/v2 v2.17.2 github.com/google/go-cmp v0.7.0 github.com/google/uuid v1.6.0 @@ -20,9 +20,9 @@ require ( github.com/rs/zerolog v1.35.1 github.com/scylladb/go-reflectx v1.0.1 github.com/shopspring/decimal v1.4.0 - github.com/smartcontractkit/chain-selectors v1.0.100 + github.com/smartcontractkit/chain-selectors v1.0.104 github.com/smartcontractkit/chainlink-automation v0.8.1 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260722120418-c1a1e0e75034 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260519095745-ddfc812d06a0 github.com/smartcontractkit/chainlink-evm/gethwrappers v0.0.0-20251211123524-f0c4fe7cfc0a github.com/smartcontractkit/chainlink-protos/job-distributor v0.12.0 @@ -30,12 +30,12 @@ require ( github.com/smartcontractkit/chainlink-testing-framework/framework/components/fake v0.14.10-0.20260511081501-829666151188 github.com/smartcontractkit/chainlink-testing-framework/seth v1.51.5 github.com/smartcontractkit/chainlink-testing-framework/wasp v1.51.2 - github.com/smartcontractkit/libocr v0.0.0-20260403184524-b6409238958d + github.com/smartcontractkit/libocr v0.0.0-20260810200708-618b5bf7f342 github.com/spf13/cobra v1.9.1 github.com/stretchr/testify v1.11.1 github.com/umbracle/ethgo v0.1.3 go.uber.org/zap v1.27.1 - golang.org/x/sync v0.20.0 + golang.org/x/sync v0.21.0 google.golang.org/grpc v1.82.1 gopkg.in/guregu/null.v4 v4.0.0 ) @@ -113,7 +113,7 @@ require ( github.com/coreos/go-systemd/v22 v22.7.0 // indirect github.com/cpuguy83/dockercfg v0.3.2 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect - github.com/crate-crypto/go-eth-kzg v1.4.0 // indirect + github.com/crate-crypto/go-eth-kzg v1.5.0 // indirect github.com/dchest/siphash v1.2.3 // indirect github.com/deckarep/golang-set/v2 v2.8.0 // indirect github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect @@ -133,6 +133,7 @@ require ( github.com/fatih/color v1.18.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/ferranbt/fastssz v0.1.4 // indirect + github.com/fjl/jsonw v0.1.0 // indirect github.com/fsnotify/fsnotify v1.9.0 // indirect github.com/fxamacker/cbor/v2 v2.9.2 // indirect github.com/gabriel-vasile/mimetype v1.4.13 // indirect @@ -285,11 +286,10 @@ require ( github.com/pb33f/libopenapi-validator v0.13.3 // indirect github.com/pb33f/ordered-map/v2 v2.3.0 // indirect github.com/pelletier/go-toml v1.9.5 // indirect - github.com/pion/dtls/v2 v2.2.12 // indirect - github.com/pion/logging v0.2.2 // indirect - github.com/pion/stun/v2 v2.0.0 // indirect - github.com/pion/transport/v2 v2.2.10 // indirect - github.com/pion/transport/v3 v3.0.1 // indirect + github.com/pion/dtls/v3 v3.1.2 // indirect + github.com/pion/logging v0.2.4 // indirect + github.com/pion/stun/v3 v3.1.2 // indirect + github.com/pion/transport/v4 v4.0.1 // indirect github.com/pires/go-proxyproto v0.11.0 // indirect github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/pkg/term v1.2.0-beta.2 // indirect @@ -321,11 +321,11 @@ require ( github.com/shirou/gopsutil/v4 v4.26.4 // indirect github.com/sirupsen/logrus v1.9.4 // indirect github.com/smartcontractkit/chainlink-common/keystore v1.0.2 // indirect - github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260716165322-7f2edff6e954 // indirect + github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20260423135514-5b1a7565a99c // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20260508154216-3ed6f623098f // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20260505202410-b350dca113b4 // indirect - github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260622152157-c8e129347b8b // indirect + github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260804191526-b7a850ae7648 // indirect github.com/smartcontractkit/chainlink-protos/linking-service/go v0.0.0-20251002192024-d2ad9222409b // indirect github.com/smartcontractkit/chainlink-testing-framework/lib/grafana v1.50.0 // indirect github.com/smartcontractkit/freeport v0.1.3-0.20250828155247-add56fa28aad // indirect @@ -353,6 +353,7 @@ require ( github.com/valyala/fastjson v1.4.1 // indirect github.com/vektah/gqlparser/v2 v2.5.19 // indirect github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect + github.com/wlynxg/anet v0.0.5 // indirect github.com/x448/float16 v0.8.4 // indirect github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect @@ -409,14 +410,14 @@ require ( go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect go4.org/netipx v0.0.0-20230125063823-8449b0a6169f // indirect golang.org/x/arch v0.26.0 // indirect - golang.org/x/crypto v0.52.0 // indirect + golang.org/x/crypto v0.53.0 // indirect golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect golang.org/x/mod v0.36.0 // indirect golang.org/x/net v0.55.0 // indirect golang.org/x/oauth2 v0.36.0 // indirect - golang.org/x/sys v0.45.0 // indirect - golang.org/x/term v0.43.0 // indirect - golang.org/x/text v0.37.0 // indirect + golang.org/x/sys v0.46.0 // indirect + golang.org/x/term v0.44.0 // indirect + golang.org/x/text v0.38.0 // indirect golang.org/x/time v0.15.0 // indirect golang.org/x/tools v0.45.0 // indirect google.golang.org/api v0.272.0 // indirect diff --git a/devenv/go.sum b/devenv/go.sum index 09825612430..774171486cc 100644 --- a/devenv/go.sum +++ b/devenv/go.sum @@ -254,8 +254,8 @@ github.com/cpuguy83/dockercfg v0.3.2/go.mod h1:sugsbF4//dDlL/i+S+rtpIWp+5h0BHJHf github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= github.com/cpuguy83/go-md2man/v2 v2.0.7 h1:zbFlGlXEAKlwXpmvle3d8Oe3YnkKIK4xSRTd3sHPnBo= github.com/cpuguy83/go-md2man/v2 v2.0.7/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g= -github.com/crate-crypto/go-eth-kzg v1.4.0 h1:WzDGjHk4gFg6YzV0rJOAsTK4z3Qkz5jd4RE3DAvPFkg= -github.com/crate-crypto/go-eth-kzg v1.4.0/go.mod h1:J9/u5sWfznSObptgfa92Jq8rTswn6ahQWEuiLHOjCUI= +github.com/crate-crypto/go-eth-kzg v1.5.0 h1:FYRiJMJG2iv+2Dy3fi14SVGjcPteZ5HAAUe4YWlJygc= +github.com/crate-crypto/go-eth-kzg v1.5.0/go.mod h1:J9/u5sWfznSObptgfa92Jq8rTswn6ahQWEuiLHOjCUI= github.com/creack/pty v1.1.7/go.mod h1:lj5s0c3V2DBrqTV7llrYr5NG6My20zk30Fl46Y7DoTY= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/creack/pty v1.1.24 h1:bJrF4RRfyJnbTJqzRLHzcGaZK1NeM5kTC9jGgovnR1s= @@ -313,8 +313,8 @@ github.com/ethereum/c-kzg-4844/v2 v2.1.6 h1:xQymkKCT5E2Jiaoqf3v4wsNgjZLY0lRSkZn2 github.com/ethereum/c-kzg-4844/v2 v2.1.6/go.mod h1:8HMkUZ5JRv4hpw/XUrYWSQNAUzhHMg2UDb/U+5m+XNw= github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab h1:rvv6MJhy07IMfEKuARQ9TKojGqLVNxQajaXEp/BoqSk= github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab/go.mod h1:IuLm4IsPipXKF7CW5Lzf68PIbZ5yl7FFd74l/E0o9A8= -github.com/ethereum/go-ethereum v1.17.1 h1:IjlQDjgxg2uL+GzPRkygGULPMLzcYWncEI7wbaizvho= -github.com/ethereum/go-ethereum v1.17.1/go.mod h1:7UWOVHL7K3b8RfVRea022btnzLCaanwHtBuH1jUCH/I= +github.com/ethereum/go-ethereum v1.17.4 h1:uA4q+qiLp7QImBsjdRbINu8iX6OEVmj4DPc5/E5Fsxc= +github.com/ethereum/go-ethereum v1.17.4/go.mod h1:qMdgwqqRAen+aT8P7KKQKi0Qt6RzG4cfejVAbCpJgqA= github.com/facette/natsort v0.0.0-20181210072756-2cd4dd1e2dcb h1:IT4JYU7k4ikYg1SCxNI1/Tieq/NFvh6dzLdgi7eu0tM= github.com/facette/natsort v0.0.0-20181210072756-2cd4dd1e2dcb/go.mod h1:bH6Xx7IW64qjjJq8M2u4dxNaBiDfKK+z/3eGDpXEQhc= github.com/fatih/color v1.13.0/go.mod h1:kLAiJbzzSOZDVNGyDpeOxJ47H46qBXwg5ILebYFFOfk= @@ -324,6 +324,8 @@ github.com/felixge/httpsnoop v1.0.4 h1:NFTV2Zj1bL4mc9sqWACXbQFVBBg2W3GPvqp8/ESS2 github.com/felixge/httpsnoop v1.0.4/go.mod h1:m8KPJKqk1gH5J9DgRY2ASl2lWCfGKXixSwevea8zH2U= github.com/ferranbt/fastssz v0.1.4 h1:OCDB+dYDEQDvAgtAGnTSidK1Pe2tW3nFV40XyMkTeDY= github.com/ferranbt/fastssz v0.1.4/go.mod h1:Ea3+oeoRGGLGm5shYAeDgu6PGUlcvQhE2fILyD9+tGg= +github.com/fjl/jsonw v0.1.0 h1:V3MyR79fjLpn/+bMgvegdGUIhoJOzjmqWcKDgcOmY1I= +github.com/fjl/jsonw v0.1.0/go.mod h1:2KMLevM6FXEJnfhtk7naXu9vZdVfOma1GlnGdPRlumU= github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHkI4W8= github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0= github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= @@ -892,19 +894,14 @@ github.com/pierrec/lz4/v4 v4.1.26 h1:GrpZw1gZttORinvzBdXPUXATeqlJjqUG/D87TKMnhjY github.com/pierrec/lz4/v4 v4.1.26/go.mod h1:EoQMVJgeeEOMsCqCzqFm2O0cJvljX2nGZjcRIPL34O4= github.com/pingcap/errors v0.11.4 h1:lFuQV/oaUMGcD2tqt+01ROSmJs75VG1ToEOkZIZ4nE4= github.com/pingcap/errors v0.11.4/go.mod h1:Oi8TUi2kEtXXLMJk9l1cGmz20kV3TaQ0usTwv5KuLY8= -github.com/pion/dtls/v2 v2.2.7/go.mod h1:8WiMkebSHFD0T+dIU+UeBaoV7kDhOW5oDCzZ7WZ/F9s= -github.com/pion/dtls/v2 v2.2.12 h1:KP7H5/c1EiVAAKUmXyCzPiQe5+bCJrpOeKg/L05dunk= -github.com/pion/dtls/v2 v2.2.12/go.mod h1:d9SYc9fch0CqK90mRk1dC7AkzzpwJj6u2GU3u+9pqFE= -github.com/pion/logging v0.2.2 h1:M9+AIj/+pxNsDfAT64+MAVgJO0rsyLnoJKCqf//DoeY= -github.com/pion/logging v0.2.2/go.mod h1:k0/tDVsRCX2Mb2ZEmTqNa7CWsQPc+YYCB7Q+5pahoms= -github.com/pion/stun/v2 v2.0.0 h1:A5+wXKLAypxQri59+tmQKVs7+l6mMM+3d+eER9ifRU0= -github.com/pion/stun/v2 v2.0.0/go.mod h1:22qRSh08fSEttYUmJZGlriq9+03jtVmXNODgLccj8GQ= -github.com/pion/transport/v2 v2.2.1/go.mod h1:cXXWavvCnFF6McHTft3DWS9iic2Mftcz1Aq29pGcU5g= -github.com/pion/transport/v2 v2.2.4/go.mod h1:q2U/tf9FEfnSBGSW6w5Qp5PFWRLRj3NjLhCCgpRK4p0= -github.com/pion/transport/v2 v2.2.10 h1:ucLBLE8nuxiHfvkFKnkDQRYWYfp8ejf4YBOPfaQpw6Q= -github.com/pion/transport/v2 v2.2.10/go.mod h1:sq1kSLWs+cHW9E+2fJP95QudkzbK7wscs8yYgQToO5E= -github.com/pion/transport/v3 v3.0.1 h1:gDTlPJwROfSfz6QfSi0ZmeCSkFcnWWiiR9ES0ouANiM= -github.com/pion/transport/v3 v3.0.1/go.mod h1:UY7kiITrlMv7/IKgd5eTUcaahZx5oUN3l9SzK5f5xE0= +github.com/pion/dtls/v3 v3.1.2 h1:gqEdOUXLtCGW+afsBLO0LtDD8GnuBBjEy6HRtyofZTc= +github.com/pion/dtls/v3 v3.1.2/go.mod h1:Hw/igcX4pdY69z1Hgv5x7wJFrUkdgHwAn/Q/uo7YHRo= +github.com/pion/logging v0.2.4 h1:tTew+7cmQ+Mc1pTBLKH2puKsOvhm32dROumOZ655zB8= +github.com/pion/logging v0.2.4/go.mod h1:DffhXTKYdNZU+KtJ5pyQDjvOAh/GsNSyv1lbkFbe3so= +github.com/pion/stun/v3 v3.1.2 h1:86IhD8wFn6IDW4b1/0QzoQS+f5PeA8OHHRn8UZW5ErY= +github.com/pion/stun/v3 v3.1.2/go.mod h1:H7gDic7nNwlUL05pbs6T1dtaBehh/KjupxfWw3ZI7cA= +github.com/pion/transport/v4 v4.0.1 h1:sdROELU6BZ63Ab7FrOLn13M6YdJLY20wldXW2Cu2k8o= +github.com/pion/transport/v4 v4.0.1/go.mod h1:nEuEA4AD5lPdcIegQDpVLgNoDGreqM/YqmEx3ovP4jM= github.com/pires/go-proxyproto v0.11.0 h1:gUQpS85X/VJMdUsYyEgyn59uLJvGqPhJV5YvG68wXH4= github.com/pires/go-proxyproto v0.11.0/go.mod h1:ZKAAyp3cgy5Y5Mo4n9AlScrkCZwUy0g3Jf+slqQVcuU= github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c h1:+mdjkGKdHQG3305AYmdv1U2eRNDiU2ErMBj1gwrq8eQ= @@ -1014,16 +1011,16 @@ github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6Mwd github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88= github.com/sirupsen/logrus v1.9.4 h1:TsZE7l11zFCLZnZ+teH4Umoq5BhEIfIzfRDZ1Uzql2w= github.com/sirupsen/logrus v1.9.4/go.mod h1:ftWc9WdOfJ0a92nsE2jF5u5ZwH8Bv2zdeOC42RjbV2g= -github.com/smartcontractkit/chain-selectors v1.0.100 h1:wpiSpmI/eFjY+wx/nPr5VuNF4hki0prIBMKEaQWn3g4= -github.com/smartcontractkit/chain-selectors v1.0.100/go.mod h1:qy7whtgG5g+7z0jt0nRyii9bLND9m15NZTzuQPkMZ5w= +github.com/smartcontractkit/chain-selectors v1.0.104 h1:/n9pPGM5W/+r1eHoWZv4VwX9LNS1af4+ICyhM8zKRNM= +github.com/smartcontractkit/chain-selectors v1.0.104/go.mod h1:qy7whtgG5g+7z0jt0nRyii9bLND9m15NZTzuQPkMZ5w= github.com/smartcontractkit/chainlink-automation v0.8.1 h1:sTc9LKpBvcKPc1JDYAmgBc2xpDKBco/Q4h4ydl6+UUU= github.com/smartcontractkit/chainlink-automation v0.8.1/go.mod h1:Iij36PvWZ6blrdC5A/nrQUBuf3MH3JvsBB9sSyc9W08= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260722120418-c1a1e0e75034 h1:XCnmvCaSuOXKShpfcmyrHskHnXDzjACxI37WiEFdJDI= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260722120418-c1a1e0e75034/go.mod h1:DGvW2Opi/qcOWNkOq18xTI5ZqByoxfPTL9H5M1bC4Ls= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.0.2 h1:AWisx4JT3QV8tcgh6J5NCrex+wAgTYpWyHsyNPSXzsQ= github.com/smartcontractkit/chainlink-common/keystore v1.0.2/go.mod h1:rSkIHdomyak3YnUtXLenl6poIq8q0V3UZPiiyYqPdGA= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260716165322-7f2edff6e954 h1:QhTMiEn3s+AB4xBoScuQglsqHGJYxheYrgpxdIdqNAI= -github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260716165322-7f2edff6e954/go.mod h1:UYcRMb4dZcoaIPgZJ3hckCySTqtJc9K4Q+tOKErwTq0= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= +github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72/go.mod h1:UYcRMb4dZcoaIPgZJ3hckCySTqtJc9K4Q+tOKErwTq0= github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260519095745-ddfc812d06a0 h1:rPVMnAi1+tWZOo8jTHavu/PbmoKNVRrKYOfxzujDuss= github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260519095745-ddfc812d06a0/go.mod h1:ow+Q/Tl8iDgDFaMkQveJJWEL6odFZAmuYRUm/dwk26M= github.com/smartcontractkit/chainlink-evm/gethwrappers v0.0.0-20251211123524-f0c4fe7cfc0a h1:kVKWRGrSCioMY2lEVIEblerv/KkINIQS2hLUOw2wKOg= @@ -1034,8 +1031,8 @@ github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20260508154216-3e github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20260508154216-3ed6f623098f/go.mod h1:HG/aei0MgBOpsyRLexdKGtOUO8yjSJO3iUu0Uu8KBm4= github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20260505202410-b350dca113b4 h1:nXU0s4WAVU2cAR76Ke7h9z55NuEtRq1WvT4wVEs7jwk= github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20260505202410-b350dca113b4/go.mod h1:7ketk4ischPQW/JQgmyHz6zdzLUJv1VC29SiSgosydQ= -github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260622152157-c8e129347b8b h1:VDgJWDipihV9f7M5+d21d1RzSsg5rEv+iI12oN1VQbo= -github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260622152157-c8e129347b8b/go.mod h1:vTFHTCbLui4Vn8fTmAadfE3rdnvfrDwOmMujmW857D0= +github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260804191526-b7a850ae7648 h1:WEUMkKQPAgcNMRgES6CBWrRUiII+HKEWQjulKQBSuMA= +github.com/smartcontractkit/chainlink-protos/cre/go v0.0.0-20260804191526-b7a850ae7648/go.mod h1:/i8hjTPFdVWHiY+QjeSiVS2Z3GB3WAZznGgXHstC02E= github.com/smartcontractkit/chainlink-protos/job-distributor v0.12.0 h1:/bhoALRzNXZkdzxBkNM505pMofNy0K0eW1nCzXw+AUI= github.com/smartcontractkit/chainlink-protos/job-distributor v0.12.0/go.mod h1:/dVVLXrsp+V0AbcYGJo3XMzKg3CkELsweA/TTopCsKE= github.com/smartcontractkit/chainlink-protos/linking-service/go v0.0.0-20251002192024-d2ad9222409b h1:QuI6SmQFK/zyUlVWEf0GMkiUYBPY4lssn26nKSd/bOM= @@ -1052,8 +1049,8 @@ github.com/smartcontractkit/chainlink-testing-framework/wasp v1.51.2 h1:QFO9Ar1z github.com/smartcontractkit/chainlink-testing-framework/wasp v1.51.2/go.mod h1:OLczwaAvyObFG+eq4tQHkWqkbPBB0cHkZj0JzY3inik= github.com/smartcontractkit/freeport v0.1.3-0.20250828155247-add56fa28aad h1:lgHxTHuzJIF3Vj6LSMOnjhqKgRqYW+0MV2SExtCYL1Q= github.com/smartcontractkit/freeport v0.1.3-0.20250828155247-add56fa28aad/go.mod h1:T4zH9R8R8lVWKfU7tUvYz2o2jMv1OpGCdpY2j2QZXzU= -github.com/smartcontractkit/libocr v0.0.0-20260403184524-b6409238958d h1:PvXor5Fjer7FIONSqYXbpd1LkA14hWrlAyxXzOrC9t8= -github.com/smartcontractkit/libocr v0.0.0-20260403184524-b6409238958d/go.mod h1:PLdNK6GlqfxIWXzziPkU7dCAVlVFeYkyyW7AQY0R+4Q= +github.com/smartcontractkit/libocr v0.0.0-20260810200708-618b5bf7f342 h1:pEcgcjTGA83MzpqbTbyIg9AJrOs62s77SooDdJGIg9w= +github.com/smartcontractkit/libocr v0.0.0-20260810200708-618b5bf7f342/go.mod h1:5JPtsRwjugpyfsdEALC4RopfvohqK/G+3DHaR8uv+Bc= github.com/sony/gobreaker/v2 v2.4.0 h1:g2KJRW1Ubty3+ZOcSEUN7K+REQJdN6yo6XvaML+jptg= github.com/sony/gobreaker/v2 v2.4.0/go.mod h1:pTyFJgcZ3h2tdQVLZZruK2C0eoFL1fb/G83wK1ZQl+s= github.com/spf13/cast v1.10.0 h1:h2x0u2shc1QuLHfxi+cTJvs30+ZAHOGRic8uyGTDWxY= @@ -1084,7 +1081,6 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.7.2/go.mod h1:R6va5+xMeoiuVRoj+gSkQ7d3FALtqAAGI1FQKckRals= github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.1/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -github.com/stretchr/testify v1.8.3/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXlSw2iwfAo= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/stretchr/testify v1.10.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= @@ -1139,7 +1135,8 @@ github.com/vultr/govultr/v3 v3.28.1 h1:KR3LhppYARlBujY7+dcrE7YKL0Yo9qXL+msxykKQr github.com/vultr/govultr/v3 v3.28.1/go.mod h1:2zyUw9yADQaGwKnwDesmIOlBNLrm7edsCfWHFJpWKf8= github.com/wk8/go-ordered-map/v2 v2.1.8 h1:5h/BUHu93oj4gIdvHHHGsScSTMijfx5PeYkE/fJgbpc= github.com/wk8/go-ordered-map/v2 v2.1.8/go.mod h1:5nJHM5DyteebpVlHnWMV0rPz6Zp7+xBAnxjb1X5vnTw= -github.com/wlynxg/anet v0.0.3/go.mod h1:eay5PRQr7fIVAMbTbchTnO9gG65Hg/uYGdc7mguHxoA= +github.com/wlynxg/anet v0.0.5 h1:J3VJGi1gvo0JwZ/P1/Yc/8p63SoW98B5dHkYDmpgvvU= +github.com/wlynxg/anet v0.0.5/go.mod h1:eay5PRQr7fIVAMbTbchTnO9gG65Hg/uYGdc7mguHxoA= github.com/x448/float16 v0.8.4 h1:qLwI1I70+NjRFUR3zs1JPUCgaCXSh3SW62uAKT1mSBM= github.com/x448/float16 v0.8.4/go.mod h1:14CWIYCyZA/cWjXOioeEpHeN/83MdbZDRQHoFcYsOfg= github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 h1:gEOO8jv9F4OT7lGCjxCBTO/36wtF6j2nSip77qHd4x4= @@ -1326,14 +1323,11 @@ golang.org/x/crypto v0.0.0-20201221181555-eec23a3978ad/go.mod h1:jdWPYTVW3xRLrWP golang.org/x/crypto v0.0.0-20210616213533-5ff15b29337e/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210711020723-a769d52b0f97/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= golang.org/x/crypto v0.0.0-20210921155107-089bfa567519/go.mod h1:GvvjBRRGRdwPK5ydBHafDWAxML/pGHZbMvKqRZ5+Abc= -golang.org/x/crypto v0.8.0/go.mod h1:mRqEX+O9/h5TFCrQhkgjo2yKi0yYA+9ecGkdQoHrywE= golang.org/x/crypto v0.11.0/go.mod h1:xgJhtzW8F9jGdVFWZESrid1U1bjeNy4zgy5cRr/CIio= -golang.org/x/crypto v0.12.0/go.mod h1:NF0Gs7EO5K4qLn+Ylc+fih8BSTeIjAP05siRnAh98yw= -golang.org/x/crypto v0.18.0/go.mod h1:R0j02AL6hcrfOiy9T4ZYp/rcWeMxM3L6QYxlOuEG1mg= golang.org/x/crypto v0.19.0/go.mod h1:Iy9bg/ha4yyC70EfRS8jz+B6ybOBKMaSxLj6P6oBDfU= golang.org/x/crypto v0.20.0/go.mod h1:Xwo95rrVNIoSMx9wa1JroENMToLWn3RNVrTBpLHgZPQ= -golang.org/x/crypto v0.52.0 h1:RMs7fP2rXdep0CftQlK8Uf+kibLm7qkCcradZWYz988= -golang.org/x/crypto v0.52.0/go.mod h1:1QgfPxDqh0T2M/elOJtp9RvuR95kVjir0e6/BvEmGbc= +golang.org/x/crypto v0.53.0 h1:QZ4Muo8THX6CizN2vPPd5fBGHyogrdK9fG4wLPFUsto= +golang.org/x/crypto v0.53.0/go.mod h1:DNLU434OwVakk9PzuwV8w62mAJpRJL3vsgcfp4Qnsio= golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a h1:+3jdDGGB8NGb1Zktc737jlt3/A5f6UlwSzmvqUuufxw= golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a/go.mod h1:d2fgXJLVs4dYDHUk5lwMIfzRzSrWCfGZb0ZqeLa/Vcw= golang.org/x/lint v0.0.0-20190930215403-16217165b5de/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc= @@ -1366,11 +1360,8 @@ golang.org/x/net v0.0.0-20220225172249-27dd8689420f/go.mod h1:CfG3xpIq0wQ8r1q4Su golang.org/x/net v0.0.0-20220607020251-c690dde0001d/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.0.0-20220722155237-a158d28d115b/go.mod h1:XRhObCWvk6IyKnWLug+ECip1KBveYUHfp+8e9klMJ9c= golang.org/x/net v0.6.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= -golang.org/x/net v0.9.0/go.mod h1:d48xBJpPfHeWQsugry2m+kC02ZBRGRgulfHnEXEuWns= golang.org/x/net v0.10.0/go.mod h1:0qNGK6F8kojg2nk9dLZ2mShWaEBan6FAoqfSigmmuDg= golang.org/x/net v0.13.0/go.mod h1:zEVYFnQC7m/vmpQFELhcD1EWkZlX69l4oqgmer6hfKA= -golang.org/x/net v0.14.0/go.mod h1:PpSgVXXLK0OxS0F31C1/tv6XNguvCrnXIDrFMspZIUI= -golang.org/x/net v0.20.0/go.mod h1:z8BVo6PvndSri0LbOE3hAn0apkU+1YvI6E70E9jsnvY= golang.org/x/net v0.21.0/go.mod h1:bIjVDfnllIU7BJ2DNgfnXvpSvtn8VRwhlsaeUTyUS44= golang.org/x/net v0.55.0 h1:bcvxaJn3e1U6InsFWt1JUq1aSjnRxLzT2rtD2KfkDF8= golang.org/x/net v0.55.0/go.mod h1:L5U2KuzuOe1lY7Z+aWVIKK6qEeJXnXV9yzGA+WCHJww= @@ -1387,8 +1378,8 @@ golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJ golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.0.0-20220722155255-886fb9371eb4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= golang.org/x/sync v0.1.0/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.20.0 h1:e0PTpb7pjO8GAtTs2dQ6jYa5BWYlMuX047Dco/pItO4= -golang.org/x/sync v0.20.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= +golang.org/x/sync v0.21.0 h1:HLII4xRRTtCRkxYp4HNFF0Js/Og6q2i++KXbg0gHCwM= +golang.org/x/sync v0.21.0/go.mod h1:9xrNwdLfx4jkKbNva9FpL6vEN7evnE43NNNJQ2LF3+0= golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= golang.org/x/sys v0.0.0-20181116152217-5ac8a444bdc5/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= @@ -1435,29 +1426,23 @@ golang.org/x/sys v0.0.0-20220520151302-bc2c85ada10a/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220722155257-8c9f86f7a55f/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.1.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.5.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.7.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.10.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.14.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.16.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/sys v0.17.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= -golang.org/x/sys v0.45.0 h1:dO4czNzziLiiXplLQgBCEpCvXQ3dnkn0SdaZSYdQ+FY= -golang.org/x/sys v0.45.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= +golang.org/x/sys v0.46.0 h1:noSf2Fq6F8DBgS+LysIkx7rIExoNHJsxOAtPp4rthXw= +golang.org/x/sys v0.46.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/telemetry v0.0.0-20260519152614-eab6ae52b5e2 h1:2EucmYlcIsc8Y6aLj+kX90Y00hmjqLNlw935kc13R2k= golang.org/x/telemetry v0.0.0-20260519152614-eab6ae52b5e2/go.mod h1:Eqhaxk/wZsWEH8CRxLwj6xzEJbz7k1EFGqx7nyCoabE= golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= golang.org/x/term v0.0.0-20210927222741-03fcf44c2211/go.mod h1:jbD1KX2456YbFQfuXm/mYQcufACuNUgVhRMnK/tPxf8= golang.org/x/term v0.5.0/go.mod h1:jMB1sMXY+tzblOD4FWmEbocvup2/aLOaQEp7JmGp78k= -golang.org/x/term v0.7.0/go.mod h1:P32HKFT3hSsZrRxla30E9HqToFYAQPCMs/zFMBUFqPY= golang.org/x/term v0.8.0/go.mod h1:xPskH00ivmX89bAKVGSKKtLOWNx2+17Eiy94tnKShWo= golang.org/x/term v0.10.0/go.mod h1:lpqdcUyK/oCiQxvxVrppt5ggO2KCZ5QblwqPnfZ6d5o= -golang.org/x/term v0.11.0/go.mod h1:zC9APTIj3jG3FdV/Ons+XE1riIZXG4aZ4GTHiPZJPIU= -golang.org/x/term v0.16.0/go.mod h1:yn7UURbUtPyrVJPGPq404EukNFxcm/foM+bV/bfcDsY= golang.org/x/term v0.17.0/go.mod h1:lLRBjIVuehSbZlaOtGMbcMncT+aqLLLmKrsjNrUguwk= -golang.org/x/term v0.43.0 h1:S4RLU2sB31O/NCl+zFN9Aru9A/Cq2aqKpTZJ6B+DwT4= -golang.org/x/term v0.43.0/go.mod h1:lrhlHNdQJHO+1qVYiHfFKVuVioJIheAc3fBSMFYEIsk= +golang.org/x/term v0.44.0 h1:0rLvDRCtNj0gZkyIXhCyOb2OAzEhLVqc4B+hrsBhrmc= +golang.org/x/term v0.44.0/go.mod h1:7ze4MdzUzLXpSAoFP1H0bOI9aXDqveSvatT5vKcFh2Y= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ= @@ -1467,10 +1452,9 @@ golang.org/x/text v0.3.7/go.mod h1:u+2+/6zg+i71rQMx5EYifcz6MCKuco9NR6JIITiCfzQ= golang.org/x/text v0.7.0/go.mod h1:mrYo+phRRbMaCq/xk9113O4dZlRixOauAjOtrjsXDZ8= golang.org/x/text v0.9.0/go.mod h1:e1OnstbJyHTd6l/uOt8jFFHp6TRDWZR/bV3emEE/zU8= golang.org/x/text v0.11.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= -golang.org/x/text v0.12.0/go.mod h1:TvPlkZtksWOMsz7fbANvkp4WM8x/WCo/om8BMLbz+aE= golang.org/x/text v0.14.0/go.mod h1:18ZOQIKpY8NJVqYksKHtTdi31H5itFRjB5/qKTNYzSU= -golang.org/x/text v0.37.0 h1:Cqjiwd9eSg8e0QAkyCaQTNHFIIzWtidPahFWR83rTrc= -golang.org/x/text v0.37.0/go.mod h1:a5sjxXGs9hsn/AJVwuElvCAo9v8QYLzvavO5z2PiM38= +golang.org/x/text v0.38.0 h1:sXmwo9DwP3OK9EZ7PqAdaooSGozfl/3a6/xJcbzPRhE= +golang.org/x/text v0.38.0/go.mod h1:YXZt3QhHUKYT53r2lLKFIVi6Ao1jdzrTR/KQ09qyxF4= golang.org/x/time v0.15.0 h1:bbrp8t3bGUeFOx08pvsMYRTCVSMk89u4tKbNOZbp88U= golang.org/x/time v0.15.0/go.mod h1:Y4YMaQmXwGQZoFaVFk4YpCt4FLQMYKZe9oeV/f4MSno= golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= diff --git a/go.mod b/go.mod index c35f56efc90..f3ee0c40b04 100644 --- a/go.mod +++ b/go.mod @@ -6,7 +6,7 @@ require ( github.com/BurntSushi/toml v1.6.0 github.com/Depado/ginprom v1.8.0 github.com/Masterminds/semver/v3 v3.5.0 - github.com/andybalholm/brotli v1.2.1 + github.com/andybalholm/brotli v1.2.2 github.com/aptos-labs/aptos-go-sdk v1.13.0 github.com/avast/retry-go/v4 v4.7.0 github.com/buger/jsonparser v1.2.0 @@ -83,7 +83,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260415165642-49f23e4d76cc github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-common/keystore v1.3.0 github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 github.com/smartcontractkit/chainlink-data-streams v1.1.0 diff --git a/go.sum b/go.sum index 4a6e4cdb995..2623a8d8642 100644 --- a/go.sum +++ b/go.sum @@ -116,8 +116,8 @@ github.com/alexbrainman/sspi v0.0.0-20210105120005-909beea2cc74 h1:Kk6a4nehpJ3Uu github.com/alexbrainman/sspi v0.0.0-20210105120005-909beea2cc74/go.mod h1:cEWa1LVoE5KvSD9ONXsZrj0z6KqySlCCNKHlLzbqAt4= github.com/allegro/bigcache v1.2.1 h1:hg1sY1raCwic3Vnsvje6TT7/pnZba83LeFck5NrFKSc= github.com/allegro/bigcache v1.2.1/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2ucNfQESPXM= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1155,8 +1155,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260415165642-49f23e4d76cc/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h1:t5VUHVFEdcqa0/faJiHWusuW+egKpqK3YwWZO4/yJto= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/integration-tests/go.mod b/integration-tests/go.mod index e58c8ec512f..66d5a515a58 100644 --- a/integration-tests/go.mod +++ b/integration-tests/go.mod @@ -33,7 +33,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260624154507-ea7ff77a0ddb github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260624154507-ea7ff77a0ddb github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-common/keystore v1.3.0 github.com/smartcontractkit/chainlink-deployments-framework v0.111.1-0.20260612191326-e31c0ae4cd54 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260810110946-8174b6bb7fc9 @@ -111,7 +111,7 @@ require ( github.com/VictoriaMetrics/fastcache v1.13.0 // indirect github.com/XSAM/otelsql v0.42.0 // indirect github.com/alecthomas/units v0.0.0-20240927000941-0f3dac36c52b // indirect - github.com/andybalholm/brotli v1.2.1 // indirect + github.com/andybalholm/brotli v1.2.2 // indirect github.com/apache/arrow-go/v18 v18.6.0 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/atombender/go-jsonschema v0.16.1-0.20240916205339-a74cd4e2851c // indirect diff --git a/integration-tests/go.sum b/integration-tests/go.sum index 9797d0f7820..f4d25c90633 100644 --- a/integration-tests/go.sum +++ b/integration-tests/go.sum @@ -134,8 +134,8 @@ github.com/allegro/bigcache v1.2.1/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2uc github.com/andres-erbsen/clock v0.0.0-20160526145045-9e14626cd129/go.mod h1:rFgpPQZYZ8vdbc+48xibu8ALc3yeyd64IhHS+PU6Yyg= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1397,8 +1397,8 @@ github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260616151800-9a3a31c4e194 h1:QxZkbKtQyPtVLYP4eMwc+VbXY7M5ve1deSiLZ2pOA+Y= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260616151800-9a3a31c4e194/go.mod h1:bNMFRxwWdgVFdSsFZRmsUUPoBUncU3RM765K99svIKM= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/integration-tests/load/go.mod b/integration-tests/load/go.mod index bd4e0a1ce63..d820c7ec189 100644 --- a/integration-tests/load/go.mod +++ b/integration-tests/load/go.mod @@ -24,7 +24,7 @@ require ( github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260624154507-ea7ff77a0ddb github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260624154507-ea7ff77a0ddb github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-deployments-framework v0.111.1-0.20260612191326-e31c0ae4cd54 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260810110946-8174b6bb7fc9 github.com/smartcontractkit/chainlink-testing-framework/framework v0.16.6-0.20260708113039-95f97b2d25e9 @@ -79,7 +79,7 @@ require ( github.com/VictoriaMetrics/fastcache v1.13.0 // indirect github.com/XSAM/otelsql v0.42.0 // indirect github.com/alecthomas/units v0.0.0-20240927000941-0f3dac36c52b // indirect - github.com/andybalholm/brotli v1.2.1 // indirect + github.com/andybalholm/brotli v1.2.2 // indirect github.com/apache/arrow-go/v18 v18.6.0 // indirect github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/armon/go-metrics v0.4.1 // indirect diff --git a/integration-tests/load/go.sum b/integration-tests/load/go.sum index 8a0749aeb8b..a477674b9ac 100644 --- a/integration-tests/load/go.sum +++ b/integration-tests/load/go.sum @@ -168,8 +168,8 @@ github.com/allegro/bigcache v1.2.1/go.mod h1:Cb/ax3seSYIx7SuZdm2G2xzfwmv3TPSk2uc github.com/andres-erbsen/clock v0.0.0-20160526145045-9e14626cd129/go.mod h1:rFgpPQZYZ8vdbc+48xibu8ALc3yeyd64IhHS+PU6Yyg= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1637,8 +1637,8 @@ github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260616151800-9a3a31c4e194 h1:QxZkbKtQyPtVLYP4eMwc+VbXY7M5ve1deSiLZ2pOA+Y= github.com/smartcontractkit/chainlink-ccv/deployment v0.0.2-0.20260616151800-9a3a31c4e194/go.mod h1:bNMFRxwWdgVFdSsFZRmsUUPoBUncU3RM765K99svIKM= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/system-tests/lib/cre/capabilities/node_config.go b/system-tests/lib/cre/capabilities/node_config.go index 678ab197278..7d01fef7318 100644 --- a/system-tests/lib/cre/capabilities/node_config.go +++ b/system-tests/lib/cre/capabilities/node_config.go @@ -4,6 +4,7 @@ import ( "fmt" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/clnode" + "github.com/smartcontractkit/chainlink/system-tests/lib/infra" ) diff --git a/system-tests/lib/cre/chiprouter/router.go b/system-tests/lib/cre/chiprouter/router.go index 366fb729bd7..8364c9f1c91 100644 --- a/system-tests/lib/cre/chiprouter/router.go +++ b/system-tests/lib/cre/chiprouter/router.go @@ -13,6 +13,7 @@ import ( "github.com/smartcontractkit/chainlink-testing-framework/framework" ctfchiprouterclient "github.com/smartcontractkit/chainlink-testing-framework/framework/components/chiprouter/client" + envconfig "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/config" ) diff --git a/system-tests/lib/cre/contracts/contracts.go b/system-tests/lib/cre/contracts/contracts.go index 41695153af9..59b236b9efe 100644 --- a/system-tests/lib/cre/contracts/contracts.go +++ b/system-tests/lib/cre/contracts/contracts.go @@ -8,19 +8,15 @@ import ( "github.com/pkg/errors" "github.com/rs/zerolog" - "github.com/smartcontractkit/chainlink-testing-framework/framework" - - "github.com/smartcontractkit/chainlink-evm/gethwrappers/data-feeds/generated/data_feeds_cache" - - cldchangeset "github.com/smartcontractkit/cld-changesets/pkg/cldfutil/changeset" - "github.com/smartcontractkit/chainlink-deployments-framework/datastore" cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" + "github.com/smartcontractkit/chainlink-evm/gethwrappers/data-feeds/generated/data_feeds_cache" + "github.com/smartcontractkit/chainlink-testing-framework/framework" + cldchangeset "github.com/smartcontractkit/cld-changesets/pkg/cldfutil/changeset" df_changeset "github.com/smartcontractkit/chainlink/deployment/data-feeds/changeset" df_changeset_types "github.com/smartcontractkit/chainlink/deployment/data-feeds/changeset/types" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" ) diff --git a/system-tests/lib/cre/contracts/keystone.go b/system-tests/lib/cre/contracts/keystone.go index 7d5193bd7ec..fc67aa1bc90 100644 --- a/system-tests/lib/cre/contracts/keystone.go +++ b/system-tests/lib/cre/contracts/keystone.go @@ -24,6 +24,7 @@ import ( "github.com/smartcontractkit/chainlink-deployments-framework/offchain" "github.com/smartcontractkit/chainlink-deployments-framework/operations" capabilities_registry_v2 "github.com/smartcontractkit/chainlink-evm/gethwrappers/workflow/generated/capabilities_registry_wrapper_v2" + "github.com/smartcontractkit/chainlink/deployment" "github.com/smartcontractkit/chainlink/deployment/cre/capabilities_registry/v2/changeset/operations/contracts" cap_reg_v2_seq "github.com/smartcontractkit/chainlink/deployment/cre/capabilities_registry/v2/changeset/sequences" diff --git a/system-tests/lib/cre/contracts/keystone_test.go b/system-tests/lib/cre/contracts/keystone_test.go index 54cd3270f2a..5e5a83bc0c1 100644 --- a/system-tests/lib/cre/contracts/keystone_test.go +++ b/system-tests/lib/cre/contracts/keystone_test.go @@ -13,14 +13,13 @@ import ( "google.golang.org/grpc" chainselectors "github.com/smartcontractkit/chain-selectors" - + "github.com/smartcontractkit/chainlink-common/keystore/corekeys/p2pkey" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" cldf_offchain "github.com/smartcontractkit/chainlink-deployments-framework/offchain" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" nodev1 "github.com/smartcontractkit/chainlink-protos/job-distributor/v1/node" "github.com/smartcontractkit/chainlink-protos/job-distributor/v1/shared/ptypes" - "github.com/smartcontractkit/chainlink-common/keystore/corekeys/p2pkey" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" ) diff --git a/system-tests/lib/cre/don.go b/system-tests/lib/cre/don.go index bb5ceef73b2..ef0cad2ffd3 100644 --- a/system-tests/lib/cre/don.go +++ b/system-tests/lib/cre/don.go @@ -15,10 +15,10 @@ import ( "github.com/ethereum/go-ethereum/accounts/abi/bind" "github.com/ethereum/go-ethereum/common" "github.com/pkg/errors" - chainselectors "github.com/smartcontractkit/chain-selectors" "golang.org/x/sync/errgroup" "google.golang.org/grpc" + chainselectors "github.com/smartcontractkit/chain-selectors" vault_helpers "github.com/smartcontractkit/chainlink-common/pkg/capabilities/actions/vault" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" @@ -31,6 +31,7 @@ import ( "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/clnode" "github.com/smartcontractkit/chainlink-testing-framework/seth" + cre_offchain "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" offchain_ops "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain/changeset/operations" "github.com/smartcontractkit/chainlink/deployment/environment/web/sdk/client" diff --git a/system-tests/lib/cre/don/config/config.go b/system-tests/lib/cre/don/config/config.go index eb1f324db4e..bea11fb54e9 100644 --- a/system-tests/lib/cre/don/config/config.go +++ b/system-tests/lib/cre/don/config/config.go @@ -16,18 +16,14 @@ import ( "go.uber.org/zap/zapcore" chain_selectors "github.com/smartcontractkit/chain-selectors" - "github.com/smartcontractkit/libocr/commontypes" - commonconfig "github.com/smartcontractkit/chainlink-common/pkg/config" "github.com/smartcontractkit/chainlink-common/pkg/sqlutil" "github.com/smartcontractkit/chainlink-evm/pkg/config/chaintype" evmconfigtoml "github.com/smartcontractkit/chainlink-evm/pkg/config/toml" "github.com/smartcontractkit/chainlink-testing-framework/framework" + "github.com/smartcontractkit/libocr/commontypes" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" - coretoml "github.com/smartcontractkit/chainlink/v2/core/config/toml" - corechainlink "github.com/smartcontractkit/chainlink/v2/core/services/chainlink" - libc "github.com/smartcontractkit/chainlink/system-tests/lib/conversions" "github.com/smartcontractkit/chainlink/system-tests/lib/cre" crecontracts "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" @@ -36,6 +32,8 @@ import ( "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains/solana" stellchain "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains/stellar" "github.com/smartcontractkit/chainlink/system-tests/lib/infra" + coretoml "github.com/smartcontractkit/chainlink/v2/core/config/toml" + corechainlink "github.com/smartcontractkit/chainlink/v2/core/services/chainlink" ) const TronEVMChainID = 3360022319 @@ -270,6 +268,7 @@ func generateNodeTomlConfig(input cre.GenerateConfigsInput, nodeConfigTransforme func baseNodeConfig(commonInputs *commonInputs, donMetadata *cre.DonMetadata, nodeMetadata *cre.NodeMetadata) corechainlink.Config { c := corechainlink.Config{ Core: coretoml.Core{ + InsecureFastScrypt: new(true), Feature: coretoml.Feature{ LogPoller: new(true), }, diff --git a/system-tests/lib/cre/don/secrets/secrets.go b/system-tests/lib/cre/don/secrets/secrets.go index 1cc0a1b1e16..1b362923948 100644 --- a/system-tests/lib/cre/don/secrets/secrets.go +++ b/system-tests/lib/cre/don/secrets/secrets.go @@ -10,11 +10,11 @@ import ( "github.com/pelletier/go-toml/v2" "github.com/pkg/errors" - "github.com/smartcontractkit/smdkg/dkgocr/dkgocrtypes" - "github.com/smartcontractkit/chainlink-common/keystore/corekeys/aptoskey" "github.com/smartcontractkit/chainlink-common/keystore/corekeys/p2pkey" "github.com/smartcontractkit/chainlink-common/keystore/corekeys/stellarkey" + "github.com/smartcontractkit/smdkg/dkgocr/dkgocrtypes" + "github.com/smartcontractkit/chainlink/system-tests/lib/crypto" ) diff --git a/system-tests/lib/cre/don_test.go b/system-tests/lib/cre/don_test.go index 0e75d717d7d..049a81cbef1 100644 --- a/system-tests/lib/cre/don_test.go +++ b/system-tests/lib/cre/don_test.go @@ -17,6 +17,7 @@ import ( nodev1 "github.com/smartcontractkit/chainlink-protos/job-distributor/v1/node" "github.com/smartcontractkit/chainlink-testing-framework/framework/clclient" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + webclient "github.com/smartcontractkit/chainlink/deployment/environment/web/sdk/client" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/secrets" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" diff --git a/system-tests/lib/cre/environment/blockchains/aptos/aptos.go b/system-tests/lib/cre/environment/blockchains/aptos/aptos.go index f267270ea82..e1b963698cd 100644 --- a/system-tests/lib/cre/environment/blockchains/aptos/aptos.go +++ b/system-tests/lib/cre/environment/blockchains/aptos/aptos.go @@ -15,10 +15,10 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" cldf_aptos "github.com/smartcontractkit/chainlink-deployments-framework/chain/aptos" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" "github.com/smartcontractkit/chainlink/system-tests/lib/infra" ) diff --git a/system-tests/lib/cre/environment/blockchains/blockchains.go b/system-tests/lib/cre/environment/blockchains/blockchains.go index 5f5e015a428..0bff30fe79e 100644 --- a/system-tests/lib/cre/environment/blockchains/blockchains.go +++ b/system-tests/lib/cre/environment/blockchains/blockchains.go @@ -9,7 +9,6 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/logger" cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" - "github.com/smartcontractkit/chainlink-testing-framework/framework" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" ) diff --git a/system-tests/lib/cre/environment/blockchains/evm/evm.go b/system-tests/lib/cre/environment/blockchains/evm/evm.go index 13f5d2dbceb..b5cfb3f39a9 100644 --- a/system-tests/lib/cre/environment/blockchains/evm/evm.go +++ b/system-tests/lib/cre/environment/blockchains/evm/evm.go @@ -14,13 +14,13 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" cldf_evm_provider "github.com/smartcontractkit/chainlink-deployments-framework/chain/evm/provider" "github.com/smartcontractkit/chainlink-deployments-framework/chain/evm/provider/rpcclient" "github.com/smartcontractkit/chainlink-testing-framework/framework" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" "github.com/smartcontractkit/chainlink-testing-framework/seth" + libc "github.com/smartcontractkit/chainlink/system-tests/lib/conversions" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" libfunding "github.com/smartcontractkit/chainlink/system-tests/lib/funding" diff --git a/system-tests/lib/cre/environment/blockchains/sets/sets.go b/system-tests/lib/cre/environment/blockchains/sets/sets.go index ecc3222d712..7e94e576da9 100644 --- a/system-tests/lib/cre/environment/blockchains/sets/sets.go +++ b/system-tests/lib/cre/environment/blockchains/sets/sets.go @@ -4,6 +4,7 @@ import ( "github.com/rs/zerolog" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains/aptos" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains/evm" diff --git a/system-tests/lib/cre/environment/blockchains/solana/solana.go b/system-tests/lib/cre/environment/blockchains/solana/solana.go index 1403d094be5..5cc36ca09c6 100644 --- a/system-tests/lib/cre/environment/blockchains/solana/solana.go +++ b/system-tests/lib/cre/environment/blockchains/solana/solana.go @@ -16,15 +16,14 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - solCommonUtil "github.com/smartcontractkit/chainlink-ccip/chains/solana/utils/common" + "github.com/smartcontractkit/chainlink-common/pkg/logger" cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" cldf_solana "github.com/smartcontractkit/chainlink-deployments-framework/chain/solana" cldf_solana_provider "github.com/smartcontractkit/chainlink-deployments-framework/chain/solana/provider" - - "github.com/smartcontractkit/chainlink-common/pkg/logger" "github.com/smartcontractkit/chainlink-testing-framework/framework" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + "github.com/smartcontractkit/chainlink/deployment/utils/solutils" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" libfunding "github.com/smartcontractkit/chainlink/system-tests/lib/funding" diff --git a/system-tests/lib/cre/environment/blockchains/stellar/stellar.go b/system-tests/lib/cre/environment/blockchains/stellar/stellar.go index f46b73117af..960523d6f3e 100644 --- a/system-tests/lib/cre/environment/blockchains/stellar/stellar.go +++ b/system-tests/lib/cre/environment/blockchains/stellar/stellar.go @@ -13,7 +13,6 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" cldf_stellar_provider "github.com/smartcontractkit/chainlink-deployments-framework/chain/stellar/provider" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" diff --git a/system-tests/lib/cre/environment/blockchains/tron/tron.go b/system-tests/lib/cre/environment/blockchains/tron/tron.go index 4cd852df5e2..fa6512ff58b 100644 --- a/system-tests/lib/cre/environment/blockchains/tron/tron.go +++ b/system-tests/lib/cre/environment/blockchains/tron/tron.go @@ -13,12 +13,11 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" cldf_tron "github.com/smartcontractkit/chainlink-deployments-framework/chain/tron" tronprovider "github.com/smartcontractkit/chainlink-deployments-framework/chain/tron/provider" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + libc "github.com/smartcontractkit/chainlink/system-tests/lib/conversions" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" "github.com/smartcontractkit/chainlink/system-tests/lib/infra" diff --git a/system-tests/lib/cre/environment/dons.go b/system-tests/lib/cre/environment/dons.go index 77962761ce0..134e6eb82ec 100644 --- a/system-tests/lib/cre/environment/dons.go +++ b/system-tests/lib/cre/environment/dons.go @@ -15,7 +15,6 @@ import ( "golang.org/x/sync/errgroup" chainselectors "github.com/smartcontractkit/chain-selectors" - "github.com/smartcontractkit/chainlink-testing-framework/framework" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" ns "github.com/smartcontractkit/chainlink-testing-framework/framework/components/simple_node_set" diff --git a/system-tests/lib/cre/environment/environment.go b/system-tests/lib/cre/environment/environment.go index f2c9f8ddac7..ac6cf7fcfb2 100644 --- a/system-tests/lib/cre/environment/environment.go +++ b/system-tests/lib/cre/environment/environment.go @@ -12,14 +12,12 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - "github.com/smartcontractkit/chainlink-common/pkg/logger" cldf_chain "github.com/smartcontractkit/chainlink-deployments-framework/chain" "github.com/smartcontractkit/chainlink-deployments-framework/datastore" cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" focr "github.com/smartcontractkit/chainlink-deployments-framework/offchain/ocr" "github.com/smartcontractkit/chainlink-deployments-framework/operations" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" ctfchiprouter "github.com/smartcontractkit/chainlink-testing-framework/framework/components/chiprouter" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/jd" diff --git a/system-tests/lib/cre/environment/jobs.go b/system-tests/lib/cre/environment/jobs.go index 01826738faa..bdae59a0184 100644 --- a/system-tests/lib/cre/environment/jobs.go +++ b/system-tests/lib/cre/environment/jobs.go @@ -9,12 +9,10 @@ import ( pkgerrors "github.com/pkg/errors" "github.com/rs/zerolog" - - cldf_jd "github.com/smartcontractkit/chainlink-deployments-framework/offchain/jd" - "google.golang.org/grpc/credentials" "google.golang.org/grpc/credentials/insecure" + cldf_jd "github.com/smartcontractkit/chainlink-deployments-framework/offchain/jd" "github.com/smartcontractkit/chainlink-testing-framework/framework" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/jd" diff --git a/system-tests/lib/cre/features/aptos/aptos.go b/system-tests/lib/cre/features/aptos/aptos.go index d4106b086bf..4917b7af553 100644 --- a/system-tests/lib/cre/features/aptos/aptos.go +++ b/system-tests/lib/cre/features/aptos/aptos.go @@ -10,10 +10,11 @@ import ( "github.com/Masterminds/semver/v3" pkgerrors "github.com/pkg/errors" "github.com/rs/zerolog" - chainselectors "github.com/smartcontractkit/chain-selectors" + chainselectors "github.com/smartcontractkit/chain-selectors" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" + "github.com/smartcontractkit/chainlink/deployment/cre/ocr3" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" "github.com/smartcontractkit/chainlink/system-tests/lib/cre" diff --git a/system-tests/lib/cre/features/aptos/aptos_forwarder.go b/system-tests/lib/cre/features/aptos/aptos_forwarder.go index d3db9faedd7..40b8cdcf1f1 100644 --- a/system-tests/lib/cre/features/aptos/aptos_forwarder.go +++ b/system-tests/lib/cre/features/aptos/aptos_forwarder.go @@ -15,9 +15,10 @@ import ( "github.com/rs/zerolog" "github.com/sethvargo/go-retry" - "github.com/smartcontractkit/chainlink-aptos/bindings/bind" - aptosplatform "github.com/smartcontractkit/chainlink-aptos/bindings/platform" + "github.com/smartcontractkit/chainlink-aptos/bindings/bind" //nolint:depguard // used for tests + aptosplatform "github.com/smartcontractkit/chainlink-aptos/bindings/platform" //nolint:depguard // used for tests "github.com/smartcontractkit/chainlink-deployments-framework/datastore" + aptoschangeset "github.com/smartcontractkit/chainlink/deployment/data-feeds/changeset/aptos" "github.com/smartcontractkit/chainlink/system-tests/lib/cre" crecontracts "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" diff --git a/system-tests/lib/cre/features/aptos/aptos_helpers.go b/system-tests/lib/cre/features/aptos/aptos_helpers.go index 1621d46d4bb..172e6dc4867 100644 --- a/system-tests/lib/cre/features/aptos/aptos_helpers.go +++ b/system-tests/lib/cre/features/aptos/aptos_helpers.go @@ -6,6 +6,7 @@ import ( aptossdk "github.com/aptos-labs/aptos-go-sdk" pkgerrors "github.com/pkg/errors" + chainselectors "github.com/smartcontractkit/chain-selectors" creblockchains "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" diff --git a/system-tests/lib/cre/features/aptos/aptos_test.go b/system-tests/lib/cre/features/aptos/aptos_test.go index 46dbec7abea..3fc3175af20 100644 --- a/system-tests/lib/cre/features/aptos/aptos_test.go +++ b/system-tests/lib/cre/features/aptos/aptos_test.go @@ -20,6 +20,7 @@ import ( "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/clnode" ns "github.com/smartcontractkit/chainlink-testing-framework/framework/components/simple_node_set" + keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" "github.com/smartcontractkit/chainlink/system-tests/lib/cre" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/secrets" diff --git a/system-tests/lib/cre/features/aptos/aptos_workers.go b/system-tests/lib/cre/features/aptos/aptos_workers.go index 9e232af7ca5..7796108fef4 100644 --- a/system-tests/lib/cre/features/aptos/aptos_workers.go +++ b/system-tests/lib/cre/features/aptos/aptos_workers.go @@ -11,9 +11,10 @@ import ( "dario.cat/mergo" pkgerrors "github.com/pkg/errors" - chainselectors "github.com/smartcontractkit/chain-selectors" "golang.org/x/sync/errgroup" + chainselectors "github.com/smartcontractkit/chain-selectors" + "github.com/smartcontractkit/chainlink/deployment/cre/jobs" crejobops "github.com/smartcontractkit/chainlink/deployment/cre/jobs/operations" jobtypes "github.com/smartcontractkit/chainlink/deployment/cre/jobs/types" diff --git a/system-tests/lib/cre/features/consensus/v2/consensus.go b/system-tests/lib/cre/features/consensus/v2/consensus.go index 815a47285a2..cdf3077034b 100644 --- a/system-tests/lib/cre/features/consensus/v2/consensus.go +++ b/system-tests/lib/cre/features/consensus/v2/consensus.go @@ -13,18 +13,16 @@ import ( "github.com/pkg/errors" "github.com/rs/zerolog" + chainselectors "github.com/smartcontractkit/chain-selectors" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" - chainselectors "github.com/smartcontractkit/chain-selectors" - cre_jobs "github.com/smartcontractkit/chainlink/deployment/cre/jobs" cre_jobs_ops "github.com/smartcontractkit/chainlink/deployment/cre/jobs/operations" job_types "github.com/smartcontractkit/chainlink/deployment/cre/jobs/types" "github.com/smartcontractkit/chainlink/deployment/cre/ocr3" "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" credon "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don" diff --git a/system-tests/lib/cre/features/cron/cron.go b/system-tests/lib/cre/features/cron/cron.go index 4d64b45be22..72ff6ee37ad 100644 --- a/system-tests/lib/cre/features/cron/cron.go +++ b/system-tests/lib/cre/features/cron/cron.go @@ -7,8 +7,8 @@ import ( capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" - keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" + keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" "github.com/smartcontractkit/chainlink/system-tests/lib/cre" ) diff --git a/system-tests/lib/cre/features/don_time/don_time.go b/system-tests/lib/cre/features/don_time/don_time.go index 0fff2bc6f5e..4ee6277bfc7 100644 --- a/system-tests/lib/cre/features/don_time/don_time.go +++ b/system-tests/lib/cre/features/don_time/don_time.go @@ -19,7 +19,6 @@ import ( "github.com/smartcontractkit/chainlink/deployment/cre/ocr3" "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/jobs" diff --git a/system-tests/lib/cre/features/evm/v2/evm.go b/system-tests/lib/cre/features/evm/v2/evm.go index a24339f2daf..5ce4ac1dfbb 100644 --- a/system-tests/lib/cre/features/evm/v2/evm.go +++ b/system-tests/lib/cre/features/evm/v2/evm.go @@ -21,9 +21,14 @@ import ( "google.golang.org/protobuf/types/known/durationpb" chainselectors "github.com/smartcontractkit/chain-selectors" - + capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" + "github.com/smartcontractkit/chainlink-deployments-framework/datastore" + cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" + "github.com/smartcontractkit/chainlink-deployments-framework/operations" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + + "github.com/smartcontractkit/chainlink/deployment/cre/forwarder" cre_jobs "github.com/smartcontractkit/chainlink/deployment/cre/jobs" cre_jobs_ops "github.com/smartcontractkit/chainlink/deployment/cre/jobs/operations" cre_jobs_pkg "github.com/smartcontractkit/chainlink/deployment/cre/jobs/pkg" @@ -32,9 +37,7 @@ import ( "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" ks_contracts_op "github.com/smartcontractkit/chainlink/deployment/keystone/changeset/operations/contracts" - - capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" - "github.com/smartcontractkit/chainlink-deployments-framework/datastore" + libc "github.com/smartcontractkit/chainlink/system-tests/lib/conversions" "github.com/smartcontractkit/chainlink/system-tests/lib/cre" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" credon "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don" @@ -43,12 +46,6 @@ import ( "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/features/jobhelpers" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/flags" - - cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" - "github.com/smartcontractkit/chainlink-deployments-framework/operations" - "github.com/smartcontractkit/chainlink/deployment/cre/forwarder" - - libc "github.com/smartcontractkit/chainlink/system-tests/lib/conversions" ) const ( diff --git a/system-tests/lib/cre/features/http_action/http_action.go b/system-tests/lib/cre/features/http_action/http_action.go index 2d8be642ef4..2690bc37711 100644 --- a/system-tests/lib/cre/features/http_action/http_action.go +++ b/system-tests/lib/cre/features/http_action/http_action.go @@ -12,16 +12,15 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" + cre_jobs "github.com/smartcontractkit/chainlink/deployment/cre/jobs" cre_jobs_ops "github.com/smartcontractkit/chainlink/deployment/cre/jobs/operations" "github.com/smartcontractkit/chainlink/deployment/cre/jobs/pkg" job_types "github.com/smartcontractkit/chainlink/deployment/cre/jobs/types" "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" credon "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/jobs" diff --git a/system-tests/lib/cre/features/http_trigger/http_trigger.go b/system-tests/lib/cre/features/http_trigger/http_trigger.go index e63ab0712d6..0f842f243cd 100644 --- a/system-tests/lib/cre/features/http_trigger/http_trigger.go +++ b/system-tests/lib/cre/features/http_trigger/http_trigger.go @@ -12,16 +12,15 @@ import ( "github.com/rs/zerolog" chainselectors "github.com/smartcontractkit/chain-selectors" - capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" + cre_jobs "github.com/smartcontractkit/chainlink/deployment/cre/jobs" cre_jobs_ops "github.com/smartcontractkit/chainlink/deployment/cre/jobs/operations" "github.com/smartcontractkit/chainlink/deployment/cre/jobs/pkg" job_types "github.com/smartcontractkit/chainlink/deployment/cre/jobs/types" "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" credon "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/jobs" diff --git a/system-tests/lib/cre/features/solana/v2/solana.go b/system-tests/lib/cre/features/solana/v2/solana.go index 0816ed4c50f..2d204fad595 100644 --- a/system-tests/lib/cre/features/solana/v2/solana.go +++ b/system-tests/lib/cre/features/solana/v2/solana.go @@ -16,14 +16,15 @@ import ( "github.com/pelletier/go-toml/v2" "github.com/pkg/errors" "github.com/rs/zerolog" - chainselectors "github.com/smartcontractkit/chain-selectors" "golang.org/x/sync/errgroup" "google.golang.org/protobuf/types/known/durationpb" + chainselectors "github.com/smartcontractkit/chain-selectors" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" "github.com/smartcontractkit/chainlink-deployments-framework/datastore" "github.com/smartcontractkit/chainlink-deployments-framework/operations" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" + commonchangeset "github.com/smartcontractkit/chainlink/deployment/common/changeset" "github.com/smartcontractkit/chainlink/deployment/cre/forwarder" cre_sol "github.com/smartcontractkit/chainlink/deployment/cre/forwarder/solana" diff --git a/system-tests/lib/cre/features/stellar/stellar.go b/system-tests/lib/cre/features/stellar/stellar.go index 460e34a81f9..093f7b94f7c 100644 --- a/system-tests/lib/cre/features/stellar/stellar.go +++ b/system-tests/lib/cre/features/stellar/stellar.go @@ -6,8 +6,8 @@ import ( "github.com/pkg/errors" "github.com/rs/zerolog" - chainselectors "github.com/smartcontractkit/chain-selectors" + chainselectors "github.com/smartcontractkit/chain-selectors" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" diff --git a/system-tests/lib/cre/features/vault/vault.go b/system-tests/lib/cre/features/vault/vault.go index aded1e06cd2..d3425a77989 100644 --- a/system-tests/lib/cre/features/vault/vault.go +++ b/system-tests/lib/cre/features/vault/vault.go @@ -21,33 +21,31 @@ import ( "google.golang.org/protobuf/types/known/durationpb" chainselectors "github.com/smartcontractkit/chain-selectors" - "github.com/smartcontractkit/smdkg/dkgocr/dkgocrtypes" - - "github.com/smartcontractkit/chainlink-testing-framework/framework" - "github.com/smartcontractkit/chainlink/deployment/cre/ocr3/ocr3_1" - depcontracts "github.com/smartcontractkit/chainlink/deployment/cre/ocr3/ocr3_1/changeset/operations/contracts" - coretoml "github.com/smartcontractkit/chainlink/v2/core/config/toml" - corechainlink "github.com/smartcontractkit/chainlink/v2/core/services/chainlink" - vaultprotos "github.com/smartcontractkit/chainlink-common/pkg/capabilities/actions/vault" capabilitiespb "github.com/smartcontractkit/chainlink-common/pkg/capabilities/pb" cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" "github.com/smartcontractkit/chainlink-deployments-framework/operations" kcr "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/capabilities_registry_1_1_0" ocr3_capability "github.com/smartcontractkit/chainlink-evm/gethwrappers/keystone/generated/ocr3_capability_1_0_0" + "github.com/smartcontractkit/chainlink-testing-framework/framework" + "github.com/smartcontractkit/smdkg/dkgocr/dkgocrtypes" + "github.com/smartcontractkit/chainlink/deployment/cre/common/strategies" cre_jobs "github.com/smartcontractkit/chainlink/deployment/cre/jobs" cre_jobs_ops "github.com/smartcontractkit/chainlink/deployment/cre/jobs/operations" "github.com/smartcontractkit/chainlink/deployment/cre/jobs/pkg" job_types "github.com/smartcontractkit/chainlink/deployment/cre/jobs/types" + "github.com/smartcontractkit/chainlink/deployment/cre/ocr3/ocr3_1" + depcontracts "github.com/smartcontractkit/chainlink/deployment/cre/ocr3/ocr3_1/changeset/operations/contracts" creseq "github.com/smartcontractkit/chainlink/deployment/cre/ocr3/v2/changeset/sequences" "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" ks_contracts_op "github.com/smartcontractkit/chainlink/deployment/keystone/changeset/operations/contracts" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/jobs" + coretoml "github.com/smartcontractkit/chainlink/v2/core/config/toml" + corechainlink "github.com/smartcontractkit/chainlink/v2/core/services/chainlink" ) const flag = cre.VaultCapability diff --git a/system-tests/lib/cre/grpc_source_mock/auth.go b/system-tests/lib/cre/grpc_source_mock/auth.go index f8f929a3394..b36127ed6f1 100644 --- a/system-tests/lib/cre/grpc_source_mock/auth.go +++ b/system-tests/lib/cre/grpc_source_mock/auth.go @@ -92,7 +92,9 @@ func NewJWTAuthInterceptor(authProvider NodeAuthProvider) grpc.UnaryServerInterc logger := slog.New(slog.NewTextHandler(os.Stdout, &slog.HandlerOptions{ Level: slog.LevelDebug, })).With("logger", "grpc_source_mock.JWTAuthInterceptor") - authenticator := jwt.NewNodeJWTAuthenticator(authProvider, logger) + authenticator := jwt.NodeJWTAuthenticatorConfig{ + SLogger: logger, + }.New(authProvider) return func( ctx context.Context, diff --git a/system-tests/lib/cre/grpc_source_mock/auth_test.go b/system-tests/lib/cre/grpc_source_mock/auth_test.go new file mode 100644 index 00000000000..f53110f85a9 --- /dev/null +++ b/system-tests/lib/cre/grpc_source_mock/auth_test.go @@ -0,0 +1,32 @@ +package grpcsourcemock + +import ( + "context" + "testing" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/status" +) + +func TestNewJWTAuthInterceptor(t *testing.T) { + t.Parallel() + provider := &AcceptAllAuthProvider{} + interceptor := NewJWTAuthInterceptor(provider) + require.NotNil(t, interceptor) + + // Call interceptor without bearer token in context; expect unauthenticated error + ctx := context.Background() + handler := func(ctx context.Context, req any) (any, error) { + return "ok", nil + } + + res, err := interceptor(ctx, "req", &grpc.UnaryServerInfo{}, handler) + assert.Nil(t, res) + require.Error(t, err) + st, ok := status.FromError(err) + require.True(t, ok) + assert.Equal(t, codes.Unauthenticated, st.Code()) +} diff --git a/system-tests/lib/cre/grpc_source_mock/server.go b/system-tests/lib/cre/grpc_source_mock/server.go index 0bef4b199d1..8cbbf4ca213 100644 --- a/system-tests/lib/cre/grpc_source_mock/server.go +++ b/system-tests/lib/cre/grpc_source_mock/server.go @@ -10,9 +10,8 @@ import ( "google.golang.org/grpc" - sourcesv1 "github.com/smartcontractkit/chainlink-protos/workflows/go/sources" - "github.com/smartcontractkit/chainlink-common/pkg/workflows/privateregistry" + sourcesv1 "github.com/smartcontractkit/chainlink-protos/workflows/go/sources" ) const ( diff --git a/system-tests/lib/cre/sharding/sharding.go b/system-tests/lib/cre/sharding/sharding.go index bb6562bb4dd..dd4c967eb33 100644 --- a/system-tests/lib/cre/sharding/sharding.go +++ b/system-tests/lib/cre/sharding/sharding.go @@ -29,7 +29,6 @@ import ( ocr3_contracts "github.com/smartcontractkit/chainlink/deployment/cre/ocr3/v2/changeset/operations/contracts" "github.com/smartcontractkit/chainlink/deployment/cre/pkg/offchain" shard_config_changeset "github.com/smartcontractkit/chainlink/deployment/cre/shard_config/v1/changeset" - "github.com/smartcontractkit/chainlink/system-tests/lib/cre" crecontracts "github.com/smartcontractkit/chainlink/system-tests/lib/cre/contracts" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/jobs" diff --git a/system-tests/lib/cre/types.go b/system-tests/lib/cre/types.go index 2ce0687d527..b9aa6000890 100644 --- a/system-tests/lib/cre/types.go +++ b/system-tests/lib/cre/types.go @@ -24,22 +24,21 @@ import ( "github.com/smartcontractkit/chainlink-deployments-framework/datastore" cldf "github.com/smartcontractkit/chainlink-deployments-framework/deployment" jobv1 "github.com/smartcontractkit/chainlink-protos/job-distributor/v1/job" + "github.com/smartcontractkit/chainlink-testing-framework/framework" + "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" + "github.com/smartcontractkit/chainlink-testing-framework/framework/components/clnode" + ns "github.com/smartcontractkit/chainlink-testing-framework/framework/components/simple_node_set" + ks_sol "github.com/smartcontractkit/chainlink/deployment/cre/forwarder/solana" ks_stellar "github.com/smartcontractkit/chainlink/deployment/cre/forwarder/stellar" - coretoml "github.com/smartcontractkit/chainlink/v2/core/config/toml" - corechainlink "github.com/smartcontractkit/chainlink/v2/core/services/chainlink" - "github.com/smartcontractkit/chainlink/deployment/cre/ocr3" keystone_changeset "github.com/smartcontractkit/chainlink/deployment/keystone/changeset" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/don/secrets" "github.com/smartcontractkit/chainlink/system-tests/lib/cre/environment/blockchains" "github.com/smartcontractkit/chainlink/system-tests/lib/crypto" "github.com/smartcontractkit/chainlink/system-tests/lib/infra" - - "github.com/smartcontractkit/chainlink-testing-framework/framework" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/blockchain" - "github.com/smartcontractkit/chainlink-testing-framework/framework/components/clnode" - ns "github.com/smartcontractkit/chainlink-testing-framework/framework/components/simple_node_set" + coretoml "github.com/smartcontractkit/chainlink/v2/core/config/toml" + corechainlink "github.com/smartcontractkit/chainlink/v2/core/services/chainlink" ) const EnvironmentName = "local-cre" diff --git a/system-tests/lib/cre/vault/jwt_auth.go b/system-tests/lib/cre/vault/jwt_auth.go index 6d90f6d3ec1..89f9bf4eed0 100644 --- a/system-tests/lib/cre/vault/jwt_auth.go +++ b/system-tests/lib/cre/vault/jwt_auth.go @@ -24,6 +24,7 @@ import ( jsonrpc "github.com/smartcontractkit/chainlink-common/pkg/jsonrpc2" "github.com/smartcontractkit/chainlink-testing-framework/framework" + vaultcap "github.com/smartcontractkit/chainlink/v2/core/capabilities/vault" ) diff --git a/system-tests/lib/cre/vault/jwt_auth_test.go b/system-tests/lib/cre/vault/jwt_auth_test.go index ac5e21fedc4..53bbc4ca8e1 100644 --- a/system-tests/lib/cre/vault/jwt_auth_test.go +++ b/system-tests/lib/cre/vault/jwt_auth_test.go @@ -13,6 +13,7 @@ import ( "github.com/smartcontractkit/chainlink-common/pkg/settings/cresettings" "github.com/smartcontractkit/chainlink-common/pkg/settings/limits" linkingclient "github.com/smartcontractkit/chainlink-protos/linking-service/go/v1" + vaultcap "github.com/smartcontractkit/chainlink/v2/core/capabilities/vault" "github.com/smartcontractkit/chainlink/v2/core/capabilities/vault/vaulttypes" "github.com/smartcontractkit/chainlink/v2/core/logger" diff --git a/system-tests/lib/cre/vault/vault.go b/system-tests/lib/cre/vault/vault.go index e5ae8a8a7ab..4bb4bc9b381 100644 --- a/system-tests/lib/cre/vault/vault.go +++ b/system-tests/lib/cre/vault/vault.go @@ -8,6 +8,7 @@ import ( "github.com/scylladb/go-reflectx" "github.com/smartcontractkit/chainlink-testing-framework/framework/components/postgres" + "github.com/smartcontractkit/chainlink/v2/core/services/ocr2/plugins/vault" ) diff --git a/system-tests/lib/cre/workflow/compile.go b/system-tests/lib/cre/workflow/compile.go index fea3d162ac6..d46456171df 100644 --- a/system-tests/lib/cre/workflow/compile.go +++ b/system-tests/lib/cre/workflow/compile.go @@ -12,6 +12,8 @@ import ( "github.com/andybalholm/brotli" "github.com/pkg/errors" + + "github.com/smartcontractkit/chainlink-common/pkg/wasmbuild" ) type Language = string @@ -112,18 +114,16 @@ func compileTSWorkflow(ctx context.Context, workflowFilePath, workflowName, outp func compileGoWorkflow(ctx context.Context, workflowFilePath, workflowName, outputDir string) (string, error) { workflowWasmPath := filepath.Join(outputDir, workflowName+".wasm") - goModTidyCmd := exec.CommandContext(ctx, "go", "mod", "tidy") - goModTidyCmd.Dir = filepath.Dir(workflowFilePath) - if output, err := goModTidyCmd.CombinedOutput(); err != nil { - return "", errors.Wrapf(err, "failed to run go mod tidy: %s", string(output)) + pkgDir := filepath.Dir(workflowFilePath) + wasmBytes, err := wasmbuild.Compile(ctx, wasmbuild.Config{ + PkgDir: pkgDir, + }) + if err != nil { + return "", errors.Wrap(err, "failed to compile workflow") } - compileCmd := exec.CommandContext(ctx, "go", "build", "-o", workflowWasmPath, filepath.Base(workflowFilePath)) // #nosec G204 -- we control the value of the cmd so the lint/sec error is a false positive - compileCmd.Dir = filepath.Dir(workflowFilePath) - compileCmd.Env = append(os.Environ(), "CGO_ENABLED=0", "GOOS=wasip1", "GOARCH=wasm") - if output, err := compileCmd.CombinedOutput(); err != nil { - fmt.Fprint(os.Stderr, string(output)) - return "", errors.Wrap(err, "failed to compile workflow") + if err := os.WriteFile(workflowWasmPath, wasmBytes, 0644); err != nil { //nolint:gosec // G306: we want it to be readable by everyone + return "", errors.Wrap(err, "failed to write WASM file") } workflowWasmAbsPath, workflowWasmAbsPathErr := filepath.Abs(workflowWasmPath) diff --git a/system-tests/lib/cre/workflow/secrets.go b/system-tests/lib/cre/workflow/secrets.go index 9ede9e59597..ed097ec69d1 100644 --- a/system-tests/lib/cre/workflow/secrets.go +++ b/system-tests/lib/cre/workflow/secrets.go @@ -14,12 +14,13 @@ import ( "github.com/goccy/go-yaml" "github.com/google/uuid" "github.com/pkg/errors" - "github.com/smartcontractkit/tdh2/go/tdh2/tdh2easy" vault_helpers "github.com/smartcontractkit/chainlink-common/pkg/capabilities/actions/vault" jsonrpc "github.com/smartcontractkit/chainlink-common/pkg/jsonrpc2" workflow_registry_v2_wrapper "github.com/smartcontractkit/chainlink-evm/gethwrappers/workflow/generated/workflow_registry_wrapper_v2" "github.com/smartcontractkit/chainlink-testing-framework/seth" + "github.com/smartcontractkit/tdh2/go/tdh2/tdh2easy" + "github.com/smartcontractkit/chainlink/system-tests/lib/cre" vaulttypes "github.com/smartcontractkit/chainlink/v2/core/capabilities/vault/vaulttypes" "github.com/smartcontractkit/chainlink/v2/core/capabilities/vault/vaultutils" diff --git a/system-tests/lib/cre/workflow/workflow.go b/system-tests/lib/cre/workflow/workflow.go index d7c15f4cfe2..92c8be0cb29 100644 --- a/system-tests/lib/cre/workflow/workflow.go +++ b/system-tests/lib/cre/workflow/workflow.go @@ -509,14 +509,15 @@ func UpdateVaultCapabilityConfig(ctx context.Context, sethClient *seth.Client, c } // WaitForVaultConfigPropagation waits until every workflow node's local registry snapshot -// (registry_syncer_states) shows a non-nil DefaultConfig for the vault capability. +// (registry_syncer_states) contains the specified expectedPublicKey (or a non-nil DefaultConfig +// if expectedPublicKey is empty) for the vault capability. // // It connects directly to each node's PostgreSQL database using the shared postgres server // exposed at dbPort, with one database per node named db_0 … db_{nodeCount-1}. // // If dbPort or nodeCount is 0 (e.g. Kubernetes provider or missing state file), the function // falls back to a static wait of vaultConfigStaticPropagationWait. -func WaitForVaultConfigPropagation(ctx context.Context, dbPort, nodeCount int) error { +func WaitForVaultConfigPropagation(ctx context.Context, dbPort, nodeCount int, expectedPublicKey string) error { if dbPort == 0 || nodeCount == 0 { fmt.Printf("\n⚙️ Node DB info unavailable; waiting %s for vault config propagation\n", vaultConfigStaticPropagationWait) select { @@ -556,7 +557,7 @@ func WaitForVaultConfigPropagation(ctx context.Context, dbPort, nodeCount int) e for nodeIndex := range pending { // capture for goroutine eg.Go(func() error { - ready, msg := hasVaultCapabilityConfigOnNode(tickCtx, dbPort, nodeIndex) + ready, msg := hasVaultCapabilityConfigOnNode(tickCtx, dbPort, nodeIndex, expectedPublicKey) results <- checkResult{index: nodeIndex, ready: ready, msg: msg} return nil }) @@ -594,8 +595,8 @@ func WaitForVaultConfigPropagation(ctx context.Context, dbPort, nodeCount int) e } // hasVaultCapabilityConfigOnNode queries db_{nodeIndex} at dbPort and returns true when the latest -// registry_syncer_states row contains a non-nil DefaultConfig for the vault capability. -func hasVaultCapabilityConfigOnNode(ctx context.Context, dbPort, nodeIndex int) (bool, string) { +// registry_syncer_states row contains expectedPublicKey (or non-nil DefaultConfig) for the vault capability. +func hasVaultCapabilityConfigOnNode(ctx context.Context, dbPort, nodeIndex int, expectedPublicKey string) (bool, string) { dsn := fmt.Sprintf( "host=127.0.0.1 port=%d user=%s password=%s dbname=db_%d sslmode=disable connect_timeout=3", dbPort, postgres.User, postgres.Password, nodeIndex, @@ -634,11 +635,21 @@ func hasVaultCapabilityConfigOnNode(ctx context.Context, dbPort, nodeIndex int) return false, fmt.Sprintf("failed to unmarshal vault capability config protobuf: %v", unmarshalErr) } + if expectedPublicKey != "" { + if VaultConfigHasPublicKey(capCfg, expectedPublicKey) { + return true, "" + } + continue + } + if capCfg.DefaultConfig != nil { return true, "" } } + if expectedPublicKey != "" { + return false, fmt.Sprintf("vault capability %s with public key %s not yet set in any DON snapshot", vault_helpers.CapabilityID, expectedPublicKey) + } return false, fmt.Sprintf("vault capability %s DefaultConfig not yet set in any DON snapshot", vault_helpers.CapabilityID) } diff --git a/system-tests/lib/crypto/aptos.go b/system-tests/lib/crypto/aptos.go index a3c76b42768..0976683f37b 100644 --- a/system-tests/lib/crypto/aptos.go +++ b/system-tests/lib/crypto/aptos.go @@ -22,7 +22,7 @@ func NewAptosKey(password string) (*AptosKey, error) { return nil, fmt.Errorf("failed to create aptos key: %w", err) } - enc, err := key.ToEncryptedJSON(password, keystore.DefaultScryptParams) + enc, err := key.ToEncryptedJSON(password, keystore.FastScryptParams) if err != nil { return nil, fmt.Errorf("failed to encrypt aptos key: %w", err) } diff --git a/system-tests/lib/crypto/dkgrecipient.go b/system-tests/lib/crypto/dkgrecipient.go index e419cb40040..9092e80fe8f 100644 --- a/system-tests/lib/crypto/dkgrecipient.go +++ b/system-tests/lib/crypto/dkgrecipient.go @@ -1,10 +1,9 @@ package crypto import ( - "github.com/smartcontractkit/smdkg/dkgocr/dkgocrtypes" - "github.com/smartcontractkit/chainlink-common/keystore" "github.com/smartcontractkit/chainlink-common/keystore/corekeys/dkgrecipientkey" + "github.com/smartcontractkit/smdkg/dkgocr/dkgocrtypes" ) type DKGRecipientKey struct { @@ -21,7 +20,7 @@ func NewDKGRecipientKey(password string) (*DKGRecipientKey, error) { if err != nil { return nil, err } - d, err := key.ToEncryptedJSON(password, keystore.DefaultScryptParams) + d, err := key.ToEncryptedJSON(password, keystore.FastScryptParams) if err != nil { return nil, err } diff --git a/system-tests/lib/crypto/evm.go b/system-tests/lib/crypto/evm.go index 9e3bf94234a..aa6e9e88b03 100644 --- a/system-tests/lib/crypto/evm.go +++ b/system-tests/lib/crypto/evm.go @@ -6,7 +6,6 @@ import ( "github.com/ethereum/go-ethereum/common" "github.com/ethereum/go-ethereum/crypto" - "github.com/pkg/errors" "github.com/smartcontractkit/chainlink-testing-framework/framework/clclient" diff --git a/system-tests/lib/crypto/p2p.go b/system-tests/lib/crypto/p2p.go index acb2a382cc0..a61227ab8fd 100644 --- a/system-tests/lib/crypto/p2p.go +++ b/system-tests/lib/crypto/p2p.go @@ -16,7 +16,7 @@ func NewP2PKey(password string) (*P2PKey, error) { if err != nil { return nil, err } - d, err := key.ToEncryptedJSON(password, keystore.DefaultScryptParams) + d, err := key.ToEncryptedJSON(password, keystore.FastScryptParams) if err != nil { return nil, err } diff --git a/system-tests/lib/crypto/sol.go b/system-tests/lib/crypto/sol.go index 848daf3d63d..f1d7a615db5 100644 --- a/system-tests/lib/crypto/sol.go +++ b/system-tests/lib/crypto/sol.go @@ -22,7 +22,7 @@ func NewSolKey(password, chainID string) (*SolKey, error) { return nil, fmt.Errorf("err create solkey: %w", err) } - enc, err := key.ToEncryptedJSON(password, keystore.DefaultScryptParams) + enc, err := key.ToEncryptedJSON(password, keystore.FastScryptParams) if err != nil { return nil, fmt.Errorf("failed to encrypt key: %w", err) } diff --git a/system-tests/lib/crypto/stellar.go b/system-tests/lib/crypto/stellar.go index 118e2d63437..37da0de3e37 100644 --- a/system-tests/lib/crypto/stellar.go +++ b/system-tests/lib/crypto/stellar.go @@ -25,7 +25,7 @@ func NewStellarKey(password string) (*StellarKey, error) { return nil, fmt.Errorf("failed to create stellar key: %w", err) } - enc, err := key.ToEncryptedJSON(password, keystore.DefaultScryptParams) + enc, err := key.ToEncryptedJSON(password, keystore.FastScryptParams) if err != nil { return nil, fmt.Errorf("failed to encrypt stellar key: %w", err) } diff --git a/system-tests/lib/funding/funding.go b/system-tests/lib/funding/funding.go index ae838db605c..7f71a10ac16 100644 --- a/system-tests/lib/funding/funding.go +++ b/system-tests/lib/funding/funding.go @@ -17,6 +17,7 @@ import ( "github.com/rs/zerolog" "github.com/smartcontractkit/chainlink-testing-framework/seth" + crecrypto "github.com/smartcontractkit/chainlink/system-tests/lib/crypto" ) diff --git a/system-tests/lib/go.mod b/system-tests/lib/go.mod index 91b52779c53..86d6e13b9a2 100644 --- a/system-tests/lib/go.mod +++ b/system-tests/lib/go.mod @@ -15,7 +15,7 @@ require ( dario.cat/mergo v1.0.2 github.com/Masterminds/semver/v3 v3.5.0 github.com/alitto/pond/v2 v2.5.0 - github.com/andybalholm/brotli v1.2.1 + github.com/andybalholm/brotli v1.2.2 github.com/aptos-labs/aptos-go-sdk v1.13.0 github.com/avast/retry-go/v5 v5.0.0 github.com/cockroachdb/errors v1.12.0 @@ -37,7 +37,7 @@ require ( github.com/smartcontractkit/chain-selectors v1.0.107 github.com/smartcontractkit/chainlink-aptos v0.0.0-20260708114855-e953eeb028a7 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260624154507-ea7ff77a0ddb - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-common/keystore v1.3.0 github.com/smartcontractkit/chainlink-deployments-framework v0.111.1-0.20260612191326-e31c0ae4cd54 github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260810110946-8174b6bb7fc9 diff --git a/system-tests/lib/go.sum b/system-tests/lib/go.sum index 0fbd72ec78e..e1ae9067c80 100644 --- a/system-tests/lib/go.sum +++ b/system-tests/lib/go.sum @@ -146,8 +146,8 @@ github.com/anchore/go-struct-converter v0.1.0 h1:2rDRssAl6mgKBSLNiVCMADgZRhoqtw9 github.com/anchore/go-struct-converter v0.1.0/go.mod h1:rYqSE9HbjzpHTI74vwPvae4ZVYZd1lue2ta6xHPdblA= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1549,8 +1549,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h1:t5VUHVFEdcqa0/faJiHWusuW+egKpqK3YwWZO4/yJto= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/system-tests/tests/go.mod b/system-tests/tests/go.mod index 48b94e8d974..8d57c7080d0 100644 --- a/system-tests/tests/go.mod +++ b/system-tests/tests/go.mod @@ -64,7 +64,7 @@ require ( github.com/rs/zerolog v1.35.1 github.com/smartcontractkit/chain-selectors v1.0.107 github.com/smartcontractkit/chainlink-ccip/chains/solana v0.0.0-20260624154507-ea7ff77a0ddb - github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 + github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 github.com/smartcontractkit/chainlink-common/keystore v1.3.0 github.com/smartcontractkit/chainlink-deployments-framework v0.111.1-0.20260612191326-e31c0ae4cd54 github.com/smartcontractkit/chainlink-evm/contracts/cre/gobindings v0.0.0-20260403151002-2c91155b5501 @@ -107,193 +107,6 @@ require ( cloud.google.com/go/auth v0.18.2 // indirect cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect cloud.google.com/go/compute/metadata v0.9.0 // indirect - github.com/Azure/azure-sdk-for-go/sdk/azcore v1.21.0 // indirect - github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.1 // indirect - github.com/Azure/azure-sdk-for-go/sdk/internal v1.11.2 // indirect - github.com/AzureAD/microsoft-authentication-library-for-go v1.6.0 // indirect - github.com/Masterminds/goutils v1.1.1 // indirect - github.com/Masterminds/sprig/v3 v3.3.0 // indirect - github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20260416073033-7c2071eaa8d4 // indirect - github.com/Unheilbar/anchor-go v1.0.3 // indirect - github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect - github.com/armon/go-metrics v0.4.1 // indirect - github.com/avast/retry-go/v5 v5.0.0 // indirect - github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.30 // indirect - github.com/aws/aws-sdk-go-v2/service/signin v1.1.5 // indirect - github.com/basgys/goxml2json v1.1.1-0.20231018121955-e66ee54ceaad // indirect - github.com/bboreham/go-loser v0.0.0-20230920113527-fcc2c21820a3 // indirect - github.com/beevik/ntp v1.5.0 // indirect - github.com/buraksezer/consistent v0.10.0 // indirect - github.com/bytecodealliance/wasmtime-go/v47 v47.0.0 // indirect - github.com/bytedance/gopkg v0.1.3 // indirect - github.com/c2h5oh/datasize v0.0.0-20231215233829-aa82cc1e6500 // indirect - github.com/clipperhouse/uax29/v2 v2.7.0 // indirect - github.com/coreos/go-semver v0.3.1 // indirect - github.com/coreos/go-systemd/v22 v22.7.0 // indirect - github.com/creachadair/jrpc2 v1.2.0 // indirect - github.com/creachadair/mds v0.13.4 // indirect - github.com/dennwc/varint v1.0.0 // indirect - github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect - github.com/digital-asset/dazl-client/v8 v8.9.0 // indirect - github.com/docker/compose/v5 v5.1.2 // indirect - github.com/edsrzf/mmap-go v1.2.0 // indirect - github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab // indirect - github.com/facette/natsort v0.0.0-20181210072756-2cd4dd1e2dcb // indirect - github.com/failsafe-go/failsafe-go v0.9.0 // indirect - github.com/fjl/jsonw v0.1.0 // indirect - github.com/go-openapi/analysis v0.25.2 // indirect - github.com/go-openapi/errors v0.22.7 // indirect - github.com/go-openapi/loads v0.23.3 // indirect - github.com/go-openapi/spec v0.22.5 // indirect - github.com/go-openapi/strfmt v0.26.3 // indirect - github.com/go-openapi/swag/cmdutils v0.26.0 // indirect - github.com/go-openapi/swag/conv v0.26.0 // indirect - github.com/go-openapi/swag/fileutils v0.26.0 // indirect - github.com/go-openapi/swag/jsonname v0.26.0 // indirect - github.com/go-openapi/swag/jsonutils v0.26.0 // indirect - github.com/go-openapi/swag/loading v0.26.0 // indirect - github.com/go-openapi/swag/mangling v0.26.0 // indirect - github.com/go-openapi/swag/netutils v0.26.0 // indirect - github.com/go-openapi/swag/stringutils v0.26.0 // indirect - github.com/go-openapi/swag/typeutils v0.26.0 // indirect - github.com/go-openapi/swag/yamlutils v0.26.0 // indirect - github.com/go-openapi/validate v0.25.3 // indirect - github.com/gobwas/glob v0.2.3 // indirect - github.com/gogo/googleapis v1.4.1 // indirect - github.com/gogo/status v1.1.1 // indirect - github.com/google/s2a-go v0.1.9 // indirect - github.com/googleapis/enterprise-certificate-proxy v0.3.14 // indirect - github.com/googleapis/gax-go/v2 v2.18.0 // indirect - github.com/gorilla/mux v1.8.1 // indirect - github.com/grafana/dskit v0.0.0-20260209132809-8d1c6d34bb5a // indirect - github.com/grafana/gomemcache v0.0.0-20251127154401-74f93547077b // indirect - github.com/grafana/grafana-foundation-sdk/go v0.0.0-20240326122733-6f96a993222b // indirect - github.com/grafana/jsonparser v0.0.0-20241004153430-023329977675 // indirect - github.com/grafana/loki/pkg/push v0.0.0-20250630054201-94c0ba7b0952 // indirect - github.com/grafana/loki/v3 v3.7.1 // indirect - github.com/grafana/regexp v0.0.0-20250905093917-f7b3be9d1853 // indirect - github.com/hashicorp/consul/api v1.33.4 // indirect - github.com/hashicorp/go-msgpack/v2 v2.1.5 // indirect - github.com/hashicorp/go-rootcerts v1.0.2 // indirect - github.com/hashicorp/go-sockaddr v1.0.7 // indirect - github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect - github.com/hashicorp/memberlist v0.5.4 // indirect - github.com/hashicorp/serf v0.10.2 // indirect - github.com/huandu/xstrings v1.5.0 // indirect - github.com/in-toto/attestation v1.2.0 // indirect - github.com/influxdata/tdigest v0.0.2-0.20210216194612-fc98d27c9e8b // indirect - github.com/jackc/pgx/v5 v5.9.2 // indirect - github.com/jackc/puddle/v2 v2.2.2 // indirect - github.com/jaegertracing/jaeger-idl v0.6.0 // indirect - github.com/jhump/protocompile v0.0.0-20221021153901-4f6f732835e8 // indirect - github.com/julienschmidt/httprouter v1.3.0 // indirect - github.com/klauspost/crc32 v1.3.0 // indirect - github.com/knadh/koanf/maps v0.1.2 // indirect - github.com/knadh/koanf/providers/confmap v1.0.0 // indirect - github.com/knadh/koanf/v2 v2.3.3 // indirect - github.com/kylelemons/godebug v1.1.0 // indirect - github.com/mdlayher/socket v0.5.1 // indirect - github.com/mdlayher/vsock v1.2.1 // indirect - github.com/mfridman/interpolate v0.0.2 // indirect - github.com/miekg/dns v1.1.72 // indirect - github.com/mitchellh/copystructure v1.2.0 // indirect - github.com/mitchellh/reflectwalk v1.0.2 // indirect - github.com/moby/moby/api v1.54.2 // indirect - github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f // indirect - github.com/oapi-codegen/runtime v1.4.1 // indirect - github.com/oklog/ulid/v2 v2.1.1 // indirect - github.com/open-telemetry/opentelemetry-collector-contrib/internal/exp/metrics v0.148.0 // indirect - github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.148.0 // indirect - github.com/open-telemetry/opentelemetry-collector-contrib/processor/deltatocumulativeprocessor v0.148.0 // indirect - github.com/opentracing-contrib/go-grpc v0.1.2 // indirect - github.com/opentracing-contrib/go-stdlib v1.1.1 // indirect - github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b // indirect - github.com/pb33f/jsonpath v0.8.1 // indirect - github.com/pb33f/libopenapi v0.34.3 // indirect - github.com/pb33f/libopenapi-validator v0.13.3 // indirect - github.com/pb33f/ordered-map/v2 v2.3.1 // indirect - github.com/pion/dtls/v3 v3.1.2 // indirect - github.com/pion/stun/v3 v3.1.2 // indirect - github.com/pion/transport/v4 v4.0.1 // indirect - github.com/pires/go-proxyproto v0.8.1 // indirect - github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect - github.com/pressly/goose/v3 v3.27.0 // indirect - github.com/prometheus/alertmanager v0.31.1 // indirect - github.com/prometheus/client_golang/exp v0.0.0-20260325093428-d8591d0db856 // indirect - github.com/prometheus/common v1.20.99 // indirect - github.com/prometheus/exporter-toolkit v0.15.1 // indirect - github.com/prometheus/otlptranslator v1.0.0 // indirect - github.com/prometheus/sigv4 v0.4.1 // indirect - github.com/puzpuzpuz/xsync/v4 v4.4.0 // indirect - github.com/quic-go/qpack v0.6.0 // indirect - github.com/quic-go/quic-go v0.59.1 // indirect - github.com/redis/go-redis/v9 v9.18.0 // indirect - github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect - github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 // indirect - github.com/sercand/kuberesolver/v6 v6.0.1 // indirect - github.com/shopspring/decimal v1.4.0 // indirect - github.com/sigstore/sigstore v1.10.8 // indirect - github.com/sigstore/sigstore-go v1.2.0 // indirect - github.com/smartcontractkit/chainlink-aptos/codec v0.0.0-20260716230027-bd85997bc03c // indirect - github.com/smartcontractkit/chainlink-canton v0.0.0-20260615233851-4e78e7c23a58 // indirect - github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260624154507-ea7ff77a0ddb // indirect - github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb // indirect - github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 // indirect - github.com/smartcontractkit/chainlink-data-streams v1.1.0 // indirect - github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect - github.com/smartcontractkit/chainlink-protos/chainlink-ccv/committee-verifier v0.0.0-20251211142334-5c3421fe2c8d // indirect - github.com/smartcontractkit/chainlink-protos/chainlink-ccv/heartbeat v0.0.0-20260115142640-f6b99095c12e // indirect - github.com/smartcontractkit/chainlink-protos/chainlink-ccv/message-discovery v0.0.0-20251211142334-5c3421fe2c8d // indirect - github.com/smartcontractkit/chainlink-protos/chainlink-ccv/message-rules v0.0.0-20260505131349-78e491b80735 // indirect - github.com/smartcontractkit/chainlink-protos/chainlink-ccv/verifier v0.0.0-20251211142334-5c3421fe2c8d // indirect - github.com/smartcontractkit/chainlink-protos/data-feeds v0.1.1-0.20260501174546-2e8846986b36 // indirect - github.com/smartcontractkit/chainlink-protos/job-distributor v0.20.1-0.20260701185448-696c075849ea // indirect - github.com/smartcontractkit/chainlink-protos/metering/go v0.0.0-20260729184203-90b4cdd48536 // indirect - github.com/smartcontractkit/chainlink-protos/node-platform v0.0.0-20260709145319-7782fb89eb16 // indirect - github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 // indirect - github.com/smartcontractkit/chainlink-sui/codec v0.0.0-20260720132736-e99278bfdc96 // indirect - github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.9 // indirect - github.com/smartcontractkit/chainlink-testing-framework/lib/grafana v1.50.0 // indirect - github.com/smartcontractkit/chainlink-testing-framework/wasp v1.52.0 // indirect - github.com/smartcontractkit/chainlink-ton/cciplib v0.1.1-0.20260716214810-db5ecc877490 // indirect - github.com/smartcontractkit/go-daml v0.0.0-20260615231356-88c6ee9b5774 // indirect - github.com/smartcontractkit/libocr v0.0.0-20260810200708-618b5bf7f342 // indirect - github.com/sony/gobreaker/v2 v2.4.0 // indirect - github.com/stellar/go-xdr v0.0.0-20260529210834-0bf8f4956364 // indirect - github.com/tjhop/slog-gokit v0.1.6 // indirect - github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect - github.com/uber/jaeger-lib v2.4.1+incompatible // indirect - github.com/wlynxg/anet v0.0.5 // indirect - github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect - go.etcd.io/etcd/api/v3 v3.6.7 // indirect - go.etcd.io/etcd/client/pkg/v3 v3.6.7 // indirect - go.etcd.io/etcd/client/v3 v3.6.7 // indirect - go.mongodb.org/mongo-driver/v2 v2.5.0 // indirect - go.opentelemetry.io/collector/component v1.54.0 // indirect - go.opentelemetry.io/collector/confmap v1.54.0 // indirect - go.opentelemetry.io/collector/confmap/xconfmap v0.148.0 // indirect - go.opentelemetry.io/collector/consumer v1.54.0 // indirect - go.opentelemetry.io/collector/featuregate v1.54.0 // indirect - go.opentelemetry.io/collector/internal/componentalias v0.148.0 // indirect - go.opentelemetry.io/collector/pdata v1.54.0 // indirect - go.opentelemetry.io/collector/pipeline v1.54.0 // indirect - go.opentelemetry.io/collector/processor v1.54.0 // indirect - go.opentelemetry.io/contrib/bridges/prometheus v0.68.0 // indirect - go.opentelemetry.io/contrib/exporters/autoexport v0.64.0 // indirect - go.opentelemetry.io/contrib/propagators/jaeger v1.39.0 // indirect - go.opentelemetry.io/contrib/samplers/jaegerremote v0.33.0 // indirect - go.opentelemetry.io/otel/exporters/jaeger v1.17.0 // indirect - go.opentelemetry.io/otel/exporters/prometheus v0.61.0 // indirect - go.uber.org/goleak v1.3.0 // indirect - go.yaml.in/yaml/v2 v2.4.4 // indirect - go.yaml.in/yaml/v3 v3.0.4 // indirect - go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect - go4.org/netipx v0.0.0-20230125063823-8449b0a6169f // indirect - google.golang.org/api v0.272.0 // indirect - sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect -) - -require ( cosmossdk.io/api v0.7.6 // indirect cosmossdk.io/collections v0.4.0 // indirect cosmossdk.io/core v0.11.0 // indirect @@ -309,26 +122,37 @@ require ( filippo.io/nistec v0.0.4 // indirect github.com/99designs/go-keychain v0.0.0-20191008050251-8e49817e8af4 // indirect github.com/99designs/keyring v1.2.1 // indirect + github.com/Azure/azure-sdk-for-go/sdk/azcore v1.21.0 // indirect + github.com/Azure/azure-sdk-for-go/sdk/azidentity v1.13.1 // indirect + github.com/Azure/azure-sdk-for-go/sdk/internal v1.11.2 // indirect github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect github.com/Azure/go-ntlmssp v0.1.1 // indirect + github.com/AzureAD/microsoft-authentication-library-for-go v1.6.0 // indirect github.com/BurntSushi/toml v1.6.0 // indirect github.com/DataDog/zstd v1.5.7 // indirect github.com/DefangLabs/secret-detector v0.0.0-20250403165618-22662109213e // indirect github.com/Khan/genqlient v0.8.1 // indirect github.com/MakeNowJust/heredoc v1.0.0 // indirect + github.com/Masterminds/goutils v1.1.1 // indirect + github.com/Masterminds/sprig/v3 v3.3.0 // indirect github.com/Microsoft/go-winio v0.6.2 // indirect github.com/NethermindEth/juno v0.15.11 // indirect github.com/NethermindEth/starknet.go v0.17.1 // indirect + github.com/ProjectZKM/Ziren/crates/go-runtime/zkvm_runtime v0.0.0-20260416073033-7c2071eaa8d4 // indirect + github.com/Unheilbar/anchor-go v1.0.3 // indirect github.com/VictoriaMetrics/fastcache v1.13.0 // indirect github.com/XSAM/otelsql v0.42.0 // indirect github.com/acarl005/stripansi v0.0.0-20180116102854-5a71ef0e047d // indirect github.com/alecthomas/units v0.0.0-20240927000941-0f3dac36c52b // indirect github.com/alitto/pond/v2 v2.5.0 // indirect - github.com/andybalholm/brotli v1.2.1 // indirect + github.com/andybalholm/brotli v1.2.2 // indirect github.com/apache/arrow-go/v18 v18.6.0 // indirect + github.com/apapsch/go-jsonmerge/v2 v2.0.0 // indirect github.com/aptos-labs/aptos-go-sdk v1.13.0 + github.com/armon/go-metrics v0.4.1 // indirect github.com/atombender/go-jsonschema v0.16.1-0.20240916205339-a74cd4e2851c // indirect github.com/avast/retry-go v3.0.0+incompatible // indirect + github.com/avast/retry-go/v5 v5.0.0 // indirect github.com/awalterschulze/gographviz v2.0.3+incompatible // indirect github.com/aws/aws-sdk-go v1.55.8 // indirect github.com/aws/aws-sdk-go-v2 v1.42.0 // indirect @@ -337,10 +161,12 @@ require ( github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.29 // indirect github.com/aws/aws-sdk-go-v2/internal/configsources v1.4.29 // indirect github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.7.29 // indirect + github.com/aws/aws-sdk-go-v2/internal/v4a v1.4.30 // indirect github.com/aws/aws-sdk-go-v2/service/cognitoidentityprovider v1.61.4 // indirect github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.12 // indirect github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.13.29 // indirect github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.34.2 // indirect + github.com/aws/aws-sdk-go-v2/service/signin v1.1.5 // indirect github.com/aws/aws-sdk-go-v2/service/sso v1.31.3 // indirect github.com/aws/aws-sdk-go-v2/service/ssooidc v1.36.6 // indirect github.com/aws/aws-sdk-go-v2/service/sts v1.43.3 // indirect @@ -348,6 +174,9 @@ require ( github.com/aws/jsii-runtime-go v1.112.0 // indirect github.com/aws/smithy-go v1.27.2 // indirect github.com/bahlo/generic-list-go v0.2.0 // indirect + github.com/basgys/goxml2json v1.1.1-0.20231018121955-e66ee54ceaad // indirect + github.com/bboreham/go-loser v0.0.0-20230920113527-fcc2c21820a3 // indirect + github.com/beevik/ntp v1.5.0 // indirect github.com/benbjohnson/clock v1.3.5 // indirect github.com/beorn7/perks v1.0.1 // indirect github.com/bgentry/speakeasy v0.1.1-0.20220910012023-760eaf8b6816 // indirect @@ -362,8 +191,12 @@ require ( github.com/btcsuite/btcutil v1.0.3-0.20201208143702-a53e38424cce // indirect github.com/buger/goterm v1.0.4 // indirect github.com/buger/jsonparser v1.2.0 // indirect + github.com/buraksezer/consistent v0.10.0 // indirect + github.com/bytecodealliance/wasmtime-go/v47 v47.0.0 // indirect + github.com/bytedance/gopkg v0.1.3 // indirect github.com/bytedance/sonic v1.15.0 // indirect github.com/bytedance/sonic/loader v0.5.0 // indirect + github.com/c2h5oh/datasize v0.0.0-20231215233829-aa82cc1e6500 // indirect github.com/cdk8s-team/cdk8s-core-go/cdk8s/v2 v2.70.2 // indirect github.com/cenkalti/backoff v2.2.1+incompatible // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect @@ -371,6 +204,7 @@ require ( github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/chai2010/gettext-go v1.0.2 // indirect github.com/chaos-mesh/chaos-mesh/api v0.0.0-20240821051457-da69c6d9617a // indirect + github.com/clipperhouse/uax29/v2 v2.7.0 // indirect github.com/cloudevents/sdk-go/binding/format/protobuf/v2 v2.16.2 github.com/cloudevents/sdk-go/v2 v2.16.2 // indirect github.com/cloudwego/base64x v0.1.6 // indirect @@ -396,6 +230,8 @@ require ( github.com/containerd/ttrpc v1.2.8 // indirect github.com/containerd/typeurl/v2 v2.2.3 // indirect github.com/coreos/go-oidc/v3 v3.17.0 // indirect + github.com/coreos/go-semver v0.3.1 // indirect + github.com/coreos/go-systemd/v22 v22.7.0 // indirect github.com/cosmos/btcutil v1.0.5 // indirect github.com/cosmos/cosmos-db v1.1.1 // indirect github.com/cosmos/cosmos-proto v1.0.0-beta.5 // indirect @@ -407,16 +243,22 @@ require ( github.com/cpuguy83/dockercfg v0.3.2 // indirect github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect github.com/crate-crypto/go-eth-kzg v1.5.0 // indirect + github.com/creachadair/jrpc2 v1.2.0 // indirect + github.com/creachadair/mds v0.13.4 // indirect github.com/danieljoos/wincred v1.2.3 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/dchest/siphash v1.2.3 // indirect github.com/deckarep/golang-set/v2 v2.9.0 // indirect github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.1 // indirect + github.com/dennwc/varint v1.0.0 // indirect github.com/dgraph-io/badger/v4 v4.7.0 // indirect github.com/dgraph-io/ristretto/v2 v2.2.0 // indirect + github.com/dgryski/go-rendezvous v0.0.0-20200823014737-9f7001d12a5f // indirect + github.com/digital-asset/dazl-client/v8 v8.9.0 // indirect github.com/distribution/reference v0.6.0 // indirect github.com/docker/buildx v0.33.0 // indirect github.com/docker/cli v29.4.0+incompatible // indirect + github.com/docker/compose/v5 v5.1.2 // indirect github.com/docker/docker v28.5.3-0.20260325154711-31a1689cb0a1+incompatible // indirect github.com/docker/docker-credential-helpers v0.9.5 // indirect github.com/docker/go-connections v0.7.0 // indirect @@ -426,18 +268,23 @@ require ( github.com/dustin/go-humanize v1.0.1 // indirect github.com/dvsekhvalnov/jose2go v1.7.0 // indirect github.com/ebitengine/purego v0.10.0 // indirect + github.com/edsrzf/mmap-go v1.2.0 // indirect github.com/eiannone/keyboard v0.0.0-20220611211555-0d226195f203 // indirect github.com/emicklei/dot v1.6.2 // indirect github.com/emicklei/go-restful/v3 v3.13.0 // indirect github.com/esote/minmaxheap v1.0.0 // indirect github.com/ethereum/c-kzg-4844/v2 v2.1.7 // indirect + github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab // indirect github.com/evanphx/json-patch/v5 v5.9.11 // indirect github.com/exponent-io/jsonpath v0.0.0-20210407135951-1de76d718b3f // indirect github.com/expr-lang/expr v1.17.8 // indirect + github.com/facette/natsort v0.0.0-20181210072756-2cd4dd1e2dcb // indirect + github.com/failsafe-go/failsafe-go v0.9.0 // indirect github.com/fatih/camelcase v1.0.0 // indirect github.com/fatih/color v1.19.0 // indirect github.com/felixge/httpsnoop v1.0.4 // indirect github.com/ferranbt/fastssz v0.1.4 // indirect + github.com/fjl/jsonw v0.1.0 // indirect github.com/fsnotify/fsevents v0.2.0 // indirect github.com/fsnotify/fsnotify v1.10.1 // indirect github.com/fvbommel/sortorder v1.1.0 // indirect @@ -461,9 +308,26 @@ require ( github.com/go-logr/logr v1.4.3 // indirect github.com/go-logr/stdr v1.2.2 // indirect github.com/go-ole/go-ole v1.3.0 // indirect + github.com/go-openapi/analysis v0.25.2 // indirect + github.com/go-openapi/errors v0.22.7 // indirect github.com/go-openapi/jsonpointer v0.23.1 // indirect github.com/go-openapi/jsonreference v0.21.6 // indirect + github.com/go-openapi/loads v0.23.3 // indirect + github.com/go-openapi/spec v0.22.5 // indirect + github.com/go-openapi/strfmt v0.26.3 // indirect github.com/go-openapi/swag v0.26.0 // indirect + github.com/go-openapi/swag/cmdutils v0.26.0 // indirect + github.com/go-openapi/swag/conv v0.26.0 // indirect + github.com/go-openapi/swag/fileutils v0.26.0 // indirect + github.com/go-openapi/swag/jsonname v0.26.0 // indirect + github.com/go-openapi/swag/jsonutils v0.26.0 // indirect + github.com/go-openapi/swag/loading v0.26.0 // indirect + github.com/go-openapi/swag/mangling v0.26.0 // indirect + github.com/go-openapi/swag/netutils v0.26.0 // indirect + github.com/go-openapi/swag/stringutils v0.26.0 // indirect + github.com/go-openapi/swag/typeutils v0.26.0 // indirect + github.com/go-openapi/swag/yamlutils v0.26.0 // indirect + github.com/go-openapi/validate v0.25.3 // indirect github.com/go-playground/locales v0.14.1 // indirect github.com/go-playground/universal-translator v0.18.1 // indirect github.com/go-playground/validator/v10 v10.30.3 // indirect @@ -471,11 +335,14 @@ require ( github.com/go-viper/mapstructure/v2 v2.5.0 // indirect github.com/go-webauthn/webauthn v0.9.4 // indirect github.com/go-webauthn/x v0.1.5 // indirect + github.com/gobwas/glob v0.2.3 // indirect github.com/goccy/go-json v0.10.6 // indirect github.com/goccy/go-yaml v1.19.2 // indirect github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 // indirect github.com/gofrs/flock v0.13.0 // indirect + github.com/gogo/googleapis v1.4.1 // indirect github.com/gogo/protobuf v1.3.2 // indirect + github.com/gogo/status v1.1.1 // indirect github.com/golang-jwt/jwt/v4 v4.5.2 // indirect github.com/golang-jwt/jwt/v5 v5.3.1 github.com/golang/protobuf v1.5.4 // indirect @@ -488,20 +355,32 @@ require ( github.com/google/go-querystring v1.2.0 // indirect github.com/google/go-tpm v0.9.0 // indirect github.com/google/pprof v0.0.0-20260302011040-a15ffb7f9dcc // indirect + github.com/google/s2a-go v0.1.9 // indirect github.com/google/shlex v0.0.0-20191202100458-e7afc7fbc510 // indirect + github.com/googleapis/enterprise-certificate-proxy v0.3.14 // indirect + github.com/googleapis/gax-go/v2 v2.18.0 // indirect github.com/gorilla/context v1.1.1 // indirect + github.com/gorilla/mux v1.8.1 // indirect github.com/gorilla/securecookie v1.1.2 // indirect github.com/gorilla/sessions v1.2.2 // indirect github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 // indirect + github.com/grafana/dskit v0.0.0-20260209132809-8d1c6d34bb5a // indirect + github.com/grafana/gomemcache v0.0.0-20251127154401-74f93547077b // indirect + github.com/grafana/grafana-foundation-sdk/go v0.0.0-20240326122733-6f96a993222b // indirect + github.com/grafana/jsonparser v0.0.0-20241004153430-023329977675 // indirect + github.com/grafana/loki/pkg/push v0.0.0-20250630054201-94c0ba7b0952 // indirect + github.com/grafana/loki/v3 v3.7.1 // indirect github.com/grafana/otel-profiling-go v0.5.1 // indirect github.com/grafana/pyroscope-go v1.3.0 // indirect github.com/grafana/pyroscope-go/godeltaprof v0.1.10 // indirect + github.com/grafana/regexp v0.0.0-20250905093917-f7b3be9d1853 // indirect github.com/gregjones/httpcache v0.0.0-20190611155906-901d90724c79 // indirect github.com/grpc-ecosystem/go-grpc-middleware/providers/prometheus v1.1.0 // indirect github.com/grpc-ecosystem/go-grpc-middleware/v2 v2.3.3 // indirect github.com/grpc-ecosystem/grpc-gateway v1.16.0 // indirect github.com/grpc-ecosystem/grpc-gateway/v2 v2.29.0 // indirect github.com/gsterjov/go-libsecret v0.0.0-20161001094733-a6f4afe4910c // indirect + github.com/hashicorp/consul/api v1.33.4 // indirect github.com/hashicorp/errwrap v1.1.0 // indirect github.com/hashicorp/go-bexpr v0.1.10 // indirect github.com/hashicorp/go-cleanhttp v0.5.2 // indirect @@ -509,28 +388,41 @@ require ( github.com/hashicorp/go-hclog v1.6.3 // indirect github.com/hashicorp/go-immutable-radix v1.3.1 // indirect github.com/hashicorp/go-metrics v0.5.4 // indirect + github.com/hashicorp/go-msgpack/v2 v2.1.5 // indirect github.com/hashicorp/go-multierror v1.1.1 // indirect github.com/hashicorp/go-plugin v1.8.0 // indirect + github.com/hashicorp/go-rootcerts v1.0.2 // indirect + github.com/hashicorp/go-sockaddr v1.0.7 // indirect github.com/hashicorp/go-version v1.9.0 // indirect github.com/hashicorp/golang-lru v1.0.2 // indirect + github.com/hashicorp/golang-lru/v2 v2.0.7 // indirect + github.com/hashicorp/memberlist v0.5.4 // indirect + github.com/hashicorp/serf v0.10.2 // indirect github.com/hashicorp/yamux v0.1.2 // indirect github.com/hasura/go-graphql-client v0.15.1 // indirect github.com/hdevalence/ed25519consensus v0.2.0 // indirect github.com/holiman/billy v0.0.0-20250707135307-f2f9b9aae7db // indirect github.com/holiman/bloomfilter/v2 v2.0.3 // indirect github.com/holiman/uint256 v1.3.2 // indirect + github.com/huandu/xstrings v1.5.0 // indirect github.com/huin/goupnp v1.3.0 // indirect github.com/iancoleman/strcase v0.3.0 // indirect github.com/imdario/mergo v0.3.16 // indirect + github.com/in-toto/attestation v1.2.0 // indirect github.com/in-toto/in-toto-golang v0.11.0 // indirect github.com/inconshreveable/mousetrap v1.1.0 // indirect + github.com/influxdata/tdigest v0.0.2-0.20210216194612-fc98d27c9e8b // indirect github.com/inhies/go-bytesize v0.0.0-20220417184213-4913239db9cf // indirect github.com/invopop/jsonschema v0.14.0 // indirect github.com/jackc/pgio v1.0.0 // indirect github.com/jackc/pgpassfile v1.0.0 // indirect github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect github.com/jackc/pgtype v1.14.4 // indirect + github.com/jackc/pgx/v5 v5.9.2 // indirect + github.com/jackc/puddle/v2 v2.2.2 // indirect github.com/jackpal/go-nat-pmp v1.0.2 // indirect + github.com/jaegertracing/jaeger-idl v0.6.0 // indirect + github.com/jhump/protocompile v0.0.0-20221021153901-4f6f732835e8 // indirect github.com/jinzhu/copier v0.4.0 // indirect github.com/jmespath/go-jmespath v0.4.0 // indirect github.com/jmhodges/levigo v1.0.0 // indirect @@ -539,12 +431,18 @@ require ( github.com/jonboulle/clockwork v0.5.0 // indirect github.com/jpillora/backoff v1.0.0 // indirect github.com/json-iterator/go v1.1.12 // indirect + github.com/julienschmidt/httprouter v1.3.0 // indirect github.com/karalabe/hid v1.0.1-0.20260315100226-f5d04adeffeb // indirect github.com/kelseyhightower/envconfig v1.4.0 // indirect github.com/klauspost/compress v1.18.6 // indirect github.com/klauspost/cpuid/v2 v2.3.0 // indirect + github.com/klauspost/crc32 v1.3.0 // indirect + github.com/knadh/koanf/maps v0.1.2 // indirect + github.com/knadh/koanf/providers/confmap v1.0.0 // indirect + github.com/knadh/koanf/v2 v2.3.3 // indirect github.com/kr/pretty v0.3.1 // indirect github.com/kr/text v0.2.0 // indirect + github.com/kylelemons/godebug v1.1.0 // indirect github.com/leanovate/gopter v0.2.11 // indirect github.com/leodido/go-urn v1.4.0 // indirect github.com/liggitt/tabwriter v0.0.0-20181228230101-89fcab3d43de // indirect @@ -557,20 +455,27 @@ require ( github.com/mattn/go-isatty v0.0.22 // indirect github.com/mattn/go-runewidth v0.0.24 // indirect github.com/mattn/go-shellwords v1.0.12 // indirect + github.com/mdlayher/socket v0.5.1 // indirect + github.com/mdlayher/vsock v1.2.1 // indirect + github.com/mfridman/interpolate v0.0.2 // indirect + github.com/miekg/dns v1.1.72 // indirect github.com/minio/crc64nvme v1.1.1 // indirect github.com/minio/md5-simd v1.1.2 // indirect github.com/minio/minio-go/v7 v7.0.99 // indirect github.com/minio/sha256-simd v1.0.1 // indirect + github.com/mitchellh/copystructure v1.2.0 // indirect github.com/mitchellh/go-homedir v1.1.0 // indirect github.com/mitchellh/go-testing-interface v1.14.1 // indirect github.com/mitchellh/go-wordwrap v1.0.1 // indirect github.com/mitchellh/hashstructure/v2 v2.0.2 // indirect github.com/mitchellh/mapstructure v1.5.1-0.20220423185008-bf980b35cac4 // indirect github.com/mitchellh/pointerstructure v1.2.0 // indirect + github.com/mitchellh/reflectwalk v1.0.2 // indirect github.com/moby/buildkit v0.29.0 // indirect github.com/moby/docker-image-spec v1.3.1 // indirect github.com/moby/go-archive v0.2.0 // indirect github.com/moby/locker v1.0.1 // indirect + github.com/moby/moby/api v1.54.2 // indirect github.com/moby/patternmatcher v0.6.1 // indirect github.com/moby/spdystream v0.5.1 // indirect github.com/moby/sys/atomicwriter v0.1.0 // indirect @@ -590,28 +495,57 @@ require ( github.com/mr-tron/base58 v1.3.0 // indirect github.com/mtibben/percent v0.2.1 // indirect github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect + github.com/mwitkow/go-conntrack v0.0.0-20190716064945-2f068394615f // indirect github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f // indirect + github.com/oapi-codegen/runtime v1.4.1 // indirect github.com/oasisprotocol/curve25519-voi v0.0.0-20230904125328-1f23a7beb09a // indirect github.com/oklog/run v1.2.0 // indirect + github.com/oklog/ulid/v2 v2.1.1 // indirect + github.com/open-telemetry/opentelemetry-collector-contrib/internal/exp/metrics v0.148.0 // indirect + github.com/open-telemetry/opentelemetry-collector-contrib/pkg/pdatautil v0.148.0 // indirect + github.com/open-telemetry/opentelemetry-collector-contrib/processor/deltatocumulativeprocessor v0.148.0 // indirect github.com/opencontainers/go-digest v1.0.0 // indirect github.com/opencontainers/image-spec v1.1.1 // indirect + github.com/opentracing-contrib/go-grpc v0.1.2 // indirect + github.com/opentracing-contrib/go-stdlib v1.1.1 // indirect + github.com/opentracing/opentracing-go v1.2.1-0.20220228012449-10b1cf09e00b // indirect github.com/otiai10/copy v1.14.1 // indirect github.com/otiai10/mint v1.6.3 // indirect github.com/patrickmn/go-cache v2.1.0+incompatible // indirect + github.com/pb33f/jsonpath v0.8.1 // indirect + github.com/pb33f/libopenapi v0.34.3 // indirect + github.com/pb33f/libopenapi-validator v0.13.3 // indirect + github.com/pb33f/ordered-map/v2 v2.3.1 // indirect github.com/pelletier/go-toml v1.9.5 // indirect github.com/pelletier/go-toml/v2 v2.3.1 github.com/peterbourgon/diskv v2.0.1+incompatible // indirect github.com/petermattis/goid v0.0.0-20240813172612-4fcff4a6cae7 // indirect github.com/philhofer/fwd v1.2.0 // indirect github.com/pierrec/lz4/v4 v4.1.26 // indirect + github.com/pion/dtls/v3 v3.1.2 // indirect github.com/pion/logging v0.2.4 // indirect + github.com/pion/stun/v3 v3.1.2 // indirect + github.com/pion/transport/v4 v4.0.1 // indirect + github.com/pires/go-proxyproto v0.8.1 // indirect + github.com/pkg/browser v0.0.0-20240102092130-5ac0b6a4141c // indirect github.com/planetscale/vtprotobuf v0.6.1-0.20240319094008-0393e58bdf10 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect + github.com/pressly/goose/v3 v3.27.0 // indirect + github.com/prometheus/alertmanager v0.31.1 // indirect github.com/prometheus/client_golang v1.23.2 // indirect + github.com/prometheus/client_golang/exp v0.0.0-20260325093428-d8591d0db856 // indirect github.com/prometheus/client_model v0.6.2 // indirect + github.com/prometheus/common v1.20.99 // indirect + github.com/prometheus/exporter-toolkit v0.15.1 // indirect + github.com/prometheus/otlptranslator v1.0.0 // indirect github.com/prometheus/procfs v0.20.1 // indirect github.com/prometheus/prometheus v0.311.3 // indirect + github.com/prometheus/sigv4 v0.4.1 // indirect + github.com/puzpuzpuz/xsync/v4 v4.4.0 // indirect + github.com/quic-go/qpack v0.6.0 // indirect + github.com/quic-go/quic-go v0.59.1 // indirect + github.com/redis/go-redis/v9 v9.18.0 // indirect github.com/robfig/cron/v3 v3.0.1 // indirect github.com/rogpeppe/go-internal v1.14.1 // indirect github.com/rs/cors v1.11.1 // indirect @@ -620,50 +554,82 @@ require ( github.com/samber/lo v1.53.0 // indirect github.com/sanity-io/litter v1.5.5 // indirect github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect + github.com/santhosh-tekuri/jsonschema/v6 v6.0.2 // indirect github.com/sasha-s/go-deadlock v0.3.5 // indirect github.com/scylladb/go-reflectx v1.0.1 // indirect + github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 // indirect github.com/secure-systems-lab/go-securesystemslib v0.11.0 // indirect + github.com/sercand/kuberesolver/v6 v6.0.1 // indirect github.com/sethvargo/go-retry v0.3.0 // indirect github.com/shibumi/go-pathspec v1.3.0 // indirect github.com/shirou/gopsutil v3.21.11+incompatible // indirect github.com/shirou/gopsutil/v3 v3.24.3 // indirect github.com/shirou/gopsutil/v4 v4.26.3 // indirect + github.com/shopspring/decimal v1.4.0 // indirect + github.com/sigstore/sigstore v1.10.8 // indirect + github.com/sigstore/sigstore-go v1.2.0 // indirect github.com/sigurn/crc16 v0.0.0-20211026045750-20ab5afb07e3 // indirect github.com/sirupsen/logrus v1.9.4 // indirect github.com/skratchdot/open-golang v0.0.0-20200116055534-eef842397966 // indirect github.com/smartcontractkit/ccip-owner-contracts v0.1.0 // indirect github.com/smartcontractkit/chainlink-aptos v0.0.0-20260708114855-e953eeb028a7 + github.com/smartcontractkit/chainlink-aptos/codec v0.0.0-20260716230027-bd85997bc03c // indirect github.com/smartcontractkit/chainlink-automation v0.8.1 // indirect + github.com/smartcontractkit/chainlink-canton v0.0.0-20260615233851-4e78e7c23a58 // indirect github.com/smartcontractkit/chainlink-ccip v0.1.1-solana.0.20260730150638-e7b61c05cec1 // indirect + github.com/smartcontractkit/chainlink-ccip/chains/evm v0.0.0-20260624154507-ea7ff77a0ddb // indirect + github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb // indirect + github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 // indirect github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 + github.com/smartcontractkit/chainlink-data-streams v1.1.0 // indirect github.com/smartcontractkit/chainlink-evm v0.3.4-0.20260810110946-8174b6bb7fc9 + github.com/smartcontractkit/chainlink-feeds v0.1.2-0.20250227211209-7cd000095135 // indirect github.com/smartcontractkit/chainlink-framework/capabilities v0.0.0-20260423135514-5b1a7565a99c // indirect github.com/smartcontractkit/chainlink-framework/chains v0.0.0-20260724153515-bb6a2de39bcb // indirect github.com/smartcontractkit/chainlink-framework/metrics v0.0.0-20260723212800-b2f21d31b1d2 // indirect github.com/smartcontractkit/chainlink-framework/multinode v0.0.0-20260625152110-9afcf56e4053 // indirect github.com/smartcontractkit/chainlink-protos/billing/go v0.0.0-20251024234028-0988426d98f4 // indirect + github.com/smartcontractkit/chainlink-protos/chainlink-ccv/committee-verifier v0.0.0-20251211142334-5c3421fe2c8d // indirect + github.com/smartcontractkit/chainlink-protos/chainlink-ccv/heartbeat v0.0.0-20260115142640-f6b99095c12e // indirect + github.com/smartcontractkit/chainlink-protos/chainlink-ccv/message-discovery v0.0.0-20251211142334-5c3421fe2c8d // indirect + github.com/smartcontractkit/chainlink-protos/chainlink-ccv/message-rules v0.0.0-20260505131349-78e491b80735 // indirect + github.com/smartcontractkit/chainlink-protos/chainlink-ccv/verifier v0.0.0-20251211142334-5c3421fe2c8d // indirect + github.com/smartcontractkit/chainlink-protos/data-feeds v0.1.1-0.20260501174546-2e8846986b36 // indirect + github.com/smartcontractkit/chainlink-protos/job-distributor v0.20.1-0.20260701185448-696c075849ea // indirect github.com/smartcontractkit/chainlink-protos/linking-service/go v0.0.0-20260512230622-65f10f4cd305 // indirect + github.com/smartcontractkit/chainlink-protos/metering/go v0.0.0-20260729184203-90b4cdd48536 // indirect + github.com/smartcontractkit/chainlink-protos/node-platform v0.0.0-20260709145319-7782fb89eb16 // indirect github.com/smartcontractkit/chainlink-protos/orchestrator v0.11.0 // indirect github.com/smartcontractkit/chainlink-protos/storage-service v0.3.0 // indirect github.com/smartcontractkit/chainlink-protos/svr v1.3.0 // indirect + github.com/smartcontractkit/chainlink-solana/contracts v0.0.0-20260513123719-d347eaf314e1 // indirect github.com/smartcontractkit/chainlink-stellar v0.0.3 // indirect github.com/smartcontractkit/chainlink-stellar/bindings v0.0.0-20260727172856-734bee1b2489 // indirect github.com/smartcontractkit/chainlink-sui v0.0.0-20260817215059-cb78eb56308c // indirect + github.com/smartcontractkit/chainlink-sui/codec v0.0.0-20260720132736-e99278bfdc96 // indirect github.com/smartcontractkit/chainlink-testing-framework/framework/components/dockercompose v0.1.23 // indirect + github.com/smartcontractkit/chainlink-testing-framework/lib v1.54.9 // indirect + github.com/smartcontractkit/chainlink-testing-framework/lib/grafana v1.50.0 // indirect github.com/smartcontractkit/chainlink-testing-framework/parrot v0.6.2 // indirect + github.com/smartcontractkit/chainlink-testing-framework/wasp v1.52.0 // indirect github.com/smartcontractkit/chainlink-ton v1.0.5-0.20260629213843-c52e07523035 // indirect + github.com/smartcontractkit/chainlink-ton/cciplib v0.1.1-0.20260716214810-db5ecc877490 // indirect github.com/smartcontractkit/chainlink-tron/relayer v0.0.11-0.20260408092456-3c6369888d4a // indirect github.com/smartcontractkit/chainlink/system-tests/tests/regression/cre/httpaction-negative v0.0.0-20251015074515-1acc1d3fb4c0 github.com/smartcontractkit/chainlink/system-tests/tests/smoke/cre/vaultsecret v0.0.0-00010101000000-000000000000 github.com/smartcontractkit/freeport v0.1.3-0.20250828155247-add56fa28aad // indirect + github.com/smartcontractkit/go-daml v0.0.0-20260615231356-88c6ee9b5774 // indirect github.com/smartcontractkit/grpc-proxy v0.0.0-20240830132753-a7e17fec5ab7 // indirect + github.com/smartcontractkit/libocr v0.0.0-20260810200708-618b5bf7f342 // indirect github.com/smartcontractkit/mcms v0.47.2-0.20260611004209-3f43937dcffd // indirect github.com/smartcontractkit/smdkg v0.0.0-20251029093710-c38905e58aeb // indirect github.com/smartcontractkit/tdh2/go/tdh2 v0.0.0-20251120172354-e8ec0386b06c github.com/smartcontractkit/wsrpc v0.8.5-0.20250502134807-c57d3d995945 // indirect + github.com/sony/gobreaker/v2 v2.4.0 // indirect github.com/spf13/cast v1.10.0 // indirect github.com/spf13/cobra v1.10.2 // indirect github.com/spf13/pflag v1.0.10 // indirect + github.com/stellar/go-xdr v0.0.0-20260529210834-0bf8f4956364 // indirect github.com/stephenlacy/go-ethereum-hdwallet v0.0.0-20230913225845-a4fa94429863 // indirect github.com/streamingfast/logging v0.0.0-20230608130331-f22c91403091 // indirect github.com/stretchr/objx v0.5.3 // indirect @@ -678,6 +644,7 @@ require ( github.com/tidwall/pretty v1.2.1 // indirect github.com/tilt-dev/fsnotify v1.4.8-0.20220602155310-fff9c274a375 // indirect github.com/tinylib/msgp v1.6.3 // indirect + github.com/tjhop/slog-gokit v0.1.6 // indirect github.com/tklauser/go-sysconf v0.4.0 // indirect github.com/tklauser/numcpus v0.12.0 // indirect github.com/tonistiigi/dchapes-mode v0.0.0-20250318174251-73d941a28323 // indirect @@ -687,15 +654,19 @@ require ( github.com/tonistiigi/vt100 v0.0.0-20240514184818-90bafcd6abab // indirect github.com/twitchyliquid64/golang-asm v0.15.1 // indirect github.com/tyler-smith/go-bip39 v1.1.0 // indirect + github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect + github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/ugorji/go/codec v1.3.1 // indirect github.com/urfave/cli/v2 v2.27.7 // indirect github.com/valyala/fastjson v1.6.10 // indirect github.com/vektah/gqlparser/v2 v2.5.30 // indirect + github.com/wlynxg/anet v0.0.5 // indirect github.com/x448/float16 v0.8.4 // indirect github.com/xhit/go-str2duration/v2 v2.1.0 // indirect github.com/xlab/treeprint v1.2.0 // indirect github.com/xrash/smetrics v0.0.0-20240521201337-686a1a2994c1 // indirect github.com/xssnick/tonutils-go v1.14.1 // indirect + github.com/youmark/pkcs8 v0.0.0-20240726163527-a2c0da244d78 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect github.com/zeebo/xxh3 v1.1.0 // indirect github.com/zksync-sdk/zksync2-go v1.1.1-0.20250620124214-2c742ee399c6 // indirect @@ -704,12 +675,30 @@ require ( go.dedis.ch/fixbuf v1.0.3 // indirect go.dedis.ch/kyber/v3 v3.1.0 // indirect go.etcd.io/bbolt v1.4.3 // indirect + go.etcd.io/etcd/api/v3 v3.6.7 // indirect + go.etcd.io/etcd/client/pkg/v3 v3.6.7 // indirect + go.etcd.io/etcd/client/v3 v3.6.7 // indirect go.mongodb.org/mongo-driver v1.17.9 // indirect + go.mongodb.org/mongo-driver/v2 v2.5.0 // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect + go.opentelemetry.io/collector/component v1.54.0 // indirect + go.opentelemetry.io/collector/confmap v1.54.0 // indirect + go.opentelemetry.io/collector/confmap/xconfmap v0.148.0 // indirect + go.opentelemetry.io/collector/consumer v1.54.0 // indirect + go.opentelemetry.io/collector/featuregate v1.54.0 // indirect + go.opentelemetry.io/collector/internal/componentalias v0.148.0 // indirect + go.opentelemetry.io/collector/pdata v1.54.0 // indirect + go.opentelemetry.io/collector/pipeline v1.54.0 // indirect + go.opentelemetry.io/collector/processor v1.54.0 // indirect + go.opentelemetry.io/contrib/bridges/prometheus v0.68.0 // indirect + go.opentelemetry.io/contrib/exporters/autoexport v0.64.0 // indirect go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.68.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace v0.67.0 // indirect go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.67.0 // indirect + go.opentelemetry.io/contrib/propagators/jaeger v1.39.0 // indirect + go.opentelemetry.io/contrib/samplers/jaegerremote v0.33.0 // indirect go.opentelemetry.io/otel v1.44.0 // indirect + go.opentelemetry.io/otel/exporters/jaeger v1.17.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.19.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploghttp v0.20.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlpmetric/otlpmetricgrpc v1.43.0 // indirect @@ -717,6 +706,7 @@ require ( go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.43.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc v1.43.0 // indirect go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.43.0 // indirect + go.opentelemetry.io/otel/exporters/prometheus v0.61.0 // indirect go.opentelemetry.io/otel/exporters/stdout/stdoutlog v0.19.0 // indirect go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.43.0 // indirect go.opentelemetry.io/otel/exporters/stdout/stdouttrace v1.43.0 // indirect @@ -729,9 +719,14 @@ require ( go.opentelemetry.io/proto/otlp v1.10.0 // indirect go.starlark.net v0.0.0-20230525235612-a134d8f9ddca // indirect go.uber.org/atomic v1.11.0 // indirect + go.uber.org/goleak v1.3.0 // indirect go.uber.org/multierr v1.11.0 // indirect go.uber.org/ratelimit v0.3.1 // indirect go.uber.org/zap v1.28.0 // indirect + go.yaml.in/yaml/v2 v2.4.4 // indirect + go.yaml.in/yaml/v3 v3.0.4 // indirect + go.yaml.in/yaml/v4 v4.0.0-rc.4 // indirect + go4.org/netipx v0.0.0-20230125063823-8449b0a6169f // indirect golang.org/x/arch v0.22.0 // indirect golang.org/x/crypto v0.54.0 // indirect golang.org/x/exp v0.0.0-20260508232706-74f9aab9d74a // indirect @@ -745,6 +740,7 @@ require ( golang.org/x/tools v0.47.0 // indirect gomodules.xyz/jsonpatch/v2 v2.4.0 // indirect gonum.org/v1/gonum v0.17.0 // indirect + google.golang.org/api v0.272.0 // indirect google.golang.org/genproto v0.0.0-20260217215200-42d3e9bedb6d // indirect google.golang.org/genproto/googleapis/api v0.0.0-20260526163538-3dc84a4a5aaa // indirect google.golang.org/genproto/googleapis/rpc v0.0.0-20260526163538-3dc84a4a5aaa // indirect @@ -772,6 +768,7 @@ require ( sigs.k8s.io/kustomize/api v0.17.2 // indirect sigs.k8s.io/kustomize/kyaml v0.17.1 // indirect sigs.k8s.io/randfill v1.0.0 // indirect + sigs.k8s.io/structured-merge-diff/v6 v6.3.0 // indirect sigs.k8s.io/yaml v1.6.0 // indirect tags.cncf.io/container-device-interface v1.1.0 // indirect ) diff --git a/system-tests/tests/go.sum b/system-tests/tests/go.sum index bde4cfab9b8..9e11534b253 100644 --- a/system-tests/tests/go.sum +++ b/system-tests/tests/go.sum @@ -178,8 +178,8 @@ github.com/anchore/go-struct-converter v0.1.0 h1:2rDRssAl6mgKBSLNiVCMADgZRhoqtw9 github.com/anchore/go-struct-converter v0.1.0/go.mod h1:rYqSE9HbjzpHTI74vwPvae4ZVYZd1lue2ta6xHPdblA= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883 h1:bvNMNQO63//z+xNgfBlViaCIJKLlCJ6/fmUseuG0wVQ= github.com/andreyvit/diff v0.0.0-20170406064948-c7f18ee00883/go.mod h1:rCTlJbsFo29Kk6CurOXKm700vrz8f0KW0JNfpkRJY/8= -github.com/andybalholm/brotli v1.2.1 h1:R+f5xP285VArJDRgowrfb9DqL18yVK0gKAW/F+eTWro= -github.com/andybalholm/brotli v1.2.1/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= +github.com/andybalholm/brotli v1.2.2 h1:HzTuoo2ErYQqf5qvcJInB8uvqSVxRttzkFexPWtnceM= +github.com/andybalholm/brotli v1.2.2/go.mod h1:rzTDkvFWvIrjDXZHkuS16NPggd91W3kUSvPlQ1pLaKY= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= github.com/apache/arrow-go/v18 v18.6.0 h1:GX/Jyd3R7mCLiECAwY9FWbbaYblie2WXBSz4Sw8fNpM= github.com/apache/arrow-go/v18 v18.6.0/go.mod h1:gm3MiPpY82fLYK5VKPB3WoJbsiLVDfT7flD5/vHReKw= @@ -1756,8 +1756,8 @@ github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260 github.com/smartcontractkit/chainlink-ccip/chains/solana/gobindings v0.0.0-20260624154507-ea7ff77a0ddb/go.mod h1:67YbnoglYD61Pz/jTVCgav9wFq7S35OU8UyQSvPllRw= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6 h1:t5VUHVFEdcqa0/faJiHWusuW+egKpqK3YwWZO4/yJto= github.com/smartcontractkit/chainlink-ccv v0.1.1-0.20260716164331-d938b371c5d6/go.mod h1:0v6RGdYa9NezVnBPIAVyxB3A9furKWwaSkLha+URYGk= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75 h1:4qx+jlAlYLaVNs3iJTRZGZ0qowPlXL7tKEsTO7oE8PU= -github.com/smartcontractkit/chainlink-common v0.11.2-0.20260811140401-3fb1738abb75/go.mod h1:MHv5LI3yRpjsN+FaQ1FL0q60WxCjA8CTJ7BbvRa6ClM= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8 h1:yW78MiflVwZmrhMkhXjNv94lbfVHHfuahRfMIA2y8QI= +github.com/smartcontractkit/chainlink-common v0.11.2-0.20260813154620-2fb18e352bf8/go.mod h1:BJ/X2jB9qPYb835qXtNGpYoq/yiO39FzehhpwGTzJFw= github.com/smartcontractkit/chainlink-common/keystore v1.3.0 h1:V05Rp9/dTc4Wyipsk1EYnW3riZyjDVKmhz3769JpnHU= github.com/smartcontractkit/chainlink-common/keystore v1.3.0/go.mod h1:vHV8BGm6TN7jBbMsWxq1Hqm3HbCtYFwzvKS0CCczxG8= github.com/smartcontractkit/chainlink-common/pkg/chipingress v0.0.11-0.20260724142814-45996a1bcb72 h1:uWEwl7i2ryuRVoV4DmIKm6mqYevf1lH/8cQYhw/JXko= diff --git a/system-tests/tests/smoke/cre/vault_don_test_helpers.go b/system-tests/tests/smoke/cre/vault_don_test_helpers.go index 34da3f4ac69..c9eec7ec505 100644 --- a/system-tests/tests/smoke/cre/vault_don_test_helpers.go +++ b/system-tests/tests/smoke/cre/vault_don_test_helpers.go @@ -1539,8 +1539,16 @@ func updateVaultCapabilityConfigInRegistry(t *testing.T, testEnv *ttypes.TestEnv _, err = deployerClient.Decode(capReg.UpdateDONByName(deployerClient.NewTXOpts(), don.Name, updateParams)) require.NoError(t, err, "UpdateDONByName tx failed") - testLogger.Info().Msg("Waiting for registry syncer to propagate the on-chain config change...") - time.Sleep(15 * time.Second) // registry syncer polls every 12s; one tick + margin + testLogger.Info().Msg("Waiting for registry syncer to propagate the on-chain config change to workflow nodes...") + var dbPort, nodeCount int + for _, nodeSet := range testEnv.Config.NodeSets { + if slices.Contains(nodeSet.Capabilities, string(cre.WorkflowDON)) || slices.Contains(nodeSet.DONTypes, string(cre.WorkflowDON)) { + dbPort = nodeSet.DbInput.Port + nodeCount = len(nodeSet.NodeSpecs) + break + } + } + require.NoError(t, creworkflow.WaitForVaultConfigPropagation(t.Context(), dbPort, nodeCount, vaultPublicKey)) } func allowlistRequest(t *testing.T, owner string, request jsonrpc.Request[json.RawMessage], sethClient *seth.Client, wfRegistryContract *workflow_registry_v2_wrapper.WorkflowRegistry) { diff --git a/tools/test/go.mod b/tools/test/go.mod index eca43e7ecf3..800c5bc33ab 100644 --- a/tools/test/go.mod +++ b/tools/test/go.mod @@ -3,14 +3,14 @@ module github.com/smartcontractkit/chainlink/v2/tools/test go 1.26.5 require ( - charm.land/lipgloss/v2 v2.0.5 + charm.land/lipgloss/v2 v2.0.6 github.com/charmbracelet/x/term v0.2.2 github.com/jackc/pgx/v5 v5.10.0 - github.com/smartcontractkit/testrig v0.0.12 + github.com/smartcontractkit/testrig v0.0.13 github.com/spf13/pflag v1.0.10 github.com/stretchr/testify v1.11.1 - github.com/testcontainers/testcontainers-go v0.43.0 - github.com/testcontainers/testcontainers-go/modules/postgres v0.43.0 + github.com/testcontainers/testcontainers-go v0.44.0 + github.com/testcontainers/testcontainers-go/modules/postgres v0.44.0 ) require ( @@ -18,13 +18,13 @@ require ( dario.cat/mergo v1.0.2 // indirect github.com/Azure/go-ansiterm v0.0.0-20250102033503-faa5f7b0171c // indirect github.com/Microsoft/go-winio v0.6.2 // indirect - github.com/buger/jsonparser v1.2.0 // indirect + github.com/buger/jsonparser v1.6.1 // indirect github.com/cenkalti/backoff/v4 v4.3.0 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect github.com/charmbracelet/colorprofile v0.4.3 // indirect - github.com/charmbracelet/ultraviolet v0.0.0-20260720091822-7cc6674724ac // indirect - github.com/charmbracelet/x/ansi v0.11.7 // indirect - github.com/charmbracelet/x/exp/charmtone v0.0.0-20260720091843-3eef36eaaa28 // indirect + github.com/charmbracelet/ultraviolet v0.0.0-20260812204455-68fa937c71be // indirect + github.com/charmbracelet/x/ansi v0.11.8 // indirect + github.com/charmbracelet/x/exp/charmtone v0.0.0-20260813141921-f091cedeaf78 // indirect github.com/charmbracelet/x/termios v0.1.1 // indirect github.com/charmbracelet/x/windows v0.2.2 // indirect github.com/clipperhouse/displaywidth v0.11.0 // indirect @@ -36,7 +36,7 @@ require ( github.com/cpuguy83/dockercfg v0.3.2 // indirect github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect github.com/distribution/reference v0.6.0 // indirect - github.com/docker/go-connections v0.7.0 // indirect + github.com/docker/go-connections v0.8.1 // indirect github.com/docker/go-units v0.5.0 // indirect github.com/ebitengine/purego v0.10.2 // indirect github.com/felixge/httpsnoop v1.1.0 // indirect @@ -48,20 +48,20 @@ require ( github.com/jackc/pgpassfile v1.0.0 // indirect github.com/jackc/pgservicefile v0.0.0-20240606120523-5a60cdf6a761 // indirect github.com/jackc/puddle/v2 v2.2.2 // indirect - github.com/klauspost/compress v1.19.1 // indirect + github.com/klauspost/compress v1.19.2 // indirect github.com/lib/pq v1.11.1 // indirect - github.com/lucasb-eyer/go-colorful v1.4.0 // indirect - github.com/lufia/plan9stats v0.0.0-20260627054121-477a66015f15 // indirect - github.com/magiconair/properties v1.8.10 // indirect - github.com/mattn/go-runewidth v0.0.24 // indirect + github.com/lucasb-eyer/go-colorful v1.4.1 // indirect + github.com/lufia/plan9stats v0.0.0-20260802145828-341c2f0c90b5 // indirect + github.com/magiconair/properties v1.18.11 // indirect + github.com/mattn/go-runewidth v0.0.27 // indirect github.com/moby/docker-image-spec v1.3.1 // indirect - github.com/moby/go-archive v0.2.0 // indirect + github.com/moby/go-archive v0.3.3 // indirect github.com/moby/moby/api v1.55.0 // indirect - github.com/moby/moby/client v0.5.0 // indirect + github.com/moby/moby/client v0.5.1 // indirect github.com/moby/patternmatcher v0.6.1 // indirect github.com/moby/sys/sequential v0.7.0 // indirect github.com/moby/sys/user v0.4.1 // indirect - github.com/moby/sys/userns v0.1.0 // indirect + github.com/moby/sys/userns v0.2.0 // indirect github.com/moby/term v0.5.2 // indirect github.com/muesli/cancelreader v0.2.2 // indirect github.com/muesli/mango v0.2.0 // indirect @@ -71,24 +71,24 @@ require ( github.com/opencontainers/go-digest v1.0.0 // indirect github.com/opencontainers/image-spec v1.1.1 // indirect github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect - github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 // indirect + github.com/power-devops/perfstat v0.0.0-20260805114148-88456608a4f6 // indirect github.com/rivo/uniseg v0.4.7 // indirect - github.com/shirou/gopsutil/v4 v4.26.6 // indirect - github.com/sirupsen/logrus v1.9.4 // indirect + github.com/shirou/gopsutil/v4 v4.26.7 // indirect + github.com/sirupsen/logrus v1.10.0 // indirect github.com/spf13/cobra v1.10.2 // indirect github.com/tklauser/go-sysconf v0.4.0 // indirect github.com/tklauser/numcpus v0.12.0 // indirect - github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e // indirect + github.com/xo/terminfo v1.0.0 // indirect github.com/yusufpapurcu/wmi v1.2.4 // indirect go.opentelemetry.io/auto/sdk v1.2.1 // indirect - go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0 // indirect - go.opentelemetry.io/otel v1.44.0 // indirect - go.opentelemetry.io/otel/metric v1.44.0 // indirect - go.opentelemetry.io/otel/trace v1.44.0 // indirect - golang.org/x/crypto v0.54.0 // indirect + go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.70.0 // indirect + go.opentelemetry.io/otel v1.45.0 // indirect + go.opentelemetry.io/otel/metric v1.45.0 // indirect + go.opentelemetry.io/otel/trace v1.45.0 // indirect + golang.org/x/crypto v0.55.0 // indirect golang.org/x/sync v0.22.0 // indirect golang.org/x/sys v0.47.0 // indirect golang.org/x/term v0.45.0 // indirect - golang.org/x/text v0.40.0 // indirect + golang.org/x/text v0.41.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/tools/test/go.sum b/tools/test/go.sum index 5f8c14f9d3e..b348810bd52 100644 --- a/tools/test/go.sum +++ b/tools/test/go.sum @@ -1,7 +1,7 @@ charm.land/fang/v2 v2.0.1 h1:zQCM8JQJ1JnQX/66B5jlCYBUxL2as5JXQZ2KJ6EL0mY= charm.land/fang/v2 v2.0.1/go.mod h1:S1GmkpcvK+OB5w9caywUnJcsMew45Ot8FXqoz8ALrII= -charm.land/lipgloss/v2 v2.0.5 h1:kbNxgeeUOYv5J0YdpxFjfvf3dFvqH8Aci4zB6xqFtrY= -charm.land/lipgloss/v2 v2.0.5/go.mod h1:9oqhxt4yxIMe6q5A4kHr44DremZk7J9UNh74GlWa5nc= +charm.land/lipgloss/v2 v2.0.6 h1:EaGKeuA8FvF+v2BT5VmZd2LoYLaMZJXA5n34th8nCIQ= +charm.land/lipgloss/v2 v2.0.6/go.mod h1:ipDDJNSGa1hlwDtSfW1s2/xR8Vdhbut4PXh2zEKZd0Q= dario.cat/mergo v1.0.2 h1:85+piFYR1tMbRrLcDwR18y4UKJ3aH1Tbzi24VRW1TK8= dario.cat/mergo v1.0.2/go.mod h1:E/hbnu0NxMFBjpMIE34DRGLWqDy0g5FuKDhCb31ngxA= github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 h1:He8afgbRMd7mFxO99hRNu+6tazq8nFF9lIwo9JFroBk= @@ -12,20 +12,20 @@ github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERo github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU= github.com/aymanbagabas/go-udiff v0.4.1 h1:OEIrQ8maEeDBXQDoGCbbTTXYJMYRCRO1fnodZ12Gv5o= github.com/aymanbagabas/go-udiff v0.4.1/go.mod h1:0L9PGwj20lrtmEMeyw4WKJ/TMyDtvAoK9bf2u/mNo3w= -github.com/buger/jsonparser v1.2.0 h1:4EFcvK1kD4jyj6YqNK6skK6w+y7FHHBR+XBCtxwu/6g= -github.com/buger/jsonparser v1.2.0/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= +github.com/buger/jsonparser v1.6.1 h1:I0phFv0PlbLHnM7TZAVjZ2MJ2/eWRTDyuO7GLR98IEs= +github.com/buger/jsonparser v1.6.1/go.mod h1:6RYKKt7H4d4+iWqouImQ9R2FZql3VbhNgx27UK13J/0= github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= github.com/charmbracelet/colorprofile v0.4.3 h1:QPa1IWkYI+AOB+fE+mg/5/4HRMZcaXex9t5KX76i20Q= github.com/charmbracelet/colorprofile v0.4.3/go.mod h1:/zT4BhpD5aGFpqQQqw7a+VtHCzu+zrQtt1zhMt9mR4Q= -github.com/charmbracelet/ultraviolet v0.0.0-20260720091822-7cc6674724ac h1:BP8qMDGjmOejoVTklEXXTHI0OwMIt8JHPSPHxscFFwA= -github.com/charmbracelet/ultraviolet v0.0.0-20260720091822-7cc6674724ac/go.mod h1:psnCZIfwwxVs6v6DhUc6NJ8AQ3ejvs2ejKwoOMeVmUk= -github.com/charmbracelet/x/ansi v0.11.7 h1:kzv1kJvjg2S3r9KHo8hDdHFQLEqn4RBCb39dAYC84jI= -github.com/charmbracelet/x/ansi v0.11.7/go.mod h1:9qGpnAVYz+8ACONkZBUWPtL7lulP9No6p1epAihUZwQ= -github.com/charmbracelet/x/exp/charmtone v0.0.0-20260720091843-3eef36eaaa28 h1:mTAU+w2TSNn+ueF3fRMZQmAJl9A9KsCyymIIacjKqr0= -github.com/charmbracelet/x/exp/charmtone v0.0.0-20260720091843-3eef36eaaa28/go.mod h1:nsExn0DGyX0lh9LwLHTn2Gg+hafdzfSXnC+QmEJTZFY= +github.com/charmbracelet/ultraviolet v0.0.0-20260812204455-68fa937c71be h1:qEvkJy1sjJXP+yf8IH2o13NV+Rh4nIUHjaLNJ+pWxpI= +github.com/charmbracelet/ultraviolet v0.0.0-20260812204455-68fa937c71be/go.mod h1:nAw0d9PhFp1qdzi2xhQU5YOu5sVpDIHWlaW2Uz/bCro= +github.com/charmbracelet/x/ansi v0.11.8 h1:JMFwp0CgDC2+jcOB162HH5k7I3FVbgFSMMYg7dSPBQQ= +github.com/charmbracelet/x/ansi v0.11.8/go.mod h1:ZNN+3mXny/516oTQPLMPIBeSINvNJJQ8uQXDgbeJxY0= +github.com/charmbracelet/x/exp/charmtone v0.0.0-20260813141921-f091cedeaf78 h1:ryuvL2vfLcRo/P+WtaqLYsavD0bFRKglAMqGUKnHID8= +github.com/charmbracelet/x/exp/charmtone v0.0.0-20260813141921-f091cedeaf78/go.mod h1:nsExn0DGyX0lh9LwLHTn2Gg+hafdzfSXnC+QmEJTZFY= github.com/charmbracelet/x/exp/golden v0.0.0-20250806222409-83e3a29d542f h1:pk6gmGpCE7F3FcjaOEKYriCvpmIN4+6OS/RD0vm4uIA= github.com/charmbracelet/x/exp/golden v0.0.0-20250806222409-83e3a29d542f/go.mod h1:IfZAMTHB6XkZSeXUqriemErjAWCCzT0LwjKFYCZyw0I= github.com/charmbracelet/x/term v0.2.2 h1:xVRT/S2ZcKdhhOuSP4t5cLi5o+JxklsoEObBSgfgZRk= @@ -56,8 +56,8 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1 github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/distribution/reference v0.6.0 h1:0IXCQ5g4/QMHHkarYzh5l+u8T3t73zM5QvfrDyIgxBk= github.com/distribution/reference v0.6.0/go.mod h1:BbU0aIcezP1/5jX/8MP0YiH4SdvB5Y4f/wlDRiLyi3E= -github.com/docker/go-connections v0.7.0 h1:6SsRfJddP22WMrCkj19x9WKjEDTB+ahsdiGYf0mN39c= -github.com/docker/go-connections v0.7.0/go.mod h1:no1qkHdjq7kLMGUXYAduOhYPSJxxvgWBh7ogVvptn3Q= +github.com/docker/go-connections v0.8.1 h1:JibmG5hULs5qXSr/cp/w3Pw5fZuStt4MOHMUExb29/M= +github.com/docker/go-connections v0.8.1/go.mod h1:no1qkHdjq7kLMGUXYAduOhYPSJxxvgWBh7ogVvptn3Q= github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4= github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk= github.com/ebitengine/purego v0.10.2 h1:W809HbnvzAxgdm+aOvlSekrM16wGCdT/e76+9tS7gzE= @@ -86,40 +86,44 @@ github.com/jackc/pgx/v5 v5.10.0 h1:VhSvgU2jSli8o3AqIEOTJr7rZwAEUVo4E4XhR94Zfr0= github.com/jackc/pgx/v5 v5.10.0/go.mod h1:mal1tBGAFfLHvZzaYh77YS/eC6IX9OWbRV1QIIM0Jn4= github.com/jackc/puddle/v2 v2.2.2 h1:PR8nw+E/1w0GLuRFSmiioY6UooMp6KJv0/61nB7icHo= github.com/jackc/puddle/v2 v2.2.2/go.mod h1:vriiEXHvEE654aYKXXjOvZM39qJ0q+azkZFrfEOc3H4= -github.com/klauspost/compress v1.19.1 h1:VsB4HPswih7mmZ8WleSFQ75c/Ui1M4trX5oAsJnhSlk= -github.com/klauspost/compress v1.19.1/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= +github.com/klauspost/compress v1.19.2 h1:hMRETovs/pu/dVWN7zIT1PGG8t509MwT6bO7XSi26R8= +github.com/klauspost/compress v1.19.2/go.mod h1:cwPg85FWrGar70rWktvGQj8/hthj3wpl0PGDogxkrSQ= github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/lib/pq v1.11.1 h1:wuChtj2hfsGmmx3nf1m7xC2XpK6OtelS2shMY+bGMtI= github.com/lib/pq v1.11.1/go.mod h1:/p+8NSbOcwzAEI7wiMXFlgydTwcgTr3OSKMsD2BitpA= -github.com/lucasb-eyer/go-colorful v1.4.0 h1:UtrWVfLdarDgc44HcS7pYloGHJUjHV/4FwW4TvVgFr4= -github.com/lucasb-eyer/go-colorful v1.4.0/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= -github.com/lufia/plan9stats v0.0.0-20260627054121-477a66015f15 h1:YkjVPl/YH5XlJ+/NiwzJtPYXXKRcyjmEUhsDci6YK3c= -github.com/lufia/plan9stats v0.0.0-20260627054121-477a66015f15/go.mod h1:autxFIvghDt3jPTLoqZ9OZ7s9qTGNAWmYCjVFWPX/zg= -github.com/magiconair/properties v1.8.10 h1:s31yESBquKXCV9a/ScB3ESkOjUYYv+X0rg8SYxI99mE= -github.com/magiconair/properties v1.8.10/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= -github.com/mattn/go-runewidth v0.0.24 h1:cpokDiIn0MGnhdHwuWnJBITySJ20QyNGnY2kR/ay2DU= -github.com/mattn/go-runewidth v0.0.24/go.mod h1:XBkDxAl56ILZc9knddidhrOlY5R/pDhgLpndooCuJAs= +github.com/lucasb-eyer/go-colorful v1.4.1 h1:1EO+WB73+EH8EVbzlrG3KLAfEypQWVHIBqlTf+2hNss= +github.com/lucasb-eyer/go-colorful v1.4.1/go.mod h1:R4dSotOR9KMtayYi1e77YzuveK+i7ruzyGqttikkLy0= +github.com/lufia/plan9stats v0.0.0-20260802145828-341c2f0c90b5 h1:eveIIGn4BGM3qknO74omf6HYr30/exH+eVUTuAgwjZ0= +github.com/lufia/plan9stats v0.0.0-20260802145828-341c2f0c90b5/go.mod h1:autxFIvghDt3jPTLoqZ9OZ7s9qTGNAWmYCjVFWPX/zg= +github.com/magiconair/properties v1.18.11 h1:j5ozYZl0zCjG7ahMDH0GWIobOvvUzT0BdAguG0ViKy0= +github.com/magiconair/properties v1.18.11/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0= +github.com/mattn/go-runewidth v0.0.27 h1:Feg/Oou5zI/wnpgDF6omIU0OokC9GxLC/WRknhVlIR0= +github.com/mattn/go-runewidth v0.0.27/go.mod h1:3qAiGCV4Koz/yuveO58qUefmUTRm8r0IGEXZ9jeHp/8= github.com/mdelapenya/tlscert v0.2.0 h1:7H81W6Z/4weDvZBNOfQte5GpIMo0lGYEeWbkGp5LJHI= github.com/mdelapenya/tlscert v0.2.0/go.mod h1:O4njj3ELLnJjGdkN7M/vIVCpZ+Cf0L6muqOG4tLSl8o= github.com/moby/docker-image-spec v1.3.1 h1:jMKff3w6PgbfSa69GfNg+zN/XLhfXJGnEx3Nl2EsFP0= github.com/moby/docker-image-spec v1.3.1/go.mod h1:eKmb5VW8vQEh/BAr2yvVNvuiJuY6UIocYsFu/DxxRpo= -github.com/moby/go-archive v0.2.0 h1:zg5QDUM2mi0JIM9fdQZWC7U8+2ZfixfTYoHL7rWUcP8= -github.com/moby/go-archive v0.2.0/go.mod h1:mNeivT14o8xU+5q1YnNrkQVpK+dnNe/K6fHqnTg4qPU= +github.com/moby/go-archive v0.3.3 h1:OxxR9paxsluYi+zDUEXTTaIxtkK3viymW+Ka7vRhhME= +github.com/moby/go-archive v0.3.3/go.mod h1:Npdv43fFqlhZW7Xo8fbm3ZMYFvAGNviUPqX21VERbcE= github.com/moby/moby/api v1.55.0 h1:2/sexvQyqIWS8pRSCFddBfpW2qE7vR7FCL+vN8pxwMc= github.com/moby/moby/api v1.55.0/go.mod h1:+RQ6wluLwtYaTd1WnPLykIDPekkuyD/ROWQClE83pzs= -github.com/moby/moby/client v0.5.0 h1:5XhyPk2fuOWf6RlSFa3MkIIgDZkF25xToXW8Q/BH7cc= -github.com/moby/moby/client v0.5.0/go.mod h1:rcVpF8ncl9vo5gaIBdol6CnbEtSj1uxMvEV/UrykF/s= +github.com/moby/moby/client v0.5.1 h1:tYNaJno4c0HXz12y5BiqEDy0rVTYkWzI26lGvnTMiJw= +github.com/moby/moby/client v0.5.1/go.mod h1:odLstlZ6uSnfvAgVxMpvgmb8SUdd+siH2T0GBuxVAlM= github.com/moby/patternmatcher v0.6.1 h1:qlhtafmr6kgMIJjKJMDmMWq7WLkKIo23hsrpR3x084U= github.com/moby/patternmatcher v0.6.1/go.mod h1:hDPoyOpDY7OrrMDLaYoY3hf52gNCR/YOUYxkhApJIxc= +github.com/moby/sys/mount v0.3.5 h1:eS3fsZTjHaBihwjp4/+5Z3jxqLXYsbwxqpVSfFv3M00= +github.com/moby/sys/mount v0.3.5/go.mod h1:WUQDO+/uCiCIkIztx8SrwIDVn2dtMFRBebRhpDFT71M= +github.com/moby/sys/mountinfo v0.7.2 h1:1shs6aH5s4o5H2zQLn796ADW1wMrIwHsyJ2v9KouLrg= +github.com/moby/sys/mountinfo v0.7.2/go.mod h1:1YOa8w8Ih7uW0wALDUgT1dTTSBrZ+HiBLGws92L2RU4= github.com/moby/sys/sequential v0.7.0 h1:ASQNGNROJSuOO6LL6bPHbKvuZu6NU8P4ldPWk31zj/8= github.com/moby/sys/sequential v0.7.0/go.mod h1:NfSTAp6V3fw4tmkD62PEcOKeZKquXT8VKCkf7aVR79o= github.com/moby/sys/user v0.4.1 h1:RgjRlaDKi/Xmyrz4t8lyzXT6v2ooFeO/7xtchmhVWE0= github.com/moby/sys/user v0.4.1/go.mod h1:E9QsW5WRe1kUAf7kW8hXKwu1uhsZEAdPLYHYSDudF4Y= -github.com/moby/sys/userns v0.1.0 h1:tVLXkFOxVu9A64/yh59slHVv9ahO9UIev4JZusOLG/g= -github.com/moby/sys/userns v0.1.0/go.mod h1:IHUYgu/kao6N8YZlp9Cf444ySSvCmDlmzUcYfDHOl28= +github.com/moby/sys/userns v0.2.0 h1:nEtDtp7NCV/6dutSklNe8FrENPwFdc4mXnZqC/JWgXM= +github.com/moby/sys/userns v0.2.0/go.mod h1:IHUYgu/kao6N8YZlp9Cf444ySSvCmDlmzUcYfDHOl28= github.com/moby/term v0.5.2 h1:6qk3FJAFDs6i/q3W/pQ97SX192qKfZgGjCQqfCJkgzQ= github.com/moby/term v0.5.2/go.mod h1:d3djjFCrjnB+fl8NJux+EJzu0msscUP+f8it8hPkFLc= github.com/muesli/cancelreader v0.2.2 h1:3I4Kt4BQjOR54NavqnDogx/MIoWBFa0StPA8ELUXHmA= @@ -139,19 +143,19 @@ github.com/opencontainers/image-spec v1.1.1/go.mod h1:qpqAh3Dmcf36wStyyWU+kCeDgr github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U= github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55 h1:o4JXh1EVt9k/+g42oCprj/FisM4qX9L3sZB3upGN2ZU= -github.com/power-devops/perfstat v0.0.0-20240221224432-82ca36839d55/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= +github.com/power-devops/perfstat v0.0.0-20260805114148-88456608a4f6 h1:jL3a8soXdzuTCcRnKhOmtcsVOObdDTFf4O2B403HPRU= +github.com/power-devops/perfstat v0.0.0-20260805114148-88456608a4f6/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE= github.com/rivo/uniseg v0.4.7 h1:WUdvkW8uEhrYfLC4ZzdpI2ztxP1I582+49Oc5Mq64VQ= github.com/rivo/uniseg v0.4.7/go.mod h1:FN3SvrM+Zdj16jyLfmOkMNblXMcoc8DfTHruCPUcx88= github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0tI/otEQ= github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= -github.com/shirou/gopsutil/v4 v4.26.6 h1:Mzr/npDtQC/xpeEuQKHZt8Zo9CmPvhTj8nkR8w5TLDs= -github.com/shirou/gopsutil/v4 v4.26.6/go.mod h1:LZ6ewCSkBqUpvSOf+LsTGnRinC6iaNUNMGBtDkJBaLQ= -github.com/sirupsen/logrus v1.9.4 h1:TsZE7l11zFCLZnZ+teH4Umoq5BhEIfIzfRDZ1Uzql2w= -github.com/sirupsen/logrus v1.9.4/go.mod h1:ftWc9WdOfJ0a92nsE2jF5u5ZwH8Bv2zdeOC42RjbV2g= -github.com/smartcontractkit/testrig v0.0.12 h1:mFVoIJGDIaFXT5DF8BPN9Ci1UBoqV0P0iKUUrNzZ1l0= -github.com/smartcontractkit/testrig v0.0.12/go.mod h1:+HhEY7/MCD0TEY2QlLRve7YMqsICxx9AIXv4ET7lbv8= +github.com/shirou/gopsutil/v4 v4.26.7 h1:IXzpHz/dkMRYAhKkOXr1HB6SuzWU3eoyyeWe7g3bNZc= +github.com/shirou/gopsutil/v4 v4.26.7/go.mod h1:5O9FjBiXoTDFatIWjZZosqj4pV0DRtLx598xGbBehzM= +github.com/sirupsen/logrus v1.10.0 h1:T8MxJJXVZkfcC5zSRMRAg2F8+lxjmUCGGWPzFxO+Msc= +github.com/sirupsen/logrus v1.10.0/go.mod h1:FXZFonkDAnFozmO+5hGAFvB0Yg9/j2SIhA/QuIkP180= +github.com/smartcontractkit/testrig v0.0.13 h1:bsI7adGcBELaidrdZRohfXjCTcqajntttZ8/YeUAmxw= +github.com/smartcontractkit/testrig v0.0.13/go.mod h1:tbqBmUxdrB3N/JeGow/4pZPn8zXCbkys39TgarbB/jw= github.com/spf13/cobra v1.10.2 h1:DMTTonx5m65Ic0GOoRY2c16WCbHxOOw6xxezuLaBpcU= github.com/spf13/cobra v1.10.2/go.mod h1:7C1pvHqHw5A4vrJfjNwvOdzYu0Gml16OCs2GRiTUUS4= github.com/spf13/pflag v1.0.9/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg= @@ -164,35 +168,35 @@ github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UV github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD981Nm4B6U= -github.com/testcontainers/testcontainers-go v0.43.0 h1:oEQx5MW2DGd9z3AeEQfB2lPM0eLs7ztyaGRu75bFo5A= -github.com/testcontainers/testcontainers-go v0.43.0/go.mod h1:+VxkT2NQnKOZPKi6praMuMKYHYyOGXr0XSBSlSMCzFo= -github.com/testcontainers/testcontainers-go/modules/postgres v0.43.0 h1:ShNOFYAF4lKHvdIG258hi69bSxC88uXnxJkJvNs/IVs= -github.com/testcontainers/testcontainers-go/modules/postgres v0.43.0/go.mod h1:vdq5/RqmGfWeefzyfcVI/pID1rzmc1TDvqXa15bPJks= +github.com/testcontainers/testcontainers-go v0.44.0 h1:/Fwh6HY1mIikhnm9e7HwoxGycx0lzRAE0f5VQpjFxzI= +github.com/testcontainers/testcontainers-go v0.44.0/go.mod h1:IcnwQrYTO86xHXu5bvMaBH7ATlbS3Qn1M1QWW3c66rE= +github.com/testcontainers/testcontainers-go/modules/postgres v0.44.0 h1:8fdv/9y3JMxjQ+ULAcOG8RtgeNu5t9XF9LolSXDuTwM= +github.com/testcontainers/testcontainers-go/modules/postgres v0.44.0/go.mod h1:CFr2LncGYokw+OKjXcr8ARCKG1SaC2UEnGxFBovE86g= github.com/tklauser/go-sysconf v0.4.0 h1:7H0uAN+7RkwWRaxhYXDLqa5V3LPrJeV8wmD9dRUgPQU= github.com/tklauser/go-sysconf v0.4.0/go.mod h1:8mTNWyog7H+MpKijp4VmKJAd2bbYQ2zuUwkYRbUArPI= github.com/tklauser/numcpus v0.12.0 h1:NR85qdvHA9pFse3x3weVZ0r0ST8R6l5RHbZrlRaqob4= github.com/tklauser/numcpus v0.12.0/go.mod h1:ABHeXzJnr/qqwguhClkZKT1/8VABcYrsyUiUGobwWJg= -github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e h1:JVG44RsyaB9T2KIHavMF/ppJZNG9ZpyihvCd0w101no= -github.com/xo/terminfo v0.0.0-20220910002029-abceb7e1c41e/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM= +github.com/xo/terminfo v1.0.0 h1:2ZpYzqWzyyytjk3TP6aJVDhkMAkc99/1xKQdA3TDTBY= +github.com/xo/terminfo v1.0.0/go.mod h1:RbqR21r5mrJuqunuUZ/Dhy/avygyECGrLceyNeo4LiM= github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0= github.com/yusufpapurcu/wmi v1.2.4/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0= go.opentelemetry.io/auto/sdk v1.2.1 h1:jXsnJ4Lmnqd11kwkBV2LgLoFMZKizbCi5fNZ/ipaZ64= go.opentelemetry.io/auto/sdk v1.2.1/go.mod h1:KRTj+aOaElaLi+wW1kO/DZRXwkF4C5xPbEe3ZiIhN7Y= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0 h1:8tvICD4vSTOOsNrsI4Ljf6C+6UKvpTEH5XY3JMoyPoo= -go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.69.0/go.mod h1:z9+yiacE0IHRqM4qFfkbt/JYlmYXgss8GY/jXoNuPJI= -go.opentelemetry.io/otel v1.44.0 h1:JjwHmHpA4iZ3wBxluu2fbbE7j4kqlE8jXyAyPXH7HqU= -go.opentelemetry.io/otel v1.44.0/go.mod h1:BMgjTHL9WPRlRjL2oZCBTL4whCGtXch2H4BhOPIAyYc= -go.opentelemetry.io/otel/metric v1.44.0 h1:1w0gILTcHdr3YI+ixLyjemwrVnsMURbTZFrSYCdDdmc= -go.opentelemetry.io/otel/metric v1.44.0/go.mod h1:8O7hanEPBNgEMmybD3s2VBKcgWOCsA6tzHBPODAiquo= -go.opentelemetry.io/otel/sdk v1.44.0 h1:nHYwb9lK+fJPU/dnT6s7W7Z8itMWyqrnVfbheVYrZ58= -go.opentelemetry.io/otel/sdk v1.44.0/go.mod h1:Osuydd3Se74nqjAKxid74N5eC+jfEqfTegHRnq58oK0= -go.opentelemetry.io/otel/sdk/metric v1.44.0 h1:3LlKgI+VjbVsjNRFZJZAJ30WjXC5VkNRks6si09iEfI= -go.opentelemetry.io/otel/sdk/metric v1.44.0/go.mod h1:5B5pMARnXxKhltooO4xUuCBorl65a4EpnTalObqOigA= -go.opentelemetry.io/otel/trace v1.44.0 h1:jxF5CsGYCe74MCRx2X4g7WsY/VBKRqqpNvXlX/6gtIk= -go.opentelemetry.io/otel/trace v1.44.0/go.mod h1:oLl1jrMQAVo6v3GAggN+1VH9VIz9iUSvW53sW1Q8PIE= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.70.0 h1:LMuyCAyfalSjDyjdC65nK6N0zoTT63+E/u95X0JovZI= +go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.70.0/go.mod h1:085m8qbm4hgc8rZWGDEa4vmyyo2c3nPxUslYUKUIU04= +go.opentelemetry.io/otel v1.45.0 h1:pdrWmLHofpubmArBv1LgFSv1Z0Ie/ppdZzu+kUN5EeU= +go.opentelemetry.io/otel v1.45.0/go.mod h1:XZxIqPapzEYnhNSScF5DIqXhm/rYi0FzCe2XddAwZfQ= +go.opentelemetry.io/otel/metric v1.45.0 h1:7Eg1uH7CJ5cXv9is6tnBe1FI6rj1nwUdbFypRm3br/M= +go.opentelemetry.io/otel/metric v1.45.0/go.mod h1:HAPbm1nd3p1PmFH7v2dR+6BjXxw+Lq4a2+pndMAm08s= +go.opentelemetry.io/otel/sdk v1.45.0 h1:4VVSMgQ83dUgW2aoX5f6JgLvHwIvzcuLnF9lUdCSpCw= +go.opentelemetry.io/otel/sdk v1.45.0/go.mod h1:Sr40LgXV7DsKMMJMKOhUWOgMWTfAaqvm2kF0g7ilwuA= +go.opentelemetry.io/otel/sdk/metric v1.45.0 h1:oVFszMfyj1Am6s24Vtc7wBb8BKLcwepJjNEYILuiE3o= +go.opentelemetry.io/otel/sdk/metric v1.45.0/go.mod h1:vUWUxDZvu1WVRj8JA8S0AdhsPrZoDpA2DdZauIh4mDA= +go.opentelemetry.io/otel/trace v1.45.0 h1:l/mP6Uv7oNO7/TblbhpbgMidxhq1uO/rPsikOyVhxag= +go.opentelemetry.io/otel/trace v1.45.0/go.mod h1:qoJJA2xNMnxRrdISU/kLtfUH2wNeQbiv+jhs/CxI8bc= go.yaml.in/yaml/v3 v3.0.4/go.mod h1:DhzuOOF2ATzADvBadXxruRBLzYTpT36CKvDb3+aBEFg= -golang.org/x/crypto v0.54.0 h1:YLIA59K4fiNzHzjnZt2tUJQjQtUWfWbeHBqKtk3eScw= -golang.org/x/crypto v0.54.0/go.mod h1:KWL8ny2AZdGR2cWmzeHrp2azQPGogOv+HeQaVEXC2dk= +golang.org/x/crypto v0.55.0 h1:+KWHjbgOaAQ66dh/YlkZKHlz9ZUlq61AFirAR9ntP8M= +golang.org/x/crypto v0.55.0/go.mod h1:uq0V9dE/fzQuJtbnL+2EhWOE63vo164FY8xqEnV9xis= golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f h1:W3F4c+6OLc6H2lb//N1q4WpJkhzJCK5J6kUi1NTVXfM= golang.org/x/exp v0.0.0-20260410095643-746e56fc9e2f/go.mod h1:J1xhfL/vlindoeF/aINzNzt2Bket5bjo9sdOYzOsU80= golang.org/x/sync v0.22.0 h1:SZjpbeLmrCk4xhRSZFNZW5gFUeCeFgjekvI/+gfScek= @@ -205,8 +209,8 @@ golang.org/x/sys v0.47.0 h1:o7XGOvZQCADBQQ4Y7VNq2dRWQR7JmOUW8Kxx4ZsNgWs= golang.org/x/sys v0.47.0/go.mod h1:4GL1E5IUh+htKOUEOaiffhrAeqysfVGipDYzABqnCmw= golang.org/x/term v0.45.0 h1:NwWyBmoJCbfTHpxrWoZ9C6/VxOf7ic219I8xZZFdrf0= golang.org/x/term v0.45.0/go.mod h1:9aqxs0blBcrm/n0L9QW0aRVD+ktan8ssZromtqJC43w= -golang.org/x/text v0.40.0 h1:Ub2Z6/xjgF1WrYQz2nuITOEegKFtiIy+rieRJ5lHZKs= -golang.org/x/text v0.40.0/go.mod h1:hpnzDAfGV753zIKo+wk3u1bVKCGPbrnF7+7LBF/UHVY= +golang.org/x/text v0.41.0 h1:vz/seA0lnX87Othu2f/0L24RcgrXD9/YFTSuGjj3rH8= +golang.org/x/text v0.41.0/go.mod h1:jvf1O8ajNzZqhSrQBPbutR/EB83Cc0CFrezNQIwbb5M= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c h1:Hei/4ADfdWqJk1ZMxUNpqntNwaWcugrBjAiHlqqRiVk= gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c/go.mod h1:JHkPIbrfpd72SG/EVd6muEfDQjcINNoR0C8j2r3qZ4Q=