Skip to content

signTypedData implementation + tests + nexus contracts update #104

signTypedData implementation + tests + nexus contracts update

signTypedData implementation + tests + nexus contracts update #104

Triggered via pull request September 12, 2024 14:08
Status Failure
Total duration 1m 45s
Artifacts

unit-tests.yml

on: pull_request
Fit to window
Zoom out
Zoom in

Annotations

8 errors
tests/account.write.test.ts > account.write: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/account.write.test.ts:57:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { internalType: 'address', name:
tests/modules.k1Validator.write.test.ts > modules.k1Validator.write: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/modules.k1Validator.write.test.ts:63:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { internalType: 'addr
tests/modules.ownableExecutor.read.test.ts > modules.ownable.executor.read: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/modules.ownableExecutor.read.test.ts:59:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { internalType: 'a
tests/modules.ownableExecutor.write.test.ts > modules.ownable.executor.write: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/modules.ownableExecutor.write.test.ts:57:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { internalType: '
tests/modules.ownableValidator.install.write.test.ts > modules.ownable.validator.install.write: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/modules.ownableValidator.install.write.test.ts:57:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { intern
tests/modules.ownableValidator.uninstall.write.test.ts > modules.ownable.validator.uninstall.write: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/modules.ownableValidator.uninstall.write.test.ts:57:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { inte
tests/smart.sessions.test.ts > smart.sessions: src/account/NexusSmartAccount.ts#L290
ContractFunctionExecutionError: The contract function "computeAccountAddress" returned no data ("0x"). This could be due to any of the following: - The contract does not have the function "computeAccountAddress", - The parameters passed to the contract function may be invalid, or - The address is not a contract. Contract Call: address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold) args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0) Docs: https://viem.sh/docs/contract/readContract Version: viem@2.13.1 ❯ getContractError node_modules/viem/utils/errors/getContractError.ts:72:10 ❯ readContract node_modules/viem/actions/public/readContract.ts:128:11 ❯ NexusSmartAccount.getAddress src/account/NexusSmartAccount.ts:290:30 ❯ NexusSmartAccount._isDeployed src/account/BaseSmartContractAccount.ts:202:16 ❯ NexusSmartAccount.getInitCode src/account/BaseSmartContractAccount.ts:212:24 ❯ NexusSmartAccount.getDeploymentState src/account/BaseSmartContractAccount.ts:283:24 ❯ Module.create src/account/NexusSmartAccount.ts:282:5 ❯ tests/smart.sessions.test.ts:64:20 ⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯⎯ Serialized Error: { details: undefined, docsPath: '/docs/contract/readContract', metaMessages: [ 'This could be due to any of the following:', ' - The contract does not have the function "computeAccountAddress",', ' - The parameters passed to the contract function may be invalid, or', ' - The address is not a contract.', ' ', 'Contract Call:', ' address: 0xB0D70f13903f3Eb5D378dD6A5aC4E755Fc13dC1b\n function: computeAccountAddress(address eoaOwner, uint256 index, address[] attesters, uint8 threshold)\n args: (0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266, 0, [], 0)' ], shortMessage: 'The contract function "computeAccountAddress" returned no data ("0x").', version: 'viem@2.13.1', abi: [ { inputs: [ { internalType: 'address', name: 'implementation', type: 'address' }, { internalType: 'address', name: 'factoryOwner', type: 'address' }, { internalType: 'address', name: 'k1Validator', type: 'address' }, { internalType: 'contract Bootstrap', name: 'bootstrapper', type: 'address' }, { internalType: 'contract IERC7484', name: 'registry', type: 'address' } ], stateMutability: 'nonpayable', type: 'constructor' }, { inputs: [], name: 'AlreadyInitialized', type: 'error' }, { inputs: [], name: 'InnerCallFailed', type: 'error' }, { inputs: [], name: 'InvalidEntryPointAddress', type: 'error' }, { inputs: [], name: 'NewOwnerIsZeroAddress', type: 'error' }, { inputs: [], name: 'NoHandoverRequest', type: 'error' }, { inputs: [], name: 'Unauthorized', type: 'error' }, { inputs: [], name: 'ZeroAddressNotAllowed', type: 'error' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'account', type: 'address' }, { indexed: true, internalType: 'address', name: 'owner', type: 'address' }, { indexed: true, internalType: 'uint256', name: 'index', type: 'uint256' } ], name: 'AccountCreated', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverCanceled', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'pendingOwner', type: 'address' } ], name: 'OwnershipHandoverRequested', type: 'event' }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldOwner', type: 'address' }, { indexed: true, internalType: 'address', name: 'newOwner', type: 'address' } ], name: 'OwnershipTransferred', type: 'event' }, { inputs: [], name: 'ACCOUNT_IMPLEMENTATION', outputs: [ { internalType: 'address', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'BOOTSTRAPPER', outputs: [ { internalType: 'contract Bootstrap', name: '', type: 'address' } ], stateMutability: 'view', type: 'function' }, { inputs: [], name: 'K1_VALIDATOR', outputs: [ { internalType: 'address', name:
unit-tests
Process completed with exit code 1.