From af5ce18226a8ece2e6eabf541c65f8227af76709 Mon Sep 17 00:00:00 2001 From: Piotr Roslaniec Date: Tue, 2 Apr 2024 21:00:39 +0200 Subject: [PATCH 1/3] feature(lynx): update lynx to use amoy testnet --- .github/workflows/lynx.yml | 4 ++-- examples/taco/nodejs/src/index.ts | 2 +- packages/shared/package.json | 2 +- packages/shared/src/web3.ts | 3 ++- packages/taco/src/conditions/const.ts | 3 ++- .../taco/test/conditions/base/condition.test.ts | 3 ++- packages/taco/test/conditions/conditions.test.ts | 2 +- pnpm-lock.yaml | 13 +++++++------ 8 files changed, 18 insertions(+), 14 deletions(-) diff --git a/.github/workflows/lynx.yml b/.github/workflows/lynx.yml index e75a85926..18c513b6e 100644 --- a/.github/workflows/lynx.yml +++ b/.github/workflows/lynx.yml @@ -8,10 +8,10 @@ on: # TODO: Use variables when GH supports it for forks. See https://github.com/orgs/community/discussions/44322 env: - RPC_PROVIDER_URL: "https://polygon-mumbai.infura.io/v3/3747007a284045d483c342fb39889a30" + RPC_PROVIDER_URL: "https://rpc-amoy.polygon.technology" ENCRYPTOR_PRIVATE_KEY: "0x900edb9e8214b2353f82aa195e915128f419a92cfb8bbc0f4784f10ef4112b86" CONSUMER_PRIVATE_KEY: "0xf307e165339cb5deb2b8ec59c31a5c0a957b8e8453ce7fe8a19d9a4c8acf36d4" - RITUAL_ID: "5" + RITUAL_ID: "0" jobs: networks: diff --git a/examples/taco/nodejs/src/index.ts b/examples/taco/nodejs/src/index.ts index 9e9f3862d..cb9dfc485 100644 --- a/examples/taco/nodejs/src/index.ts +++ b/examples/taco/nodejs/src/index.ts @@ -50,7 +50,7 @@ const encryptToBytes = async (messageString: string) => { console.log(format('Encrypting message ("%s") ...', messageString)); const hasPositiveBalance = new conditions.base.rpc.RpcCondition({ - chain: 80001, + chain: 80002, method: 'eth_getBalance', parameters: [':userAddress', 'latest'], returnValueTest: { diff --git a/packages/shared/package.json b/packages/shared/package.json index 00ed8dc76..054bb229c 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -42,7 +42,7 @@ "dependencies": { "@ethersproject/abi": "^5.7.0", "@ethersproject/providers": "^5.7.2", - "@nucypher/nucypher-contracts": "^0.20.0", + "@nucypher/nucypher-contracts": "file:../../../nucypher-contracts", "@nucypher/nucypher-core": "*", "axios": "^1.6.8", "deep-equal": "^2.2.3", diff --git a/packages/shared/src/web3.ts b/packages/shared/src/web3.ts index 87668ec17..82c53791d 100644 --- a/packages/shared/src/web3.ts +++ b/packages/shared/src/web3.ts @@ -2,7 +2,8 @@ import { fromHexString } from './utils'; export enum ChainId { POLYGON = 137, - MUMBAI = 80001, + MUMBAI = 80001, // TODO(#506): Deprecate MUMBAI + AMOY = 80002, SEPOLIA = 11155111, ETHEREUM_MAINNET = 1, } diff --git a/packages/taco/src/conditions/const.ts b/packages/taco/src/conditions/const.ts index fb9d6ef86..4323cb80c 100644 --- a/packages/taco/src/conditions/const.ts +++ b/packages/taco/src/conditions/const.ts @@ -11,7 +11,8 @@ export const CONTEXT_PARAM_PREFIX = ':'; export const SUPPORTED_CHAIN_IDS = [ ChainId.POLYGON, - ChainId.MUMBAI, + ChainId.MUMBAI, // TODO(#506): Deprecate MUMBAI + ChainId.AMOY, ChainId.SEPOLIA, ChainId.ETHEREUM_MAINNET, ]; diff --git a/packages/taco/test/conditions/base/condition.test.ts b/packages/taco/test/conditions/base/condition.test.ts index ee1c73b2c..f725e9b5f 100644 --- a/packages/taco/test/conditions/base/condition.test.ts +++ b/packages/taco/test/conditions/base/condition.test.ts @@ -42,7 +42,8 @@ describe('validation', () => { chain: { _errors: [ 'Invalid literal value, expected 137', - 'Invalid literal value, expected 80001', + 'Invalid literal value, expected 80001', // TODO(#506): Deprecate MUMBAI + 'Invalid literal value, expected 80002', 'Invalid literal value, expected 11155111', 'Invalid literal value, expected 1', ], diff --git a/packages/taco/test/conditions/conditions.test.ts b/packages/taco/test/conditions/conditions.test.ts index 60c3bb97e..55aa7c09a 100644 --- a/packages/taco/test/conditions/conditions.test.ts +++ b/packages/taco/test/conditions/conditions.test.ts @@ -14,7 +14,7 @@ describe('conditions', () => { it('creates a complex condition with custom parameters', async () => { const hasPositiveBalance = { - chain: ChainId.MUMBAI, + chain: ChainId.AMOY, method: 'eth_getBalance', parameters: [':userAddress', 'latest'], returnValueTest: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7ffd5fcc6..47c68ecb2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -480,8 +480,8 @@ importers: specifier: ^5.7.2 version: 5.7.2 '@nucypher/nucypher-contracts': - specifier: ^0.20.0 - version: 0.20.0 + specifier: file:../../../nucypher-contracts + version: file:../nucypher-contracts '@nucypher/nucypher-core': specifier: ^0.14.1 version: 0.14.1 @@ -3600,10 +3600,6 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.16.0 - /@nucypher/nucypher-contracts@0.20.0: - resolution: {integrity: sha512-v+Jcixp7gpKIh7mFWyeTgEy2bxjMLI3/bD/o88x9tTEeZuxD2mEfViUzfhtLuTatQRQLBFBvy+AFPd8re8L72A==} - dev: false - /@nucypher/nucypher-core@0.14.1: resolution: {integrity: sha512-V/yCrjgQ8VFAeWhx9xtU1N3B8boSRA3y6+wriyaEb6kpMb4Cit+mWNiwNz9Xw0qdUcOtsoYlwb41RoZJKNOEAQ==} dev: false @@ -15243,3 +15239,8 @@ packages: /zod@3.22.4: resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} dev: false + + file:../nucypher-contracts: + resolution: {directory: ../nucypher-contracts, type: directory} + name: '@nucypher/nucypher-contracts' + dev: false From 088e62de6600adcb31612a5297a8e3586c4d30f4 Mon Sep 17 00:00:00 2001 From: Piotr Roslaniec Date: Thu, 4 Apr 2024 10:08:15 +0200 Subject: [PATCH 2/3] chore(deps): bump nucypher-contracts version to 0.21.0 --- packages/shared/package.json | 2 +- pnpm-lock.yaml | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/packages/shared/package.json b/packages/shared/package.json index 054bb229c..a4ff18ddd 100644 --- a/packages/shared/package.json +++ b/packages/shared/package.json @@ -42,7 +42,7 @@ "dependencies": { "@ethersproject/abi": "^5.7.0", "@ethersproject/providers": "^5.7.2", - "@nucypher/nucypher-contracts": "file:../../../nucypher-contracts", + "@nucypher/nucypher-contracts": "^0.21.0", "@nucypher/nucypher-core": "*", "axios": "^1.6.8", "deep-equal": "^2.2.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 47c68ecb2..5abdebb61 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -480,8 +480,8 @@ importers: specifier: ^5.7.2 version: 5.7.2 '@nucypher/nucypher-contracts': - specifier: file:../../../nucypher-contracts - version: file:../nucypher-contracts + specifier: ^0.21.0 + version: 0.21.0 '@nucypher/nucypher-core': specifier: ^0.14.1 version: 0.14.1 @@ -3600,6 +3600,10 @@ packages: '@nodelib/fs.scandir': 2.1.5 fastq: 1.16.0 + /@nucypher/nucypher-contracts@0.21.0: + resolution: {integrity: sha512-2ArdoHKNtPGJiTxhxlhhPrtg0YXPL/rbUy6EvtXVgw4Zwy4iJUw3n5calHcIzijyf4KZLc8wBdsGrCOpX5uC1A==} + dev: false + /@nucypher/nucypher-core@0.14.1: resolution: {integrity: sha512-V/yCrjgQ8VFAeWhx9xtU1N3B8boSRA3y6+wriyaEb6kpMb4Cit+mWNiwNz9Xw0qdUcOtsoYlwb41RoZJKNOEAQ==} dev: false @@ -15239,8 +15243,3 @@ packages: /zod@3.22.4: resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} dev: false - - file:../nucypher-contracts: - resolution: {directory: ../nucypher-contracts, type: directory} - name: '@nucypher/nucypher-contracts' - dev: false From f28ba6ddcc7410223e134c3ee5860b27cd743972 Mon Sep 17 00:00:00 2001 From: Piotr Roslaniec Date: Thu, 4 Apr 2024 10:12:21 +0200 Subject: [PATCH 3/3] chore(examples): fix nodejs example on tapir with a temporary workaround --- examples/taco/nodejs/src/index.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/taco/nodejs/src/index.ts b/examples/taco/nodejs/src/index.ts index cb9dfc485..fefbd1340 100644 --- a/examples/taco/nodejs/src/index.ts +++ b/examples/taco/nodejs/src/index.ts @@ -49,8 +49,11 @@ const encryptToBytes = async (messageString: string) => { const message = toBytes(messageString); console.log(format('Encrypting message ("%s") ...', messageString)); + // TODO: Remove after fixing #506 + const chain = domain === 'lynx' ? 80002 : 80001; + const hasPositiveBalance = new conditions.base.rpc.RpcCondition({ - chain: 80002, + chain, method: 'eth_getBalance', parameters: [':userAddress', 'latest'], returnValueTest: {