From 8a0b15831308bcccc01e813db160cd6f26b4c36f Mon Sep 17 00:00:00 2001 From: amit-momin <108959691+amit-momin@users.noreply.github.com> Date: Tue, 23 Jun 2026 15:36:52 -0500 Subject: [PATCH 01/14] Bumped chain-selectors (#274) --- bun.lock | 8 ++++---- packages/cre-sdk-examples/package.json | 2 +- packages/cre-sdk/package.json | 4 ++-- .../blockchain/evm/v1alpha/client_sdk_gen.ts | 1 + .../blockchain/evm/v1alpha/client_pb.ts | 2 +- .../mainnet/evm/dtcc-mainnet-appchain.ts | 16 ++++++++++++++++ .../testnet/evm/private-testnet-quartzite.ts | 16 ++++++++++++++++ packages/cre-sdk/src/generated/networks.ts | 14 ++++++++++++++ submodules/chainlink-protos | 2 +- 9 files changed, 56 insertions(+), 9 deletions(-) create mode 100644 packages/cre-sdk/src/generated/chain-selectors/mainnet/evm/dtcc-mainnet-appchain.ts create mode 100644 packages/cre-sdk/src/generated/chain-selectors/testnet/evm/private-testnet-quartzite.ts diff --git a/bun.lock b/bun.lock index 837d3c53..c2ee1031 100644 --- a/bun.lock +++ b/bun.lock @@ -63,7 +63,7 @@ }, "packages/cre-sdk": { "name": "@chainlink/cre-sdk", - "version": "1.11.0", + "version": "1.13.0", "bin": { "cre-compile": "bin/cre-compile.ts", }, @@ -79,7 +79,7 @@ "@biomejs/biome": "2.3.14", "@bufbuild/buf": "1.56.0", "@types/bun": "1.3.8", - "chain-selectors": "https://github.com/smartcontractkit/chain-selectors.git#c6379b1272aa41e6977f60799c82a49465a14b3f", + "chain-selectors": "https://github.com/smartcontractkit/chain-selectors.git#3e718d1c9910b2952c50befe378b0fe8707e6647", "fast-glob": "3.3.3", "ts-proto": "2.7.5", "typescript": "5.9.3", @@ -88,7 +88,7 @@ }, "packages/cre-sdk-examples": { "name": "@chainlink/cre-sdk-examples", - "version": "1.11.0", + "version": "1.13.0", "dependencies": { "@bufbuild/protobuf": "2.6.3", "@chainlink/cre-sdk": "workspace:*", @@ -210,7 +210,7 @@ "case-anything": ["case-anything@2.1.13", "", {}, "sha512-zlOQ80VrQ2Ue+ymH5OuM/DlDq64mEm+B9UTdHULv5osUMD6HalNTblf2b1u/m6QecjsnOkBpqVZ+XPwIVsy7Ng=="], - "chain-selectors": ["chain-selectors@github:smartcontractkit/chain-selectors#c6379b1", {}, "smartcontractkit-chain-selectors-c6379b1"], + "chain-selectors": ["chain-selectors@github:smartcontractkit/chain-selectors#3e718d1", {}, "smartcontractkit-chain-selectors-3e718d1"], "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="], diff --git a/packages/cre-sdk-examples/package.json b/packages/cre-sdk-examples/package.json index 9e7d8549..bd89d419 100644 --- a/packages/cre-sdk-examples/package.json +++ b/packages/cre-sdk-examples/package.json @@ -1,7 +1,7 @@ { "name": "@chainlink/cre-sdk-examples", "private": true, - "version": "1.13.0", + "version": "1.14.0", "type": "module", "author": "Ernest Nowacki", "license": "BUSL-1.1", diff --git a/packages/cre-sdk/package.json b/packages/cre-sdk/package.json index d945654b..29696c1f 100644 --- a/packages/cre-sdk/package.json +++ b/packages/cre-sdk/package.json @@ -1,6 +1,6 @@ { "name": "@chainlink/cre-sdk", - "version": "1.13.0", + "version": "1.14.0", "type": "module", "main": "dist/index.js", "types": "dist/index.d.ts", @@ -70,7 +70,7 @@ "@biomejs/biome": "2.3.14", "@bufbuild/buf": "1.56.0", "@types/bun": "1.3.8", - "chain-selectors": "https://github.com/smartcontractkit/chain-selectors.git#c6379b1272aa41e6977f60799c82a49465a14b3f", + "chain-selectors": "https://github.com/smartcontractkit/chain-selectors.git#3e718d1c9910b2952c50befe378b0fe8707e6647", "fast-glob": "3.3.3", "ts-proto": "2.7.5", "typescript": "5.9.3", diff --git a/packages/cre-sdk/src/generated-sdk/capabilities/blockchain/evm/v1alpha/client_sdk_gen.ts b/packages/cre-sdk/src/generated-sdk/capabilities/blockchain/evm/v1alpha/client_sdk_gen.ts index 5e2c7286..4e87ecae 100644 --- a/packages/cre-sdk/src/generated-sdk/capabilities/blockchain/evm/v1alpha/client_sdk_gen.ts +++ b/packages/cre-sdk/src/generated-sdk/capabilities/blockchain/evm/v1alpha/client_sdk_gen.ts @@ -173,6 +173,7 @@ export class ClientCapability { 'polygon-testnet-amoy': 16281711391670634445n, 'private-testnet-andesite': 6915682381028791124n, 'private-testnet-pumice': 1564738277398880633n, + 'private-testnet-quartzite': 4175996748267305081n, 'private-testnet-rhyolite': 604447335222770945n, 'sonic-mainnet': 1673871237479749969n, 'sonic-testnet': 1763698235108410440n, diff --git a/packages/cre-sdk/src/generated/capabilities/blockchain/evm/v1alpha/client_pb.ts b/packages/cre-sdk/src/generated/capabilities/blockchain/evm/v1alpha/client_pb.ts index edb623a7..938a6513 100644 --- a/packages/cre-sdk/src/generated/capabilities/blockchain/evm/v1alpha/client_pb.ts +++ b/packages/cre-sdk/src/generated/capabilities/blockchain/evm/v1alpha/client_pb.ts @@ -17,7 +17,7 @@ import { file_values_v1_values } from '../../../../values/v1/values_pb' export const file_capabilities_blockchain_evm_v1alpha_client: GenFile = /*@__PURE__*/ fileDesc( - 'CjBjYXBhYmlsaXRpZXMvYmxvY2tjaGFpbi9ldm0vdjFhbHBoYS9jbGllbnQucHJvdG8SI2NhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhIh0KC1RvcGljVmFsdWVzEg4KBnZhbHVlcxgBIAMoDCK4AQoXRmlsdGVyTG9nVHJpZ2dlclJlcXVlc3QSEQoJYWRkcmVzc2VzGAEgAygMEkAKBnRvcGljcxgCIAMoCzIwLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLlRvcGljVmFsdWVzEkgKCmNvbmZpZGVuY2UYAyABKA4yNC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Db25maWRlbmNlTGV2ZWwiegoTQ2FsbENvbnRyYWN0UmVxdWVzdBI6CgRjYWxsGAEgASgLMiwuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuQ2FsbE1zZxInCgxibG9ja19udW1iZXIYAiABKAsyES52YWx1ZXMudjEuQmlnSW50IiEKEUNhbGxDb250cmFjdFJlcGx5EgwKBGRhdGEYASABKAwiWwoRRmlsdGVyTG9nc1JlcXVlc3QSRgoMZmlsdGVyX3F1ZXJ5GAEgASgLMjAuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRmlsdGVyUXVlcnkiSQoPRmlsdGVyTG9nc1JlcGx5EjYKBGxvZ3MYASADKAsyKC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Mb2cixwEKA0xvZxIPCgdhZGRyZXNzGAEgASgMEg4KBnRvcGljcxgCIAMoDBIPCgd0eF9oYXNoGAMgASgMEhIKCmJsb2NrX2hhc2gYBCABKAwSDAoEZGF0YRgFIAEoDBIRCglldmVudF9zaWcYBiABKAwSJwoMYmxvY2tfbnVtYmVyGAcgASgLMhEudmFsdWVzLnYxLkJpZ0ludBIQCgh0eF9pbmRleBgIIAEoDRINCgVpbmRleBgJIAEoDRIPCgdyZW1vdmVkGAogASgIIjEKB0NhbGxNc2cSDAoEZnJvbRgBIAEoDBIKCgJ0bxgCIAEoDBIMCgRkYXRhGAMgASgMIr0BCgtGaWx0ZXJRdWVyeRISCgpibG9ja19oYXNoGAEgASgMEiUKCmZyb21fYmxvY2sYAiABKAsyES52YWx1ZXMudjEuQmlnSW50EiMKCHRvX2Jsb2NrGAMgASgLMhEudmFsdWVzLnYxLkJpZ0ludBIRCglhZGRyZXNzZXMYBCADKAwSOwoGdG9waWNzGAUgAygLMisuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuVG9waWNzIhcKBlRvcGljcxINCgV0b3BpYxgBIAMoDCJMChBCYWxhbmNlQXRSZXF1ZXN0Eg8KB2FjY291bnQYASABKAwSJwoMYmxvY2tfbnVtYmVyGAIgASgLMhEudmFsdWVzLnYxLkJpZ0ludCI0Cg5CYWxhbmNlQXRSZXBseRIiCgdiYWxhbmNlGAEgASgLMhEudmFsdWVzLnYxLkJpZ0ludCJPChJFc3RpbWF0ZUdhc1JlcXVlc3QSOQoDbXNnGAEgASgLMiwuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuQ2FsbE1zZyIjChBFc3RpbWF0ZUdhc1JlcGx5Eg8KA2dhcxgBIAEoBEICMAAiKwobR2V0VHJhbnNhY3Rpb25CeUhhc2hSZXF1ZXN0EgwKBGhhc2gYASABKAwiYgoZR2V0VHJhbnNhY3Rpb25CeUhhc2hSZXBseRJFCgt0cmFuc2FjdGlvbhgBIAEoCzIwLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLlRyYW5zYWN0aW9uIqEBCgtUcmFuc2FjdGlvbhIRCgVub25jZRgBIAEoBEICMAASDwoDZ2FzGAIgASgEQgIwABIKCgJ0bxgDIAEoDBIMCgRkYXRhGAQgASgMEgwKBGhhc2gYBSABKAwSIAoFdmFsdWUYBiABKAsyES52YWx1ZXMudjEuQmlnSW50EiQKCWdhc19wcmljZRgHIAEoCzIRLnZhbHVlcy52MS5CaWdJbnQiLAocR2V0VHJhbnNhY3Rpb25SZWNlaXB0UmVxdWVzdBIMCgRoYXNoGAEgASgMIlsKGkdldFRyYW5zYWN0aW9uUmVjZWlwdFJlcGx5Ej0KB3JlY2VpcHQYASABKAsyLC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5SZWNlaXB0IpkCCgdSZWNlaXB0EhIKBnN0YXR1cxgBIAEoBEICMAASFAoIZ2FzX3VzZWQYAiABKARCAjAAEhQKCHR4X2luZGV4GAMgASgEQgIwABISCgpibG9ja19oYXNoGAQgASgMEjYKBGxvZ3MYBiADKAsyKC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Mb2cSDwoHdHhfaGFzaBgHIAEoDBIuChNlZmZlY3RpdmVfZ2FzX3ByaWNlGAggASgLMhEudmFsdWVzLnYxLkJpZ0ludBInCgxibG9ja19udW1iZXIYCSABKAsyES52YWx1ZXMudjEuQmlnSW50EhgKEGNvbnRyYWN0X2FkZHJlc3MYCiABKAwiQAoVSGVhZGVyQnlOdW1iZXJSZXF1ZXN0EicKDGJsb2NrX251bWJlchgBIAEoCzIRLnZhbHVlcy52MS5CaWdJbnQiUgoTSGVhZGVyQnlOdW1iZXJSZXBseRI7CgZoZWFkZXIYASABKAsyKy5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5IZWFkZXIiawoGSGVhZGVyEhUKCXRpbWVzdGFtcBgBIAEoBEICMAASJwoMYmxvY2tfbnVtYmVyGAIgASgLMhEudmFsdWVzLnYxLkJpZ0ludBIMCgRoYXNoGAMgASgMEhMKC3BhcmVudF9oYXNoGAQgASgMIqsBChJXcml0ZVJlcG9ydFJlcXVlc3QSEAoIcmVjZWl2ZXIYASABKAwSKwoGcmVwb3J0GAIgASgLMhsuc2RrLnYxYWxwaGEuUmVwb3J0UmVzcG9uc2USRwoKZ2FzX2NvbmZpZxgDIAEoCzIuLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLkdhc0NvbmZpZ0gAiAEBQg0KC19nYXNfY29uZmlnIiIKCUdhc0NvbmZpZxIVCglnYXNfbGltaXQYASABKARCAjAAIocDChBXcml0ZVJlcG9ydFJlcGx5EkAKCXR4X3N0YXR1cxgBIAEoDjItLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLlR4U3RhdHVzEnUKInJlY2VpdmVyX2NvbnRyYWN0X2V4ZWN1dGlvbl9zdGF0dXMYAiABKA4yRC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5SZWNlaXZlckNvbnRyYWN0RXhlY3V0aW9uU3RhdHVzSACIAQESFAoHdHhfaGFzaBgDIAEoDEgBiAEBEi8KD3RyYW5zYWN0aW9uX2ZlZRgEIAEoCzIRLnZhbHVlcy52MS5CaWdJbnRIAogBARIaCg1lcnJvcl9tZXNzYWdlGAUgASgJSAOIAQFCJQojX3JlY2VpdmVyX2NvbnRyYWN0X2V4ZWN1dGlvbl9zdGF0dXNCCgoIX3R4X2hhc2hCEgoQX3RyYW5zYWN0aW9uX2ZlZUIQCg5fZXJyb3JfbWVzc2FnZSppCg9Db25maWRlbmNlTGV2ZWwSGQoVQ09ORklERU5DRV9MRVZFTF9TQUZFEAASGwoXQ09ORklERU5DRV9MRVZFTF9MQVRFU1QQARIeChpDT05GSURFTkNFX0xFVkVMX0ZJTkFMSVpFRBACKoIBCh9SZWNlaXZlckNvbnRyYWN0RXhlY3V0aW9uU3RhdHVzEi4KKlJFQ0VJVkVSX0NPTlRSQUNUX0VYRUNVVElPTl9TVEFUVVNfU1VDQ0VTUxAAEi8KK1JFQ0VJVkVSX0NPTlRSQUNUX0VYRUNVVElPTl9TVEFUVVNfUkVWRVJURUQQASpOCghUeFN0YXR1cxITCg9UWF9TVEFUVVNfRkFUQUwQABIWChJUWF9TVEFUVVNfUkVWRVJURUQQARIVChFUWF9TVEFUVVNfU1VDQ0VTUxACMpwZCgZDbGllbnQSgAEKDENhbGxDb250cmFjdBI4LmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLkNhbGxDb250cmFjdFJlcXVlc3QaNi5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5DYWxsQ29udHJhY3RSZXBseRJ6CgpGaWx0ZXJMb2dzEjYuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRmlsdGVyTG9nc1JlcXVlc3QaNC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5GaWx0ZXJMb2dzUmVwbHkSdwoJQmFsYW5jZUF0EjUuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuQmFsYW5jZUF0UmVxdWVzdBozLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLkJhbGFuY2VBdFJlcGx5En0KC0VzdGltYXRlR2FzEjcuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRXN0aW1hdGVHYXNSZXF1ZXN0GjUuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRXN0aW1hdGVHYXNSZXBseRKYAQoUR2V0VHJhbnNhY3Rpb25CeUhhc2gSQC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5HZXRUcmFuc2FjdGlvbkJ5SGFzaFJlcXVlc3QaPi5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5HZXRUcmFuc2FjdGlvbkJ5SGFzaFJlcGx5EpsBChVHZXRUcmFuc2FjdGlvblJlY2VpcHQSQS5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5HZXRUcmFuc2FjdGlvblJlY2VpcHRSZXF1ZXN0Gj8uY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuR2V0VHJhbnNhY3Rpb25SZWNlaXB0UmVwbHkShgEKDkhlYWRlckJ5TnVtYmVyEjouY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuSGVhZGVyQnlOdW1iZXJSZXF1ZXN0GjguY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuSGVhZGVyQnlOdW1iZXJSZXBseRJ2CgpMb2dUcmlnZ2VyEjwuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRmlsdGVyTG9nVHJpZ2dlclJlcXVlc3QaKC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Mb2cwARJ9CgtXcml0ZVJlcG9ydBI3LmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLldyaXRlUmVwb3J0UmVxdWVzdBo1LmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLldyaXRlUmVwb3J0UmVwbHka4Q+CtRjcDwgBEglldm1AMS4wLjAazA8KDUNoYWluU2VsZWN0b3ISug8Stw8KFwoLYWRpLW1haW5uZXQQ/PDmwrfn3ao4ChgKC2FkaS10ZXN0bmV0EP2myPr5hozaggEKJAoXYXBlY2hhaW4tdGVzdG5ldC1jdXJ0aXMQwcO0+I3EkrKJAQoXCgthcmMtdGVzdG5ldBDnxoye19fQjSoKHQoRYXZhbGFuY2hlLW1haW5uZXQQ1eeKwOHVmKRZCiMKFmF2YWxhbmNoZS10ZXN0bmV0LWZ1amkQm/n8kKLjqPjMAQooChtiaW5hbmNlX3NtYXJ0X2NoYWluLW1haW5uZXQQz/eU8djtlbidAQooChtiaW5hbmNlX3NtYXJ0X2NoYWluLXRlc3RuZXQQ+62+nICu5Iq4AQoYCgxjZWxvLW1haW5uZXQQhtTo2IaTiNcSChgKDGNlbG8tc2Vwb2xpYRDEw/yL/OedmjQKGgoOY3Jvbm9zLXRlc3RuZXQQ/dnureDe2sgpCiIKFWR0Y2MtdGVzdG5ldC1hbmRlc2l0ZRDSg+PQmZblpNcBChwKEGV0aGVyZXVtLW1haW5uZXQQlfbx5M+ypsJFCicKG2V0aGVyZXVtLW1haW5uZXQtYXJiaXRydW0tMRDE6I3Njpuh10QKJAoXZXRoZXJldW0tbWFpbm5ldC1iYXNlLTEQgv+rov65kNPdAQoiChZldGhlcmV1bS1tYWlubmV0LWluay0xEKCwpum35qqEMAokChhldGhlcmV1bS1tYWlubmV0LWxpbmVhLTEQtrrpmMu9sJtACiUKGWV0aGVyZXVtLW1haW5uZXQtbWFudGxlLTEQiue0leewg8wVCicKG2V0aGVyZXVtLW1haW5uZXQtb3B0aW1pc20tMRC4lY/D9/7Q6TMKJgoZZXRoZXJldW0tbWFpbm5ldC1zY3JvbGwtMRC4vOTrxL7In7cBCikKHWV0aGVyZXVtLW1haW5uZXQtd29ybGRjaGFpbi0xEIfvurfFtsK4HAolChlldGhlcmV1bS1tYWlubmV0LXhsYXllci0xEJal/JymqO/tKQolChlldGhlcmV1bS1tYWlubmV0LXprc3luYy0xEJTul9nttLHXFQolChhldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEQ2bXkzvzJ7qDeAQovCiNldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEtYXJiaXRydW0tMRDqzu7/6raEozAKLAofZXRoZXJldW0tdGVzdG5ldC1zZXBvbGlhLWJhc2UtMRC4yrnv9pCuyI8BCiwKIGV0aGVyZXVtLXRlc3RuZXQtc2Vwb2xpYS1saW5lYS0xEOuq1P6C+eavTwotCiFldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEtbWFudGxlLTEQ1ca47s328qZyCi8KI2V0aGVyZXVtLXRlc3RuZXQtc2Vwb2xpYS1vcHRpbWlzbS0xEJ+GxaG+2MPASAotCiFldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEtc2Nyb2xsLTEQi+m0vtu67dEfCjAKI2V0aGVyZXVtLXRlc3RuZXQtc2Vwb2xpYS11bmljaGFpbi0xELTe/uDsl6mWxAEKMQolZXRoZXJldW0tdGVzdG5ldC1zZXBvbGlhLXdvcmxkY2hhaW4tMRC63+DFx6nzxUkKLQohZXRoZXJldW0tdGVzdG5ldC1zZXBvbGlhLXprc3luYy0xELfB/P3yxIDeXwogChRnbm9zaXNfY2hhaW4tbWFpbm5ldBD0kq3a8qKuugYKJwobZ25vc2lzX2NoYWluLXRlc3RuZXQtY2hpYWRvELOxgtCbpY+PewofChNoeXBlcmxpcXVpZC1tYWlubmV0EKez+N3O0enyIQofChNoeXBlcmxpcXVpZC10ZXN0bmV0EIjO3ciX4Mm9OwogChNpbmstdGVzdG5ldC1zZXBvbGlhEOj0p6Xz5pbAhwEKGQoNam92YXktbWFpbm5ldBC1w8SaoYDfkhUKGQoNam92YXktdGVzdG5ldBDkz4qE3rLejg0KGwoPbWVnYWV0aC1tYWlubmV0EOqVtsi85KbIVAoeChFtZWdhZXRoLXRlc3RuZXQtMhDjjd6IsY/9k/0BCiQKF3BoYXJvcy1hdGxhbnRpYy10ZXN0bmV0EMyZ7eDOvK+03wEKGgoOcGhhcm9zLW1haW5uZXQQyMGHnvXvzaFsChsKDnBsYXNtYS1tYWlubmV0EPib8dHaydXGgQEKGgoOcGxhc21hLXRlc3RuZXQQ1Zu/pcO0mYc3ChsKD3BvbHlnb24tbWFpbm5ldBCxq+TwmpKGnTgKIQoUcG9seWdvbi10ZXN0bmV0LWFtb3kQzY/W3/HHkPrhAQokChhwcml2YXRlLXRlc3RuZXQtYW5kZXNpdGUQ1KaYpcGP3PxfCiIKFnByaXZhdGUtdGVzdG5ldC1wdW1pY2UQ+cLEtsSlxNsVCiQKGHByaXZhdGUtdGVzdG5ldC1yaHlvbGl0ZRCB+onr4bTbsQgKGQoNc29uaWMtbWFpbm5ldBDRsuXt2aCynRcKGQoNc29uaWMtdGVzdG5ldBDIiPvUtMb6vBgKGAoLdGFjLXRlc3RuZXQQ1duN4/ufk9eDAQobCg54bGF5ZXItdGVzdG5ldBDJvqG0rcy83Y0BQuUBCidjb20uY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGFCC0NsaWVudFByb3RvUAGiAgNDQkWqAiNDYXBhYmlsaXRpZXMuQmxvY2tjaGFpbi5Fdm0uVjFhbHBoYcoCI0NhcGFiaWxpdGllc1xCbG9ja2NoYWluXEV2bVxWMWFscGhh4gIvQ2FwYWJpbGl0aWVzXEJsb2NrY2hhaW5cRXZtXFYxYWxwaGFcR1BCTWV0YWRhdGHqAiZDYXBhYmlsaXRpZXM6OkJsb2NrY2hhaW46OkV2bTo6VjFhbHBoYWIGcHJvdG8z', + 'CjBjYXBhYmlsaXRpZXMvYmxvY2tjaGFpbi9ldm0vdjFhbHBoYS9jbGllbnQucHJvdG8SI2NhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhIh0KC1RvcGljVmFsdWVzEg4KBnZhbHVlcxgBIAMoDCK4AQoXRmlsdGVyTG9nVHJpZ2dlclJlcXVlc3QSEQoJYWRkcmVzc2VzGAEgAygMEkAKBnRvcGljcxgCIAMoCzIwLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLlRvcGljVmFsdWVzEkgKCmNvbmZpZGVuY2UYAyABKA4yNC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Db25maWRlbmNlTGV2ZWwiegoTQ2FsbENvbnRyYWN0UmVxdWVzdBI6CgRjYWxsGAEgASgLMiwuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuQ2FsbE1zZxInCgxibG9ja19udW1iZXIYAiABKAsyES52YWx1ZXMudjEuQmlnSW50IiEKEUNhbGxDb250cmFjdFJlcGx5EgwKBGRhdGEYASABKAwiWwoRRmlsdGVyTG9nc1JlcXVlc3QSRgoMZmlsdGVyX3F1ZXJ5GAEgASgLMjAuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRmlsdGVyUXVlcnkiSQoPRmlsdGVyTG9nc1JlcGx5EjYKBGxvZ3MYASADKAsyKC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Mb2cixwEKA0xvZxIPCgdhZGRyZXNzGAEgASgMEg4KBnRvcGljcxgCIAMoDBIPCgd0eF9oYXNoGAMgASgMEhIKCmJsb2NrX2hhc2gYBCABKAwSDAoEZGF0YRgFIAEoDBIRCglldmVudF9zaWcYBiABKAwSJwoMYmxvY2tfbnVtYmVyGAcgASgLMhEudmFsdWVzLnYxLkJpZ0ludBIQCgh0eF9pbmRleBgIIAEoDRINCgVpbmRleBgJIAEoDRIPCgdyZW1vdmVkGAogASgIIjEKB0NhbGxNc2cSDAoEZnJvbRgBIAEoDBIKCgJ0bxgCIAEoDBIMCgRkYXRhGAMgASgMIr0BCgtGaWx0ZXJRdWVyeRISCgpibG9ja19oYXNoGAEgASgMEiUKCmZyb21fYmxvY2sYAiABKAsyES52YWx1ZXMudjEuQmlnSW50EiMKCHRvX2Jsb2NrGAMgASgLMhEudmFsdWVzLnYxLkJpZ0ludBIRCglhZGRyZXNzZXMYBCADKAwSOwoGdG9waWNzGAUgAygLMisuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuVG9waWNzIhcKBlRvcGljcxINCgV0b3BpYxgBIAMoDCJMChBCYWxhbmNlQXRSZXF1ZXN0Eg8KB2FjY291bnQYASABKAwSJwoMYmxvY2tfbnVtYmVyGAIgASgLMhEudmFsdWVzLnYxLkJpZ0ludCI0Cg5CYWxhbmNlQXRSZXBseRIiCgdiYWxhbmNlGAEgASgLMhEudmFsdWVzLnYxLkJpZ0ludCJPChJFc3RpbWF0ZUdhc1JlcXVlc3QSOQoDbXNnGAEgASgLMiwuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuQ2FsbE1zZyIjChBFc3RpbWF0ZUdhc1JlcGx5Eg8KA2dhcxgBIAEoBEICMAAiKwobR2V0VHJhbnNhY3Rpb25CeUhhc2hSZXF1ZXN0EgwKBGhhc2gYASABKAwiYgoZR2V0VHJhbnNhY3Rpb25CeUhhc2hSZXBseRJFCgt0cmFuc2FjdGlvbhgBIAEoCzIwLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLlRyYW5zYWN0aW9uIqEBCgtUcmFuc2FjdGlvbhIRCgVub25jZRgBIAEoBEICMAASDwoDZ2FzGAIgASgEQgIwABIKCgJ0bxgDIAEoDBIMCgRkYXRhGAQgASgMEgwKBGhhc2gYBSABKAwSIAoFdmFsdWUYBiABKAsyES52YWx1ZXMudjEuQmlnSW50EiQKCWdhc19wcmljZRgHIAEoCzIRLnZhbHVlcy52MS5CaWdJbnQiLAocR2V0VHJhbnNhY3Rpb25SZWNlaXB0UmVxdWVzdBIMCgRoYXNoGAEgASgMIlsKGkdldFRyYW5zYWN0aW9uUmVjZWlwdFJlcGx5Ej0KB3JlY2VpcHQYASABKAsyLC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5SZWNlaXB0IpkCCgdSZWNlaXB0EhIKBnN0YXR1cxgBIAEoBEICMAASFAoIZ2FzX3VzZWQYAiABKARCAjAAEhQKCHR4X2luZGV4GAMgASgEQgIwABISCgpibG9ja19oYXNoGAQgASgMEjYKBGxvZ3MYBiADKAsyKC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Mb2cSDwoHdHhfaGFzaBgHIAEoDBIuChNlZmZlY3RpdmVfZ2FzX3ByaWNlGAggASgLMhEudmFsdWVzLnYxLkJpZ0ludBInCgxibG9ja19udW1iZXIYCSABKAsyES52YWx1ZXMudjEuQmlnSW50EhgKEGNvbnRyYWN0X2FkZHJlc3MYCiABKAwiQAoVSGVhZGVyQnlOdW1iZXJSZXF1ZXN0EicKDGJsb2NrX251bWJlchgBIAEoCzIRLnZhbHVlcy52MS5CaWdJbnQiUgoTSGVhZGVyQnlOdW1iZXJSZXBseRI7CgZoZWFkZXIYASABKAsyKy5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5IZWFkZXIiawoGSGVhZGVyEhUKCXRpbWVzdGFtcBgBIAEoBEICMAASJwoMYmxvY2tfbnVtYmVyGAIgASgLMhEudmFsdWVzLnYxLkJpZ0ludBIMCgRoYXNoGAMgASgMEhMKC3BhcmVudF9oYXNoGAQgASgMIqsBChJXcml0ZVJlcG9ydFJlcXVlc3QSEAoIcmVjZWl2ZXIYASABKAwSKwoGcmVwb3J0GAIgASgLMhsuc2RrLnYxYWxwaGEuUmVwb3J0UmVzcG9uc2USRwoKZ2FzX2NvbmZpZxgDIAEoCzIuLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLkdhc0NvbmZpZ0gAiAEBQg0KC19nYXNfY29uZmlnIiIKCUdhc0NvbmZpZxIVCglnYXNfbGltaXQYASABKARCAjAAIocDChBXcml0ZVJlcG9ydFJlcGx5EkAKCXR4X3N0YXR1cxgBIAEoDjItLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLlR4U3RhdHVzEnUKInJlY2VpdmVyX2NvbnRyYWN0X2V4ZWN1dGlvbl9zdGF0dXMYAiABKA4yRC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5SZWNlaXZlckNvbnRyYWN0RXhlY3V0aW9uU3RhdHVzSACIAQESFAoHdHhfaGFzaBgDIAEoDEgBiAEBEi8KD3RyYW5zYWN0aW9uX2ZlZRgEIAEoCzIRLnZhbHVlcy52MS5CaWdJbnRIAogBARIaCg1lcnJvcl9tZXNzYWdlGAUgASgJSAOIAQFCJQojX3JlY2VpdmVyX2NvbnRyYWN0X2V4ZWN1dGlvbl9zdGF0dXNCCgoIX3R4X2hhc2hCEgoQX3RyYW5zYWN0aW9uX2ZlZUIQCg5fZXJyb3JfbWVzc2FnZSppCg9Db25maWRlbmNlTGV2ZWwSGQoVQ09ORklERU5DRV9MRVZFTF9TQUZFEAASGwoXQ09ORklERU5DRV9MRVZFTF9MQVRFU1QQARIeChpDT05GSURFTkNFX0xFVkVMX0ZJTkFMSVpFRBACKoIBCh9SZWNlaXZlckNvbnRyYWN0RXhlY3V0aW9uU3RhdHVzEi4KKlJFQ0VJVkVSX0NPTlRSQUNUX0VYRUNVVElPTl9TVEFUVVNfU1VDQ0VTUxAAEi8KK1JFQ0VJVkVSX0NPTlRSQUNUX0VYRUNVVElPTl9TVEFUVVNfUkVWRVJURUQQASpOCghUeFN0YXR1cxITCg9UWF9TVEFUVVNfRkFUQUwQABIWChJUWF9TVEFUVVNfUkVWRVJURUQQARIVChFUWF9TVEFUVVNfU1VDQ0VTUxACMsMZCgZDbGllbnQSgAEKDENhbGxDb250cmFjdBI4LmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLkNhbGxDb250cmFjdFJlcXVlc3QaNi5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5DYWxsQ29udHJhY3RSZXBseRJ6CgpGaWx0ZXJMb2dzEjYuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRmlsdGVyTG9nc1JlcXVlc3QaNC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5GaWx0ZXJMb2dzUmVwbHkSdwoJQmFsYW5jZUF0EjUuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuQmFsYW5jZUF0UmVxdWVzdBozLmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLkJhbGFuY2VBdFJlcGx5En0KC0VzdGltYXRlR2FzEjcuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRXN0aW1hdGVHYXNSZXF1ZXN0GjUuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRXN0aW1hdGVHYXNSZXBseRKYAQoUR2V0VHJhbnNhY3Rpb25CeUhhc2gSQC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5HZXRUcmFuc2FjdGlvbkJ5SGFzaFJlcXVlc3QaPi5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5HZXRUcmFuc2FjdGlvbkJ5SGFzaFJlcGx5EpsBChVHZXRUcmFuc2FjdGlvblJlY2VpcHQSQS5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5HZXRUcmFuc2FjdGlvblJlY2VpcHRSZXF1ZXN0Gj8uY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuR2V0VHJhbnNhY3Rpb25SZWNlaXB0UmVwbHkShgEKDkhlYWRlckJ5TnVtYmVyEjouY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuSGVhZGVyQnlOdW1iZXJSZXF1ZXN0GjguY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuSGVhZGVyQnlOdW1iZXJSZXBseRJ2CgpMb2dUcmlnZ2VyEjwuY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGEuRmlsdGVyTG9nVHJpZ2dlclJlcXVlc3QaKC5jYXBhYmlsaXRpZXMuYmxvY2tjaGFpbi5ldm0udjFhbHBoYS5Mb2cwARJ9CgtXcml0ZVJlcG9ydBI3LmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLldyaXRlUmVwb3J0UmVxdWVzdBo1LmNhcGFiaWxpdGllcy5ibG9ja2NoYWluLmV2bS52MWFscGhhLldyaXRlUmVwb3J0UmVwbHkaiBCCtRiDEAgBEglldm1AMS4wLjAa8w8KDUNoYWluU2VsZWN0b3IS4Q8S3g8KFwoLYWRpLW1haW5uZXQQ/PDmwrfn3ao4ChgKC2FkaS10ZXN0bmV0EP2myPr5hozaggEKJAoXYXBlY2hhaW4tdGVzdG5ldC1jdXJ0aXMQwcO0+I3EkrKJAQoXCgthcmMtdGVzdG5ldBDnxoye19fQjSoKHQoRYXZhbGFuY2hlLW1haW5uZXQQ1eeKwOHVmKRZCiMKFmF2YWxhbmNoZS10ZXN0bmV0LWZ1amkQm/n8kKLjqPjMAQooChtiaW5hbmNlX3NtYXJ0X2NoYWluLW1haW5uZXQQz/eU8djtlbidAQooChtiaW5hbmNlX3NtYXJ0X2NoYWluLXRlc3RuZXQQ+62+nICu5Iq4AQoYCgxjZWxvLW1haW5uZXQQhtTo2IaTiNcSChgKDGNlbG8tc2Vwb2xpYRDEw/yL/OedmjQKGgoOY3Jvbm9zLXRlc3RuZXQQ/dnureDe2sgpCiIKFWR0Y2MtdGVzdG5ldC1hbmRlc2l0ZRDSg+PQmZblpNcBChwKEGV0aGVyZXVtLW1haW5uZXQQlfbx5M+ypsJFCicKG2V0aGVyZXVtLW1haW5uZXQtYXJiaXRydW0tMRDE6I3Njpuh10QKJAoXZXRoZXJldW0tbWFpbm5ldC1iYXNlLTEQgv+rov65kNPdAQoiChZldGhlcmV1bS1tYWlubmV0LWluay0xEKCwpum35qqEMAokChhldGhlcmV1bS1tYWlubmV0LWxpbmVhLTEQtrrpmMu9sJtACiUKGWV0aGVyZXVtLW1haW5uZXQtbWFudGxlLTEQiue0leewg8wVCicKG2V0aGVyZXVtLW1haW5uZXQtb3B0aW1pc20tMRC4lY/D9/7Q6TMKJgoZZXRoZXJldW0tbWFpbm5ldC1zY3JvbGwtMRC4vOTrxL7In7cBCikKHWV0aGVyZXVtLW1haW5uZXQtd29ybGRjaGFpbi0xEIfvurfFtsK4HAolChlldGhlcmV1bS1tYWlubmV0LXhsYXllci0xEJal/JymqO/tKQolChlldGhlcmV1bS1tYWlubmV0LXprc3luYy0xEJTul9nttLHXFQolChhldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEQ2bXkzvzJ7qDeAQovCiNldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEtYXJiaXRydW0tMRDqzu7/6raEozAKLAofZXRoZXJldW0tdGVzdG5ldC1zZXBvbGlhLWJhc2UtMRC4yrnv9pCuyI8BCiwKIGV0aGVyZXVtLXRlc3RuZXQtc2Vwb2xpYS1saW5lYS0xEOuq1P6C+eavTwotCiFldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEtbWFudGxlLTEQ1ca47s328qZyCi8KI2V0aGVyZXVtLXRlc3RuZXQtc2Vwb2xpYS1vcHRpbWlzbS0xEJ+GxaG+2MPASAotCiFldGhlcmV1bS10ZXN0bmV0LXNlcG9saWEtc2Nyb2xsLTEQi+m0vtu67dEfCjAKI2V0aGVyZXVtLXRlc3RuZXQtc2Vwb2xpYS11bmljaGFpbi0xELTe/uDsl6mWxAEKMQolZXRoZXJldW0tdGVzdG5ldC1zZXBvbGlhLXdvcmxkY2hhaW4tMRC63+DFx6nzxUkKLQohZXRoZXJldW0tdGVzdG5ldC1zZXBvbGlhLXprc3luYy0xELfB/P3yxIDeXwogChRnbm9zaXNfY2hhaW4tbWFpbm5ldBD0kq3a8qKuugYKJwobZ25vc2lzX2NoYWluLXRlc3RuZXQtY2hpYWRvELOxgtCbpY+PewofChNoeXBlcmxpcXVpZC1tYWlubmV0EKez+N3O0enyIQofChNoeXBlcmxpcXVpZC10ZXN0bmV0EIjO3ciX4Mm9OwogChNpbmstdGVzdG5ldC1zZXBvbGlhEOj0p6Xz5pbAhwEKGQoNam92YXktbWFpbm5ldBC1w8SaoYDfkhUKGQoNam92YXktdGVzdG5ldBDkz4qE3rLejg0KGwoPbWVnYWV0aC1tYWlubmV0EOqVtsi85KbIVAoeChFtZWdhZXRoLXRlc3RuZXQtMhDjjd6IsY/9k/0BCiQKF3BoYXJvcy1hdGxhbnRpYy10ZXN0bmV0EMyZ7eDOvK+03wEKGgoOcGhhcm9zLW1haW5uZXQQyMGHnvXvzaFsChsKDnBsYXNtYS1tYWlubmV0EPib8dHaydXGgQEKGgoOcGxhc21hLXRlc3RuZXQQ1Zu/pcO0mYc3ChsKD3BvbHlnb24tbWFpbm5ldBCxq+TwmpKGnTgKIQoUcG9seWdvbi10ZXN0bmV0LWFtb3kQzY/W3/HHkPrhAQokChhwcml2YXRlLXRlc3RuZXQtYW5kZXNpdGUQ1KaYpcGP3PxfCiIKFnByaXZhdGUtdGVzdG5ldC1wdW1pY2UQ+cLEtsSlxNsVCiUKGXByaXZhdGUtdGVzdG5ldC1xdWFydHppdGUQ+fCi3azdh/o5CiQKGHByaXZhdGUtdGVzdG5ldC1yaHlvbGl0ZRCB+onr4bTbsQgKGQoNc29uaWMtbWFpbm5ldBDRsuXt2aCynRcKGQoNc29uaWMtdGVzdG5ldBDIiPvUtMb6vBgKGAoLdGFjLXRlc3RuZXQQ1duN4/ufk9eDAQobCg54bGF5ZXItdGVzdG5ldBDJvqG0rcy83Y0BQuUBCidjb20uY2FwYWJpbGl0aWVzLmJsb2NrY2hhaW4uZXZtLnYxYWxwaGFCC0NsaWVudFByb3RvUAGiAgNDQkWqAiNDYXBhYmlsaXRpZXMuQmxvY2tjaGFpbi5Fdm0uVjFhbHBoYcoCI0NhcGFiaWxpdGllc1xCbG9ja2NoYWluXEV2bVxWMWFscGhh4gIvQ2FwYWJpbGl0aWVzXEJsb2NrY2hhaW5cRXZtXFYxYWxwaGFcR1BCTWV0YWRhdGHqAiZDYXBhYmlsaXRpZXM6OkJsb2NrY2hhaW46OkV2bTo6VjFhbHBoYWIGcHJvdG8z', [file_sdk_v1alpha_sdk, file_tools_generator_v1alpha_cre_metadata, file_values_v1_values], ) diff --git a/packages/cre-sdk/src/generated/chain-selectors/mainnet/evm/dtcc-mainnet-appchain.ts b/packages/cre-sdk/src/generated/chain-selectors/mainnet/evm/dtcc-mainnet-appchain.ts new file mode 100644 index 00000000..81fc9444 --- /dev/null +++ b/packages/cre-sdk/src/generated/chain-selectors/mainnet/evm/dtcc-mainnet-appchain.ts @@ -0,0 +1,16 @@ +// This file is auto-generated. Do not edit manually. +// Generated from: https://github.com/smartcontractkit/chain-selectors + +import type { NetworkInfo } from '@cre/sdk/utils/chain-selectors/types' + +const network: NetworkInfo = { + chainId: '2026041005', + chainSelector: { + name: 'dtcc-mainnet-appchain', + selector: 13879014182901017172n, + }, + chainFamily: 'evm', + networkType: 'mainnet', +} as const + +export default network diff --git a/packages/cre-sdk/src/generated/chain-selectors/testnet/evm/private-testnet-quartzite.ts b/packages/cre-sdk/src/generated/chain-selectors/testnet/evm/private-testnet-quartzite.ts new file mode 100644 index 00000000..20793c16 --- /dev/null +++ b/packages/cre-sdk/src/generated/chain-selectors/testnet/evm/private-testnet-quartzite.ts @@ -0,0 +1,16 @@ +// This file is auto-generated. Do not edit manually. +// Generated from: https://github.com/smartcontractkit/chain-selectors + +import type { NetworkInfo } from '@cre/sdk/utils/chain-selectors/types' + +const network: NetworkInfo = { + chainId: '2026041002', + chainSelector: { + name: 'private-testnet-quartzite', + selector: 4175996748267305081n, + }, + chainFamily: 'evm', + networkType: 'testnet', +} as const + +export default network diff --git a/packages/cre-sdk/src/generated/networks.ts b/packages/cre-sdk/src/generated/networks.ts index f972f8e8..d5f19dc8 100644 --- a/packages/cre-sdk/src/generated/networks.ts +++ b/packages/cre-sdk/src/generated/networks.ts @@ -32,6 +32,7 @@ import mainnet_evm_corn_mainnet from './chain-selectors/mainnet/evm/corn-mainnet import mainnet_evm_creditcoin_mainnet from './chain-selectors/mainnet/evm/creditcoin-mainnet' import mainnet_evm_cronos_mainnet from './chain-selectors/mainnet/evm/cronos-mainnet' import mainnet_evm_cronos_zkevm_mainnet from './chain-selectors/mainnet/evm/cronos-zkevm-mainnet' +import mainnet_evm_dtcc_mainnet_appchain from './chain-selectors/mainnet/evm/dtcc-mainnet-appchain' import mainnet_evm_edge_mainnet from './chain-selectors/mainnet/evm/edge-mainnet' // Import all individual network files import mainnet_evm_ethereum_mainnet from './chain-selectors/mainnet/evm/ethereum-mainnet' @@ -256,6 +257,7 @@ import testnet_evm_private_testnet_mica from './chain-selectors/testnet/evm/priv import testnet_evm_private_testnet_obsidian from './chain-selectors/testnet/evm/private-testnet-obsidian' import testnet_evm_private_testnet_opala from './chain-selectors/testnet/evm/private-testnet-opala' import testnet_evm_private_testnet_pumice from './chain-selectors/testnet/evm/private-testnet-pumice' +import testnet_evm_private_testnet_quartzite from './chain-selectors/testnet/evm/private-testnet-quartzite' import testnet_evm_private_testnet_rhyolite from './chain-selectors/testnet/evm/private-testnet-rhyolite' import testnet_evm_robinhood_testnet from './chain-selectors/testnet/evm/robinhood-testnet' import testnet_evm_ronin_testnet_saigon from './chain-selectors/testnet/evm/ronin-testnet-saigon' @@ -559,8 +561,10 @@ export const allNetworks: NetworkInfo[] = [ testnet_evm_ethereum_testnet_sepolia_blast_1, mainnet_evm_tron_mainnet_evm, testnet_evm_zora_testnet, + testnet_evm_private_testnet_quartzite, testnet_evm_private_testnet_rhyolite, testnet_evm_private_testnet_pumice, + mainnet_evm_dtcc_mainnet_appchain, testnet_evm_tron_testnet_shasta_evm, testnet_evm_tron_devnet_evm, testnet_evm_tron_testnet_nile_evm, @@ -701,6 +705,7 @@ export const mainnet = { mainnet_evm_zora_mainnet, mainnet_evm_corn_mainnet, mainnet_evm_tron_mainnet_evm, + mainnet_evm_dtcc_mainnet_appchain, ] as const, solana: [mainnet_solana_solana_mainnet] as const, aptos: [mainnet_aptos_aptos_mainnet] as const, @@ -861,6 +866,7 @@ export const testnet = { testnet_evm_plume_testnet, testnet_evm_ethereum_testnet_sepolia_blast_1, testnet_evm_zora_testnet, + testnet_evm_private_testnet_quartzite, testnet_evm_private_testnet_rhyolite, testnet_evm_private_testnet_pumice, testnet_evm_tron_testnet_shasta_evm, @@ -997,6 +1003,7 @@ export const mainnetBySelector = new Map([ [3555797439612589184n, mainnet_evm_zora_mainnet], [9043146809313071210n, mainnet_evm_corn_mainnet], [1546563616611573946n, mainnet_evm_tron_mainnet_evm], + [13879014182901017172n, mainnet_evm_dtcc_mainnet_appchain], [124615329519749607n, mainnet_solana_solana_mainnet], [4741433654826277614n, mainnet_aptos_aptos_mainnet], [17529533435026248318n, mainnet_sui_sui_mainnet], @@ -1155,6 +1162,7 @@ export const testnetBySelector = new Map([ [14684575664602284776n, testnet_evm_plume_testnet], [2027362563942762617n, testnet_evm_ethereum_testnet_sepolia_blast_1], [16244020411108056671n, testnet_evm_zora_testnet], + [4175996748267305081n, testnet_evm_private_testnet_quartzite], [604447335222770945n, testnet_evm_private_testnet_rhyolite], [1564738277398880633n, testnet_evm_private_testnet_pumice], [13231703482326770598n, testnet_evm_tron_testnet_shasta_evm], @@ -1292,6 +1300,7 @@ export const mainnetByName = new Map([ ['zora-mainnet', mainnet_evm_zora_mainnet], ['corn-mainnet', mainnet_evm_corn_mainnet], ['tron-mainnet-evm', mainnet_evm_tron_mainnet_evm], + ['dtcc-mainnet-appchain', mainnet_evm_dtcc_mainnet_appchain], ['solana-mainnet', mainnet_solana_solana_mainnet], ['aptos-mainnet', mainnet_aptos_aptos_mainnet], ['sui-mainnet', mainnet_sui_sui_mainnet], @@ -1465,6 +1474,7 @@ export const testnetByName = new Map([ ['plume-testnet', testnet_evm_plume_testnet], ['ethereum-testnet-sepolia-blast-1', testnet_evm_ethereum_testnet_sepolia_blast_1], ['zora-testnet', testnet_evm_zora_testnet], + ['private-testnet-quartzite', testnet_evm_private_testnet_quartzite], ['private-testnet-rhyolite', testnet_evm_private_testnet_rhyolite], ['private-testnet-pumice', testnet_evm_private_testnet_pumice], ['tron-testnet-shasta-evm', testnet_evm_tron_testnet_shasta_evm], @@ -1603,6 +1613,7 @@ export const mainnetBySelectorByFamily = { [3555797439612589184n, mainnet_evm_zora_mainnet], [9043146809313071210n, mainnet_evm_corn_mainnet], [1546563616611573946n, mainnet_evm_tron_mainnet_evm], + [13879014182901017172n, mainnet_evm_dtcc_mainnet_appchain], ]), solana: new Map([[124615329519749607n, mainnet_solana_solana_mainnet]]), aptos: new Map([[4741433654826277614n, mainnet_aptos_aptos_mainnet]]), @@ -1763,6 +1774,7 @@ export const testnetBySelectorByFamily = { [14684575664602284776n, testnet_evm_plume_testnet], [2027362563942762617n, testnet_evm_ethereum_testnet_sepolia_blast_1], [16244020411108056671n, testnet_evm_zora_testnet], + [4175996748267305081n, testnet_evm_private_testnet_quartzite], [604447335222770945n, testnet_evm_private_testnet_rhyolite], [1564738277398880633n, testnet_evm_private_testnet_pumice], [13231703482326770598n, testnet_evm_tron_testnet_shasta_evm], @@ -1912,6 +1924,7 @@ export const mainnetByNameByFamily = { ['zora-mainnet', mainnet_evm_zora_mainnet], ['corn-mainnet', mainnet_evm_corn_mainnet], ['tron-mainnet-evm', mainnet_evm_tron_mainnet_evm], + ['dtcc-mainnet-appchain', mainnet_evm_dtcc_mainnet_appchain], ]), solana: new Map([['solana-mainnet', mainnet_solana_solana_mainnet]]), aptos: new Map([['aptos-mainnet', mainnet_aptos_aptos_mainnet]]), @@ -2090,6 +2103,7 @@ export const testnetByNameByFamily = { ['plume-testnet', testnet_evm_plume_testnet], ['ethereum-testnet-sepolia-blast-1', testnet_evm_ethereum_testnet_sepolia_blast_1], ['zora-testnet', testnet_evm_zora_testnet], + ['private-testnet-quartzite', testnet_evm_private_testnet_quartzite], ['private-testnet-rhyolite', testnet_evm_private_testnet_rhyolite], ['private-testnet-pumice', testnet_evm_private_testnet_pumice], ['tron-testnet-shasta-evm', testnet_evm_tron_testnet_shasta_evm], diff --git a/submodules/chainlink-protos b/submodules/chainlink-protos index e7de09d4..1e006a21 160000 --- a/submodules/chainlink-protos +++ b/submodules/chainlink-protos @@ -1 +1 @@ -Subproject commit e7de09d4f5538cd787960b02010a6cc988d0c4c6 +Subproject commit 1e006a211c8041e4e98b3c8cc9d8d76c2332c42a From c381f8474fe8daccf4d2d89897aac7ed2b3d56f1 Mon Sep 17 00:00:00 2001 From: Ernest Nowacki <124677192+ernest-nowacki@users.noreply.github.com> Date: Thu, 2 Jul 2026 08:30:09 +0200 Subject: [PATCH 02/14] Solana SDK (#278) * Solana progress * Run formatting * Prepare sdk for binding generator * restore files * Fix lint issue * Lock the newer versions * Rework structure of cre-examples so it support modern format (matching what cre cli delivers on init) and deploying solana workflow for testing * Fix imports * Fix test * Update the baseline * Update from local simulation to staging settings --- bun.lock | 65 +- bunfig.toml | 6 + .../project.yaml | 11 +- .../workflow.yaml | 16 + .../project.yaml | 11 +- .../workflow.yaml | 16 + packages/cre-sdk-examples/.env.example | 4 +- packages/cre-sdk-examples/README.md | 20 +- packages/cre-sdk-examples/package.json | 2 + packages/cre-sdk-examples/project.yaml | 69 +- .../{config.json => config.production.json} | 0 .../config.staging.json} | 0 .../{index.ts => main.ts} | 0 .../confidential-http-with-body/workflow.yaml | 41 +- .../{config.json => config.production.json} | 0 .../workflows/hello-world/config.staging.json | 3 + .../hello-world/{index.ts => main.ts} | 0 .../src/workflows/hello-world/workflow.yaml | 41 +- .../{config.json => config.production.json} | 0 .../config.staging.json | 5 + .../{index.ts => main.ts} | 0 .../workflow.yaml | 41 +- .../config.production.json | 4 + .../config.staging.json | 4 + .../{index.ts => main.ts} | 0 .../http-confidential-fetch/workflow.yaml | 41 +- .../{config.json => config.production.json} | 0 .../config.staging.json} | 0 .../http-fetch-no-sugar/{index.ts => main.ts} | 0 .../http-fetch-no-sugar/workflow.yaml | 41 +- .../http-fetch/config.production.json | 4 + .../workflows/http-fetch/config.staging.json | 4 + .../http-fetch/{index.ts => main.ts} | 0 .../src/workflows/http-fetch/workflow.yaml | 41 +- .../{config.json => config.production.json} | 0 .../workflows/log-trigger/config.staging.json | 8 + .../log-trigger/{index.ts => main.ts} | 0 .../src/workflows/log-trigger/workflow.yaml | 40 +- .../{config.json => config.production.json} | 0 .../config.staging.json} | 0 .../on-chain-write/{index.ts => main.ts} | 0 .../workflows/on-chain-write/workflow.yaml | 42 +- .../workflows/on-chain/config.production.json | 12 + .../workflows/on-chain/config.staging.json | 12 + .../workflows/on-chain/{index.ts => main.ts} | 0 .../src/workflows/on-chain/workflow.yaml | 41 +- .../{config.json => config.production.json} | 0 .../proof-of-reserve/config.staging.json | 15 + .../proof-of-reserve/{index.ts => main.ts} | 0 .../workflows/proof-of-reserve/workflow.yaml | 40 +- .../{config.json => config.production.json} | 0 .../config.staging.json} | 0 .../workflows/secrets/{index.ts => main.ts} | 0 .../src/workflows/secrets/workflow.yaml | 40 +- .../solana-onchain-write/DataStorage.ts | 595 ++++++++++++++++++ .../workflows/solana-onchain-write/README.md | 41 ++ .../config.production.json | 23 + .../solana-onchain-write/config.staging.json | 23 + .../workflows/solana-onchain-write/main.ts | 118 ++++ .../solana-onchain-write/workflow.yaml | 33 + .../star-wars/config.production.json | 3 + .../workflows/star-wars/config.staging.json | 3 + .../workflows/star-wars/{index.ts => main.ts} | 0 .../src/workflows/star-wars/workflow.yaml | 41 +- packages/cre-sdk/README.md | 64 +- packages/cre-sdk/api-baseline.d.ts | 1 + packages/cre-sdk/package.json | 5 +- .../src/sdk/test/contract-mock-core.ts | 25 + .../cre-sdk/src/sdk/test/evm-contract-mock.ts | 174 ++--- packages/cre-sdk/src/sdk/test/index.ts | 6 + .../solana-binding-fixture/DataStorage.ts | 576 +++++++++++++++++ .../DataStorage_mock.ts | 19 + .../sdk/test/solana-binding-fixture/README.md | 22 + .../solana-binding-e2e.test.ts | 139 ++++ .../workflow-wasm-check.ts | 42 ++ .../src/sdk/test/solana-contract-mock.test.ts | 100 +++ .../src/sdk/test/solana-contract-mock.ts | 117 ++++ .../evm-helpers.test.ts} | 4 +- .../evm-helpers.ts} | 10 +- .../capabilities/blockchain/report-helpers.ts | 28 + .../blockchain/solana/solana-helpers.test.ts | 175 ++++++ .../blockchain/solana/solana-helpers.ts | 163 +++++ packages/cre-sdk/src/sdk/utils/hex-utils.ts | 9 + packages/cre-sdk/src/sdk/utils/index.ts | 5 +- packages/cre-sdk/tsconfig.build.json | 11 +- 85 files changed, 2884 insertions(+), 431 deletions(-) create mode 100644 bunfig.toml rename packages/cre-sdk-examples/src/workflows/confidential-http-with-body/{config.json => config.production.json} (100%) rename packages/cre-sdk-examples/src/workflows/{http-confidential-fetch/config.json => confidential-http-with-body/config.staging.json} (100%) rename packages/cre-sdk-examples/src/workflows/confidential-http-with-body/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/hello-world/{config.json => config.production.json} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/hello-world/config.staging.json rename packages/cre-sdk-examples/src/workflows/hello-world/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/http-confidential-fetch-with-secrets/{config.json => config.production.json} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/http-confidential-fetch-with-secrets/config.staging.json rename packages/cre-sdk-examples/src/workflows/http-confidential-fetch-with-secrets/{index.ts => main.ts} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/http-confidential-fetch/config.production.json create mode 100644 packages/cre-sdk-examples/src/workflows/http-confidential-fetch/config.staging.json rename packages/cre-sdk-examples/src/workflows/http-confidential-fetch/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/http-fetch-no-sugar/{config.json => config.production.json} (100%) rename packages/cre-sdk-examples/src/workflows/{http-fetch/config.json => http-fetch-no-sugar/config.staging.json} (100%) rename packages/cre-sdk-examples/src/workflows/http-fetch-no-sugar/{index.ts => main.ts} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/http-fetch/config.production.json create mode 100644 packages/cre-sdk-examples/src/workflows/http-fetch/config.staging.json rename packages/cre-sdk-examples/src/workflows/http-fetch/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/log-trigger/{config.json => config.production.json} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/log-trigger/config.staging.json rename packages/cre-sdk-examples/src/workflows/log-trigger/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/on-chain-write/{config.json => config.production.json} (100%) rename packages/cre-sdk-examples/src/workflows/{on-chain/config.json => on-chain-write/config.staging.json} (100%) rename packages/cre-sdk-examples/src/workflows/on-chain-write/{index.ts => main.ts} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/on-chain/config.production.json create mode 100644 packages/cre-sdk-examples/src/workflows/on-chain/config.staging.json rename packages/cre-sdk-examples/src/workflows/on-chain/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/proof-of-reserve/{config.json => config.production.json} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/proof-of-reserve/config.staging.json rename packages/cre-sdk-examples/src/workflows/proof-of-reserve/{index.ts => main.ts} (100%) rename packages/cre-sdk-examples/src/workflows/secrets/{config.json => config.production.json} (100%) rename packages/cre-sdk-examples/src/workflows/{star-wars/config.json => secrets/config.staging.json} (100%) rename packages/cre-sdk-examples/src/workflows/secrets/{index.ts => main.ts} (100%) create mode 100644 packages/cre-sdk-examples/src/workflows/solana-onchain-write/DataStorage.ts create mode 100644 packages/cre-sdk-examples/src/workflows/solana-onchain-write/README.md create mode 100644 packages/cre-sdk-examples/src/workflows/solana-onchain-write/config.production.json create mode 100644 packages/cre-sdk-examples/src/workflows/solana-onchain-write/config.staging.json create mode 100644 packages/cre-sdk-examples/src/workflows/solana-onchain-write/main.ts create mode 100644 packages/cre-sdk-examples/src/workflows/solana-onchain-write/workflow.yaml create mode 100644 packages/cre-sdk-examples/src/workflows/star-wars/config.production.json create mode 100644 packages/cre-sdk-examples/src/workflows/star-wars/config.staging.json rename packages/cre-sdk-examples/src/workflows/star-wars/{index.ts => main.ts} (100%) create mode 100644 packages/cre-sdk/src/sdk/test/contract-mock-core.ts create mode 100644 packages/cre-sdk/src/sdk/test/solana-binding-fixture/DataStorage.ts create mode 100644 packages/cre-sdk/src/sdk/test/solana-binding-fixture/DataStorage_mock.ts create mode 100644 packages/cre-sdk/src/sdk/test/solana-binding-fixture/README.md create mode 100644 packages/cre-sdk/src/sdk/test/solana-binding-fixture/solana-binding-e2e.test.ts create mode 100644 packages/cre-sdk/src/sdk/test/solana-binding-fixture/workflow-wasm-check.ts create mode 100644 packages/cre-sdk/src/sdk/test/solana-contract-mock.test.ts create mode 100644 packages/cre-sdk/src/sdk/test/solana-contract-mock.ts rename packages/cre-sdk/src/sdk/utils/capabilities/blockchain/{blockchain-helpers.test.ts => evm/evm-helpers.test.ts} (99%) rename packages/cre-sdk/src/sdk/utils/capabilities/blockchain/{blockchain-helpers.ts => evm/evm-helpers.ts} (96%) create mode 100644 packages/cre-sdk/src/sdk/utils/capabilities/blockchain/report-helpers.ts create mode 100644 packages/cre-sdk/src/sdk/utils/capabilities/blockchain/solana/solana-helpers.test.ts create mode 100644 packages/cre-sdk/src/sdk/utils/capabilities/blockchain/solana/solana-helpers.ts diff --git a/bun.lock b/bun.lock index c2ee1031..5ddb7b0d 100644 --- a/bun.lock +++ b/bun.lock @@ -63,7 +63,7 @@ }, "packages/cre-sdk": { "name": "@chainlink/cre-sdk", - "version": "1.13.0", + "version": "1.14.0", "bin": { "cre-compile": "bin/cre-compile.ts", }, @@ -71,6 +71,9 @@ "@bufbuild/protobuf": "2.6.3", "@bufbuild/protoc-gen-es": "2.6.3", "@chainlink/cre-sdk-javy-plugin": "workspace:*", + "@noble/hashes": "2.2.0", + "@solana/addresses": "6.10.0", + "@solana/codecs": "6.10.0", "@standard-schema/spec": "1.0.0", "viem": "2.34.0", "zod": "3.25.76", @@ -83,15 +86,17 @@ "fast-glob": "3.3.3", "ts-proto": "2.7.5", "typescript": "5.9.3", - "yaml": "2.8.1", + "yaml": "2.9.0", }, }, "packages/cre-sdk-examples": { "name": "@chainlink/cre-sdk-examples", - "version": "1.13.0", + "version": "1.14.0", "dependencies": { "@bufbuild/protobuf": "2.6.3", "@chainlink/cre-sdk": "workspace:*", + "@solana/addresses": "6.10.0", + "@solana/codecs": "6.10.0", "viem": "2.34.0", "zod": "3.25.76", }, @@ -174,7 +179,7 @@ "@noble/curves": ["@noble/curves@1.9.1", "", { "dependencies": { "@noble/hashes": "1.8.0" } }, "sha512-k11yZxZg+t+gWvBbIswW0yoJlu8cHOC7dhunwOzoWH/mXGBiYyR4YY6hAEK/3EUs4UpB8la1RfdRpeGsFHkWsA=="], - "@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + "@noble/hashes": ["@noble/hashes@2.2.0", "", {}, "sha512-IYqDGiTXab6FniAgnSdZwgWbomxpy9FtYvLKs7wCUs2a8RkITG+DFGO1DM9cr+E3/RgADRpFjrKVaJ1z6sjtEg=="], "@nodelib/fs.scandir": ["@nodelib/fs.scandir@2.1.5", "", { "dependencies": { "@nodelib/fs.stat": "2.0.5", "run-parallel": "^1.1.9" } }, "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g=="], @@ -188,11 +193,33 @@ "@scure/bip39": ["@scure/bip39@1.6.0", "", { "dependencies": { "@noble/hashes": "~1.8.0", "@scure/base": "~1.2.5" } }, "sha512-+lF0BbLiJNwVlev4eKelw1WWLaiKXw7sSl8T6FvBlWkdX+94aGJ4o8XjUdlyhTCjd8c+B3KT3JfS8P0bLRNU6A=="], + "@solana/addresses": ["@solana/addresses@6.10.0", "", { "dependencies": { "@solana/assertions": "6.10.0", "@solana/codecs-core": "6.10.0", "@solana/codecs-strings": "6.10.0", "@solana/errors": "6.10.0", "@solana/nominal-types": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-vEoCGBTxG0HCERAn84KXkrJjl+pDaNzOpZ0qbgcPS98fYxP5yzbKB8SNOY2bzrbkRUmmw5Q3hqTRERemUN2Gcw=="], + + "@solana/assertions": ["@solana/assertions@6.10.0", "", { "dependencies": { "@solana/errors": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-lKSAdVo+P/6Lp4vs6shstXmFOpvxrABwn4o1462tb7sKkNapk6o9pPFVPGw4DUgPS3WqWRs1j2tmpuVjhQRntg=="], + + "@solana/codecs": ["@solana/codecs@6.10.0", "", { "dependencies": { "@solana/codecs-core": "6.10.0", "@solana/codecs-data-structures": "6.10.0", "@solana/codecs-numbers": "6.10.0", "@solana/codecs-strings": "6.10.0", "@solana/fixed-points": "6.10.0", "@solana/options": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-lLVuxod4ChWp9i7OvpgIykYG8Q9OGPVXKnHM9VlzDDLylsx7Y1FoQL00sHa7PqFkJVmkBufaA6dcGbQ7FU+lAQ=="], + + "@solana/codecs-core": ["@solana/codecs-core@6.10.0", "", { "dependencies": { "@solana/errors": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-nfAl9OMGo4HanIMxGsQoVB7BxMoqBCYEUxl8oEAZZ09pDxnaXQZkTRXEwPPccag37XfW1ciPd1vWPKwB2b0HHQ=="], + + "@solana/codecs-data-structures": ["@solana/codecs-data-structures@6.10.0", "", { "dependencies": { "@solana/codecs-core": "6.10.0", "@solana/codecs-numbers": "6.10.0", "@solana/errors": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-CNasJW3bq5u+632Zt5aJ8rOjAjv2HyenpV8o9kAIqdmV4CBpjCCoBnKn8LkuR/sbeREZxJYfhKTXO/9ruAkw7A=="], + + "@solana/codecs-numbers": ["@solana/codecs-numbers@6.10.0", "", { "dependencies": { "@solana/codecs-core": "6.10.0", "@solana/errors": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-CcM+wX4zOiA9zkh8A7t1787A0Ehgmu5+6Z2tKoHew6cNw/dkaUTPa8JnNHbvfsLC8dfHC1BhAEJl86sKmRsfkQ=="], + + "@solana/codecs-strings": ["@solana/codecs-strings@6.10.0", "", { "dependencies": { "@solana/codecs-core": "6.10.0", "@solana/codecs-numbers": "6.10.0", "@solana/errors": "6.10.0" }, "peerDependencies": { "fastestsmallesttextencoderdecoder": "^1.0.22", "typescript": ">=5.4.0" }, "optionalPeers": ["fastestsmallesttextencoderdecoder", "typescript"] }, "sha512-zlaqkg7K6F6IN4V/Ec8TWkTn054gxv7ZLagvGkuEyAdPQ6BzzsehOm2TqCuyXgJJTCGPLY1bEk6yH9NxANe0kA=="], + + "@solana/errors": ["@solana/errors@6.10.0", "", { "dependencies": { "chalk": "5.6.2", "commander": "15.0.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"], "bin": { "errors": "bin/cli.mjs" } }, "sha512-KBLAxCtAXr357JNhCyIDQXWbuSj5vN6w+28FSfcYY6OOSiphmXLAV3V58jgV0C6iNbIzFJFi6yatFyDTdeJsNg=="], + + "@solana/fixed-points": ["@solana/fixed-points@6.10.0", "", { "dependencies": { "@solana/codecs-core": "6.10.0", "@solana/errors": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-ZkKL0alXH3L7/wMiVG8YUuG8qBKunlM810+YBD7nUPRhifiGsX1zwADViHLYNqLr/jUk0mTYFUcKznTpB/K+Gg=="], + + "@solana/nominal-types": ["@solana/nominal-types@6.10.0", "", { "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-9ykyBBvnkInH7fCacjJi7zu2PJyd+OCt+VTjIISv070fHzKIMFqZqJJ/dJ0SRH2aHwfB3n86iVsmtBtuxi4KKA=="], + + "@solana/options": ["@solana/options@6.10.0", "", { "dependencies": { "@solana/codecs-core": "6.10.0", "@solana/codecs-data-structures": "6.10.0", "@solana/codecs-numbers": "6.10.0", "@solana/codecs-strings": "6.10.0", "@solana/errors": "6.10.0" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-RO9UT3UYD8/Cu2uM6ZXbKvLeMnVD42+g9JRds7Pfs4AhiOyg4R4TJrQUAppTgavPTO3PBRlWtWOC05ZH/yAIbg=="], + "@standard-schema/spec": ["@standard-schema/spec@1.0.0", "", {}, "sha512-m2bOd0f2RT9k8QJx1JN85cZYyH1RqFBdlwtkSlf4tBDYLCiiZnv1fIIwacK6cqwXavOydf0NPToMQgpKq+dVlA=="], "@types/bun": ["@types/bun@1.3.8", "", { "dependencies": { "bun-types": "1.3.8" } }, "sha512-3LvWJ2q5GerAXYxO2mffLTqOzEu5qnhEAlh48Vnu8WQfnmSwbgagjGZV6BoHKJztENYEDn6QmVd949W4uESRJA=="], - "@types/node": ["@types/node@25.5.0", "", { "dependencies": { "undici-types": "~7.18.0" } }, "sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw=="], + "@types/node": ["@types/node@26.0.0", "", { "dependencies": { "undici-types": "~8.3.0" } }, "sha512-vf2YFi1iY9lHGwNJMs01biZFbKJkrZR1T6/MlzjhJLPdntOHLhTrDSnSVcdtvjihi4VQNlrFRIxLsDBlQpAipA=="], "@typescript/vfs": ["@typescript/vfs@1.6.4", "", { "dependencies": { "debug": "^4.4.3" }, "peerDependencies": { "typescript": "*" } }, "sha512-PJFXFS4ZJKiJ9Qiuix6Dz/OwEIqHD7Dme1UwZhTK11vR+5dqW2ACbdndWQexBzCx+CPuMe5WBYQWCsFyGlQLlQ=="], @@ -202,7 +229,7 @@ "bun-types": ["bun-types@1.3.8", "", { "dependencies": { "@types/node": "*" } }, "sha512-fL99nxdOWvV4LqjmC+8Q9kW3M4QTtTR1eePs94v5ctGqU8OeceWrSUaRw3JYb7tU3FkMIAjkueehrHPPPGKi5Q=="], - "call-bind": ["call-bind@1.0.8", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.0", "es-define-property": "^1.0.0", "get-intrinsic": "^1.2.4", "set-function-length": "^1.2.2" } }, "sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww=="], + "call-bind": ["call-bind@1.0.9", "", { "dependencies": { "call-bind-apply-helpers": "^1.0.2", "es-define-property": "^1.0.1", "get-intrinsic": "^1.3.0", "set-function-length": "^1.2.2" } }, "sha512-a/hy+pNsFUTR+Iz8TCJvXudKVLAnz/DyeSUo10I5yvFDQJBFU2s9uqQpoSrJlroHUKoKqzg+epxyP9lqFdzfBQ=="], "call-bind-apply-helpers": ["call-bind-apply-helpers@1.0.2", "", { "dependencies": { "es-errors": "^1.3.0", "function-bind": "^1.1.2" } }, "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ=="], @@ -212,6 +239,10 @@ "chain-selectors": ["chain-selectors@github:smartcontractkit/chain-selectors#3e718d1", {}, "smartcontractkit-chain-selectors-3e718d1"], + "chalk": ["chalk@5.6.2", "", {}, "sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA=="], + + "commander": ["commander@15.0.0", "", {}, "sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg=="], + "debug": ["debug@4.4.3", "", { "dependencies": { "ms": "^2.1.3" } }, "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA=="], "define-data-property": ["define-data-property@1.1.4", "", { "dependencies": { "es-define-property": "^1.0.0", "es-errors": "^1.3.0", "gopd": "^1.0.1" } }, "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A=="], @@ -226,7 +257,7 @@ "es-errors": ["es-errors@1.3.0", "", {}, "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="], - "es-object-atoms": ["es-object-atoms@1.1.1", "", { "dependencies": { "es-errors": "^1.3.0" } }, "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA=="], + "es-object-atoms": ["es-object-atoms@1.1.2", "", { "dependencies": { "es-errors": "^1.3.0" } }, "sha512-HWcBoN6NileqtSydK2FqHbS/LoDd2pqrnQHLyJzBj4kOp/ky2MWMN694xOfkK8/SnUsW2DH7EfyVlydKCsm1Zw=="], "eventemitter3": ["eventemitter3@5.0.1", "", {}, "sha512-GWkBvjiSZK87ELrYOSESUYeVIc9mvLLf/nXalMOS5dYrgZq9o5OVkbZAVM06CVxYsCwH9BDZFPlQTlPA1j4ahA=="], @@ -250,7 +281,7 @@ "has-symbols": ["has-symbols@1.1.0", "", {}, "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="], - "hasown": ["hasown@2.0.2", "", { "dependencies": { "function-bind": "^1.1.2" } }, "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ=="], + "hasown": ["hasown@2.0.4", "", { "dependencies": { "function-bind": "^1.1.2" } }, "sha512-T2UbfbBEF32wiepXIsMlTW9+dDYC6wMh/t/vYA4tuOMKqWz/n3vr1NFSxQiyP+zk2mXsoMA/i/7qV6LKut1t1A=="], "is-extglob": ["is-extglob@2.1.1", "", {}, "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ=="], @@ -312,7 +343,7 @@ "typescript": ["typescript@5.9.3", "", { "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" } }, "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw=="], - "undici-types": ["undici-types@7.18.2", "", {}, "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w=="], + "undici-types": ["undici-types@8.3.0", "", {}, "sha512-j375ScV60dom+YkPFIfTLcOiPxkN/buHz5GobjLhixFuANaNs3C9l4GmrWqejgXWJ7BbJcFYpTEUkS1Ge8bpZQ=="], "uuid": ["uuid@13.0.0", "", { "bin": { "uuid": "dist-node/bin/uuid" } }, "sha512-XQegIaBTVUjSHliKqcnFqYypAd4S+WCYt5NIeRs6w/UAry7z8Y9j5ZwRRL4kzq9U3sD6v+85er9FvkEaBpji2w=="], @@ -320,7 +351,7 @@ "ws": ["ws@8.18.3", "", { "peerDependencies": { "bufferutil": "^4.0.1", "utf-8-validate": ">=5.0.2" }, "optionalPeers": ["bufferutil", "utf-8-validate"] }, "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg=="], - "yaml": ["yaml@2.8.1", "", { "bin": { "yaml": "bin.mjs" } }, "sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw=="], + "yaml": ["yaml@2.9.0", "", { "bin": { "yaml": "bin.mjs" } }, "sha512-2AvhNX3mb8zd6Zy7INTtSpl1F15HW6Wnqj0srWlkKLcpYl/gMIMJiyuGq2KeI2YFxUPjdlB+3Lc10seMLtL4cA=="], "zod": ["zod@3.25.76", "", {}, "sha512-gzUt/qt81nXsFGKIFcC3YnfEAx5NkunCfnDlvuBSSFS02bcXu4Lmea0AFIUwbLWxWPx3d9p8S5QoaujKcNQxcQ=="], @@ -330,16 +361,30 @@ "@chainlink/cre-sdk-examples/viem": ["viem@2.34.0", "", { "dependencies": { "@noble/curves": "1.9.6", "@noble/hashes": "1.8.0", "@scure/bip32": "1.7.0", "@scure/bip39": "1.6.0", "abitype": "1.0.8", "isows": "1.0.7", "ox": "0.8.7", "ws": "8.18.3" }, "peerDependencies": { "typescript": ">=5.0.4" }, "optionalPeers": ["typescript"] }, "sha512-HJZG9Wt0DLX042MG0PK17tpataxtdAEhpta9/Q44FqKwy3xZMI5Lx4jF+zZPuXFuYjZ68R0PXqRwlswHs6r4gA=="], + "@noble/curves/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + "@scure/bip32/@noble/curves": ["@noble/curves@1.9.6", "", { "dependencies": { "@noble/hashes": "1.8.0" } }, "sha512-GIKz/j99FRthB8icyJQA51E8Uk5hXmdyThjgQXRKiv9h0zeRlzSCLIzFw6K1LotZ3XuB7yzlf76qk7uBmTdFqA=="], + "@scure/bip32/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + + "@scure/bip39/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + + "ox/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + + "viem/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + "@chainlink/cre-sdk-examples/viem/@noble/curves": ["@noble/curves@1.9.6", "", { "dependencies": { "@noble/hashes": "1.8.0" } }, "sha512-GIKz/j99FRthB8icyJQA51E8Uk5hXmdyThjgQXRKiv9h0zeRlzSCLIzFw6K1LotZ3XuB7yzlf76qk7uBmTdFqA=="], + "@chainlink/cre-sdk-examples/viem/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + "@chainlink/cre-sdk-examples/viem/abitype": ["abitype@1.0.8", "", { "peerDependencies": { "typescript": ">=5.0.4", "zod": "^3 >=3.22.0" }, "optionalPeers": ["typescript", "zod"] }, "sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg=="], "@chainlink/cre-sdk-examples/viem/ox": ["ox@0.8.7", "", { "dependencies": { "@adraffy/ens-normalize": "^1.11.0", "@noble/ciphers": "^1.3.0", "@noble/curves": "^1.9.1", "@noble/hashes": "^1.8.0", "@scure/bip32": "^1.7.0", "@scure/bip39": "^1.6.0", "abitype": "^1.0.8", "eventemitter3": "5.0.1" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-W1f0FiMf9NZqtHPEDEAEkyzZDwbIKfmH2qmQx8NNiQ/9JhxrSblmtLJsSfTtQG5YKowLOnBlLVguCyxm/7ztxw=="], "@chainlink/cre-sdk/viem/@noble/curves": ["@noble/curves@1.9.6", "", { "dependencies": { "@noble/hashes": "1.8.0" } }, "sha512-GIKz/j99FRthB8icyJQA51E8Uk5hXmdyThjgQXRKiv9h0zeRlzSCLIzFw6K1LotZ3XuB7yzlf76qk7uBmTdFqA=="], + "@chainlink/cre-sdk/viem/@noble/hashes": ["@noble/hashes@1.8.0", "", {}, "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A=="], + "@chainlink/cre-sdk/viem/abitype": ["abitype@1.0.8", "", { "peerDependencies": { "typescript": ">=5.0.4", "zod": "^3 >=3.22.0" }, "optionalPeers": ["typescript", "zod"] }, "sha512-ZeiI6h3GnW06uYDLx0etQtX/p8E24UaHHBj57RSjK7YBFe7iuVn07EDpOeP451D06sF27VOz9JJPlIKJmXgkEg=="], "@chainlink/cre-sdk/viem/ox": ["ox@0.8.7", "", { "dependencies": { "@adraffy/ens-normalize": "^1.11.0", "@noble/ciphers": "^1.3.0", "@noble/curves": "^1.9.1", "@noble/hashes": "^1.8.0", "@scure/bip32": "^1.7.0", "@scure/bip39": "^1.6.0", "abitype": "^1.0.8", "eventemitter3": "5.0.1" }, "peerDependencies": { "typescript": ">=5.4.0" }, "optionalPeers": ["typescript"] }, "sha512-W1f0FiMf9NZqtHPEDEAEkyzZDwbIKfmH2qmQx8NNiQ/9JhxrSblmtLJsSfTtQG5YKowLOnBlLVguCyxm/7ztxw=="], diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 00000000..fceb5b9a --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,6 @@ +[install] +# Without this, newer bun versions install workspace packages in a way that +# breaks TypeScript's ability to find the types for built-in globals like +# Response and Request. Setting "hoisted" keeps all packages in one shared +# node_modules folder (the classic layout), which fixes the lookup. +linker = "hoisted" \ No newline at end of file diff --git a/packages/cre-rust-prebuilt-plugin-example/project.yaml b/packages/cre-rust-prebuilt-plugin-example/project.yaml index 7752bff3..cb02d563 100644 --- a/packages/cre-rust-prebuilt-plugin-example/project.yaml +++ b/packages/cre-rust-prebuilt-plugin-example/project.yaml @@ -1,5 +1,14 @@ -# CRE project settings — only local-simulation is needed for this example. local-simulation: rpcs: - chain-name: ethereum-testnet-sepolia url: https://por.bcy-p.metalhosts.com/cre-alpha/MvqtrdftrbxcP3ZgGBJb3bK5/ethereum/sepolia + +staging-settings: + rpcs: + - chain-name: ethereum-testnet-sepolia + url: https://ethereum-sepolia-rpc.publicnode.com + +production-settings: + rpcs: + - chain-name: ethereum-testnet-sepolia + url: https://ethereum-sepolia-rpc.publicnode.com diff --git a/packages/cre-rust-prebuilt-plugin-example/workflow.yaml b/packages/cre-rust-prebuilt-plugin-example/workflow.yaml index f89c9eb7..c72567c7 100644 --- a/packages/cre-rust-prebuilt-plugin-example/workflow.yaml +++ b/packages/cre-rust-prebuilt-plugin-example/workflow.yaml @@ -6,3 +6,19 @@ local-simulation: workflow-artifacts: workflow-path: "./wasm/workflow.wasm" config-path: "./config.json" + +staging-settings: + user-workflow: + workflow-name: "rust-inject-prebuilt-plugin" + workflow-artifacts: + workflow-path: "./wasm/workflow.wasm" + config-path: "./config.json" + secrets-path: "" + +production-settings: + user-workflow: + workflow-name: "rust-inject-prebuilt-plugin" + workflow-artifacts: + workflow-path: "./wasm/workflow.wasm" + config-path: "./config.json" + secrets-path: "" diff --git a/packages/cre-rust-source-extensions-example/project.yaml b/packages/cre-rust-source-extensions-example/project.yaml index 7752bff3..cb02d563 100644 --- a/packages/cre-rust-source-extensions-example/project.yaml +++ b/packages/cre-rust-source-extensions-example/project.yaml @@ -1,5 +1,14 @@ -# CRE project settings — only local-simulation is needed for this example. local-simulation: rpcs: - chain-name: ethereum-testnet-sepolia url: https://por.bcy-p.metalhosts.com/cre-alpha/MvqtrdftrbxcP3ZgGBJb3bK5/ethereum/sepolia + +staging-settings: + rpcs: + - chain-name: ethereum-testnet-sepolia + url: https://ethereum-sepolia-rpc.publicnode.com + +production-settings: + rpcs: + - chain-name: ethereum-testnet-sepolia + url: https://ethereum-sepolia-rpc.publicnode.com diff --git a/packages/cre-rust-source-extensions-example/workflow.yaml b/packages/cre-rust-source-extensions-example/workflow.yaml index 3293c01f..03bd9040 100644 --- a/packages/cre-rust-source-extensions-example/workflow.yaml +++ b/packages/cre-rust-source-extensions-example/workflow.yaml @@ -6,3 +6,19 @@ local-simulation: workflow-artifacts: workflow-path: "./wasm/workflow.wasm" config-path: "./config.json" + +staging-settings: + user-workflow: + workflow-name: "rust-inject-source-extensions" + workflow-artifacts: + workflow-path: "./wasm/workflow.wasm" + config-path: "./config.json" + secrets-path: "" + +production-settings: + user-workflow: + workflow-name: "rust-inject-source-extensions" + workflow-artifacts: + workflow-path: "./wasm/workflow.wasm" + config-path: "./config.json" + secrets-path: "" diff --git a/packages/cre-sdk-examples/.env.example b/packages/cre-sdk-examples/.env.example index e10aed2a..64d40946 100644 --- a/packages/cre-sdk-examples/.env.example +++ b/packages/cre-sdk-examples/.env.example @@ -9,8 +9,8 @@ ############################################################################### # Ethereum private key or 1Password reference (e.g. op://vault/item/field) CRE_ETH_PRIVATE_KEY=0000000000000000000000000000000000000000000000000000000000000001 -# Profile to use for this environment (e.g. local-simulation, production, production-testnet) -CRE_TARGET=local-simulation +# Profile to use for this environment (e.g. staging-settins, production-settings) +CRE_TARGET=staging-settings # This one will be used in PoR workflow SECRET_ADDRESS_ALL=0x4700A50d858Cb281847ca4Ee0938F80DEfB3F1dd # This one will be used in secrets workflow diff --git a/packages/cre-sdk-examples/README.md b/packages/cre-sdk-examples/README.md index c6a66cad..fe5169b8 100644 --- a/packages/cre-sdk-examples/README.md +++ b/packages/cre-sdk-examples/README.md @@ -28,37 +28,43 @@ The setup is done in a way that treats `cre-sdk-examples` root directory as a CR **Examples**: -[Hello World workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/hello-world/index.ts): +[Hello World workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/hello-world/main.ts): ```zsh cre workflow simulate ./src/workflows/hello-world ``` -[Http Fetch workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/http-fetch/index.ts): +[Http Fetch workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/http-fetch/main.ts): ```zsh cre workflow simulate ./src/workflows/http-fetch ``` -[On Chain Read workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/on-chain/index.ts): +[On Chain Read workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/on-chain/main.ts): ```zsh cre workflow simulate ./src/workflows/on-chain ``` -[On Chain Write workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/on-chain-write/index.ts): +[On Chain Write workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/on-chain-write/main.ts): ```zsh cre workflow simulate ./src/workflows/on-chain-write ``` -[Proof of Reserve workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/proof-of-reserve/index.ts): +[Solana On-Chain Write workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/solana-onchain-write/main.ts): + +```zsh +cre workflow simulate ./src/workflows/solana-onchain-write +``` + +[Proof of Reserve workflow](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/proof-of-reserve/main.ts): ```zsh cre workflow simulate ./src/workflows/proof-of-reserve ``` -[Star Wars character example](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/star-wars/index.ts): +[Star Wars character example](https://github.com/smartcontractkit/cre-sdk-typescript/blob/main/packages/cre-sdk-examples/src/workflows/star-wars/main.ts): ```zsh cre workflow simulate ./src/workflows/star-wars @@ -75,5 +81,5 @@ bun x cre-compile Example: ```bash -bun cre-compile src/workflows/hello-world/index.ts dist/hello-world.wasm +bun cre-compile src/workflows/hello-world/main.ts dist/hello-world.wasm ``` diff --git a/packages/cre-sdk-examples/package.json b/packages/cre-sdk-examples/package.json index bd89d419..42072b87 100644 --- a/packages/cre-sdk-examples/package.json +++ b/packages/cre-sdk-examples/package.json @@ -17,6 +17,8 @@ "dependencies": { "@bufbuild/protobuf": "2.6.3", "@chainlink/cre-sdk": "workspace:*", + "@solana/addresses": "6.10.0", + "@solana/codecs": "6.10.0", "viem": "2.34.0", "zod": "3.25.76" }, diff --git a/packages/cre-sdk-examples/project.yaml b/packages/cre-sdk-examples/project.yaml index 076f5d2e..f9a5de6b 100644 --- a/packages/cre-sdk-examples/project.yaml +++ b/packages/cre-sdk-examples/project.yaml @@ -1,50 +1,47 @@ # ========================================================================== # CRE PROJECT SETTINGS FILE # ========================================================================== -# This file defines environment-specific targets used by the CRE CLI. -# Each top-level key is a target (e.g., `production`, `production-testnet`, etc.). -# -# You can define your own custom target names, such as `my-target`, and point -# the CLI to it via an environment variable. -# -# Below is an example `my-target`: +# Project-specific settings for CRE CLI targets. +# Each target defines cre-cli, account, and rpcs groups. # +# Example custom target: # my-target: -# cre-cli: -# # Required: Workflow DON ID used for registering and operating workflows. -# don-family: "small" -# logging: -# # Optional: Path to the seth configuration file (TOML). Used for logging configuration. -# seth-config-path: "/path/to/seth-config.toml" +# account: +# workflow-owner-address: "0x123..." # Optional: Owner wallet/MSIG address (used for --unsigned transactions) # rpcs: -# # Required: Map each used chain selector to a corresponding RPC URL (HTTPS) -# - chain-name: ethereum-mainnet -# url: "https://sepolia.infura.io/v3/YOUR_API_KEY" +# - chain-name: ethereum-testnet-sepolia # Required if your workflow interacts with this chain +# url: "" +# +# RPC URLs support ${VAR_NAME} syntax to reference environment variables. +# This keeps secrets out of project.yaml (which is committed to git). +# Variables are resolved from your .env file or exported shell variables. +# Example: +# - chain-name: ethereum-testnet-sepolia +# url: https://rpc.example.com/${CRE_SECRET_RPC_SEPOLIA} +# +# Experimental chains (automatically used by the simulator when present): +# Use this for chains not yet in official chain-selectors (e.g., hackathons, new chain integrations). +# In your workflow, reference the chain as evm:ChainSelector:@1.0.0 +# +# experimental-chains: +# - chain-selector: 12345 # The chain selector value +# rpc-url: "https://rpc.example.com" # RPC endpoint URL +# forwarder: "0x..." # Forwarder contract address on the chain # ========================================================================== -local-simulation: +staging-settings: rpcs: - chain-name: ethereum-testnet-sepolia - url: https://por.bcy-p.metalhosts.com/cre-alpha/MvqtrdftrbxcP3ZgGBJb3bK5/ethereum/sepolia + url: https://ethereum-sepolia-rpc.publicnode.com + - chain-name: solana-devnet + url: https://api.devnet.solana.com # ========================================================================== -production-testnet: - cre-cli: - don-family: "zone-a" - logging: - seth-config-path: "" +production-settings: rpcs: - chain-name: ethereum-testnet-sepolia - url: https://por.bcy-p.metalhosts.com/cre-alpha/MvqtrdftrbxcP3ZgGBJb3bK5/ethereum/sepolia - - chain-name: ethereum-testnet-sepolia-base-1 - url: