1.8.1#27
Open
Dargon789 wants to merge 1 commit into
Open
Conversation
* Add wallet creation docs * Warp words signers image example * Fix typo * NonceUtils initial commit * Deploy on binance * Update etherscan verify * Add SessionUtils * Add read gap nonce hook * Fix error names and add session tests * Add comments to SessionUtils * Patch lazy octopus require main modolue upgradable * Deploy session utils script * Deploy contract on networks * Commit factory build * Push Solidity version to 0.8.14 * Remove visivility of constructors * Implement native gapNonce and noNonce * Adapt tests to updated hardhat * Fix benchmark * Fix test coverage * Test special nonce types * Add tests for special nonce types * Replace string errors with type errors * Reduce gas costs using unchecked * Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable * Extend ModuleCalls for ModuleIgnoreNonceCalls * Compute subdigest during signature validation * Add alternative signature encoding schemas * Add support for signatures without chainId * Better signature dispatcher * Decode signatures without memory copy * Fix coverage tests * Update ts-node * Alternative signature dispatcher * Implement updateImageHash for ModuleAuthFixed * Fix benchmark runner * Recover signatures prefixed with lazy octops transactions * Fix lazy octopus prefixed signatures subdigest * Simplify tests * Remove unused contracts * Simplify repo and uncommit artifacts * wip chained signatures * better chained signatures * Cleanup libbytes and remove out of bounds checks * implement merkle tree encoding signatures * Fix github actions * Sequence merkle signatures (#146) * initial implementation recursive merkle signatures * Implement merkle signature encoding and decoding * Use merkle and legacy encoding, given size of config * Better benchmarker report * Optimize hash tree nodes * Fix new compiler warnings * Fix old compiler warnings * Optimize and simplify signature reading * Fix test to avoid generating wallets without signers * v2 - foundry changes (#147) * Remove subDigest from ModuleAuth * Remove unused LibBytes methods * Add foundry tests * Add foundry tests for utils * Add Foundry tests for SequenceBaseSig * Add SequenceDynamicSig tests * SequenceChainedSig tests and fixes * Add SubModuleNonceTest tests * Implementation and calls tests * Add more long array tests * Foundry tests * Fix implementation foundry test * ModuleCalls gas golfing * Keep transactions in calldata * Reduce runs github ci * Push to Solidity 0.8.16 * V2 - better signatures (#148) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Add autoUpdate modules * Implement EIP-5719 (#149) * V2 better signatures (#150) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Add base EIP-4337 implementation (#151) * Push Solidity to 0.8.17 * V2 simplify (#152) * Remove EIP-4337 support * Remove alternative nonce types * V2 - 3 bytes size for signatures (#153) * Add readUint24 utility function * Use uint24 for chained signature size * Use 3 bytes for dynamic signature * Use 3 bytes for signature branchs * LibString * GuestModule * MainModule * SequenceBaseSig * SequenceNoChainIdSig * thershold -> threshold * Amend SignatureValidator comments * Add full config tree test * minor v2 changes (#157) * GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index) * NotEnoughGas: add transaction index * ModuleStaticAuth: check static digests first * reuse SubModuleNonce constants * Integrate checkpoint into imagehash (#154) * Embed checkpoint in imageHash * Fix setImplementation match wallet test * Fix checkpoint order on tests * thershold -> threshold Co-authored-by: William Hua <william@attente.ca> * Minor renames (#158) * imagehash -> image hash * typehash -> type hash * Implement nested signature part * Fix foundry test for invalid sig type * Add tests for nested wallet configs * Add tests for unique leafs * Add ipfs + imageHash convenience method * deploy contracts using EIP-2470 * sub digest -> subdigest * leaf -> node * compare directly * whitespace * developpers -> developers * joinAddrAndWeight -> leafForAddressAndWeight * ImageHashNode | ConfigLeaf -> ConfigTopology * fix unnecessary casts * iddle -> idle * Converter -> Convertor * mainmodule -> main module * fix incorrect comments * V2 nested configs (#155) * Update and fix verify * V2 - convenience Auth + IPFS (#159) * Implement nested signature part * Fix foundry test for invalid sig type * Add tests for nested wallet configs * Add tests for unique leafs * Add ipfs + imageHash convenience method * Update hardhat * deploy contracts using EIP-2470 * Delete unused contract * Use node v18 for ci * Move v1 audits to v1 folder * Add onlyDelegatecall module * Fix comments * Remove redundant static auth * Foundry test fixes * Update outdated arcadeum comments * Better Tx executed events * Deploy new version * Fix type GuestModule comment * Update to Solidity 0.8.18 * erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (#165) * Comments and formatting * Add docs for ModuleAuth * Bump undici from 5.12.0 to 5.19.1 Bumps [undici](https://github.com/nodejs/undici) from 5.12.0 to 5.19.1. - [Release notes](https://github.com/nodejs/undici/releases) - [Commits](https://github.com/nodejs/undici/compare/v5.12.0...v5.19.1) --- updated-dependencies: - dependency-name: undici dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> * MainModuleGasEstimation: simulateExecute (#167) * V2 - Consensys audit fixes (#168) * Fix right padded hooks selector issue * Fix multicall blockNumber wrong value * Revert isValidSignature if wrong signature length * Emit events when changing hooks * Revert if factory failed to deploy wallet * Remove unused imports and fix solhint * Implement ERC165 missing modules * Remove duplicated decodeNonce code * Move gas-estimation modules to subdir * Remove outdated experimental pragma * Fix foundry test * Revert contract creation if deploy failed * Deploy new contracts on some chains * Deploy Sequence v2 contracts * fix: requireNonExpired inclusion (#170) * Hooks (#169) * Hook implements IERC223Receiver * Add IERC777Receiver * Test stability (#171) * Bump forge deps * Improve test stability * Replace rinkeby and arb-rinkeby with arbitrum goerli * Add Oasys homeverse testnet * Deploy to Oasys Homeverse Testnet * Add EIP-6492 validator implementation * Add static bytecode deploy script * EIP-4337 hook first pass * Nicer errors * Correct error handling * Ignore nonce validation. Assumed correct by entrypoint * Use call data directly * fix: package.json & yarn.lock to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-WS-7266574 * fix: package.json & yarn.lock to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577916 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577917 - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-7577918 * fix: package.json & yarn.lock to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8172694 * fix: package.json & yarn.lock to reduce vulnerabilities The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 * Update ci.yml (#1) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create nodejs.yml (#2) * Create nodejs.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .github/workflows/nodejs.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Add .circleci/config.yml * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Add .circleci/config.yml (#3) * Add .circleci/config.yml * Update .circleci/config.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update ci.yml (#4) CI: Update Foundry test steps in the CI workflow to run forge test --rerun without extra verbose logging flags. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create ci-web3-gamefi.yml (#5) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create pnpm-ci.yaml (#7) * Create pnpm-ci.yaml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .github/workflows/pnpm-ci.yaml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Create npm.yml (#6) * Create npm.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 12: Artifact poisoning Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Create yarn_ci.yml (#8) Build: Introduce a Yarn-based GitHub Actions CI workflow that installs dependencies, lints Solidity code, and runs Foundry tests on push events. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete .github/workflows/nodejs.yml (#11) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update PROD.env.sample (#12) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update yarn.lock (#13) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update yarn_ci.yml (#10) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create PR-Sovereign UX Deployment to Master.md (#14) * Create PR-Sovereign UX Deployment to Master.md Add project documentation file describing the Sovereign contracts library and its deployment workflow. Documentation: Document library features, supported ERC standards, and architectural components. Add instructions for installation, testing, gas comparison, and deployment using pnpm. Describe dependencies, audit information, and licensing for the contracts library. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update PR-Sovereign UX Deployment to Master.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Create PR-Sovereign.md (#16) * Create PR-Sovereign.md Documentation: Document the Sovereign contracts library features, deployment steps, testing workflow, dependencies, audits, and licensing in a new PR-Sovereign.md file. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update PR-Sovereign.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> * Delete .circleci/ci-web3-gamefi.yml (#17) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: package.json to reduce vulnerabilities (#18) The following vulnerabilities are fixed with an upgrade: - https://snyk.io/vuln/SNYK-JS-ELLIPTIC-8187303 - https://snyk.io/vuln/SNYK-JS-AXIOS-9292519 - https://snyk.io/vuln/SNYK-JS-WS-7266574 - https://snyk.io/vuln/SNYK-JS-CROSSSPAWN-8303230 - https://snyk.io/vuln/SNYK-JS-SEMVER-3247795 - https://snyk.io/vuln/SNYK-JS-AXIOS-6032459 - https://snyk.io/vuln/SNYK-JS-ADMZIP-1065796 - https://snyk.io/vuln/SNYK-JS-INFLIGHT-6095116 - https://snyk.io/vuln/SNYK-JS-TMP-11501554 - https://snyk.io/vuln/SNYK-JS-AXIOS-9403194 - https://snyk.io/vuln/SNYK-JS-AXIOS-12613773 - https://snyk.io/vuln/SNYK-JS-AXIOS-6124857 - https://snyk.io/vuln/SNYK-JS-WORDWRAP-3149973 - https://snyk.io/vuln/SNYK-JS-JSYAML-13961110 - https://snyk.io/vuln/SNYK-JS-COOKIE-8163060 Co-authored-by: snyk-io[bot] <141718529+snyk-io[bot]@users.noreply.github.com> * Create config.yml (#19) CI: Introduce a basic CircleCI workflow and job definition using a Docker executor to validate the pipeline setup. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * fix: repack ci tests, lint, CI/CD ai help verified signature (#20) * Fix test wallet generation * Rename image hash storage slot * Update typings * Fix error more than 12 owners * Test wallet with 255 signers * Add gaslimit to transactions * Test transactions gasLimit * Onion hash for signers image * Fix bench test * Remove MainModuleDeployer * Add create contracts feature * Add prepare script for compiling contracts * Add files to npm package * Update MainModule.sol * Add Github actions * Push Solidity compiler to 0.6.6 * Replace nonce window by nonce spaces * Use module storage to store hooks * Use abi.encode and hardcode NONCE_KEY * Hardcode hooks key * Hardcode image hash key * Removed unused constant * Define more explicit new nonce * Build typings * Created ModuleStorage library * Rename ModuleBase -> ModuleSelfAuth * Solidity 0.6.7 * Update module typings * Add readHook external method * Implement ERC165 and supportsInterface on modules * Add network id to message digest * Implement ModuleStorage mappings * Test used storage slots * Fix read storage tests * Add ModuleHooks implements ERC223 * Test implements all interfaceIds * Remove function selectors from ERC165 * Add TxExecuted, and txHash to TxFailed * Test emit TxExecuted event * Add big batches benchmark * Add failing transactions benchmark * Add benchmark yarn job * Add benchmark job to Github actions * Fix rejected transaction test * Remove index and topics from tx events * Manually test interface ids * Implement self execute transactions * Push Solidity to 0.6.8 * Build typings * Remove addressOf from factory * Test self-execute transaction bundles * Use flag to determine if reading address or signature * Test revert invalid flag on signature * Use OpenZeppelin ECDSA recover to avoid ECDSA malleability * Inline ECDSA malleability checks for gas savings * Fix error message prefix separator * Use constants for signature type and remove unused struct * Enable buidler optimizer * Use buidler for build scripts * Add contract typings to gitignore, remove cleanup before build * Allow ModuleCalls methods to be overridden * Create AnonymousModule * Test AnonymousModule * Add ExpirableUtil for expirable bundles * Fix output files dir package.json * cross platform fix (#60) * Rename AnonymousModule -> GuestModule * Remove yarn-error and add to gitignore * Add coverage yarn script * Add coverage to Github actions * Fix notice comment on GuestModule * Test send empty signature to MainModuleUpgradable implementation * Make imageHash == 0 invalid * Move imageHash check to isValidImage * Fix pragma of core contracts * Remove unuse abicoder v2 on some contracts * Fix invalid signature revert messages prefixes * Enforce transaction gasLimit * Decrease gasLimits on test transactions * Test not enough gas * Ignore zero gasLimit * Remove pop byte util * Ignore gasLimit 0 on GuestModule * Check gasLeft on GuestModule * Typos * Fixes #72 * Fixes #70 * Fixes #76 * Fixes #71 * Fixes #78 * Comments for inheritance * Add comment for relayers * Remove pop value comment * Implement requireMinNonce * Fix revert string prefix * Add events for wallet upgrade * Remove first event field * Add requireConfig to utils * Validate counterfactual configuration * Increase expiration delta test * Fix typo * Deploy script via universal deployer * Add requireUtils to deployed contracts * Fix tests path * Handle no config file * Add typings gen for ethers-v5 * Add Goerli network info * Matic support * Add audits * Bumb to solc 0.7.4 * Update package name * Update deployed contracts addresses * Add devcontainer to gitignore * Fix buidler coverage * Fix coverage timeout * MultiCallUtils initial commit * Skip slow tests on coverage * Ignore error on coverage run github actions * Fixes and tests for multiCall * Enable pre-test and add quicktest without pre-test * Make multicall payable * Add return chain id * Deploy SequenceUtils instead of RequireUtils * hardhat + ethers v5 (#103) * LICENSE, and yarn.lock * package.json, include LICENSE and contracts to dist files * package.json scripts update * github actions, update workflow filename * gh workflow * move src folders to root level * linting, formatting and vendoring * ci * Add publishConfig and publishSigners (#109) * Add contract storage indexed requireConfig util * Simplify require utils index * Add publishSigners, rename requireConfig to publishConfig * Disable publishSigners for updated wallets * Sign sub-digest for initial signers * Add comments to RequireUtils * Sign sub-digest for ERC1271 hashes (#106) * Support for nested signatures - ERC1271 (#105) * Add support for dynamic size signatures * Support ERC1271 for nested wallets * Use bytes32 for ERC1271 * Add test nested ERC1271 signature * Remove unused variables from readBytes * Rename sig type wallet bytes constant * Update build and types for require utils * Add verify etherscan scripts (#110) * Deploy contracts on testnets and matic * Change optimizer runs to more compatible value * Deploy contracts to testnets and Matic * Mainnet deploy * Add quantstamp audit * v1.2.0 * update deps * v1.3.0 * Update RequireUtils to support ERC1271 signatures (#111) * Out of bounds checks (#112) * Require EOA signatures to be 66 bytes * Re-build contracts and typings * Add overflow assert on libBytes * v1.4.0 * Add lastImageHashUpdate index (#113) * Dist @0xsequence/wallet-contracts without any dependencies (#114) * v1.6.0, include js adapter for easy interfacing with contracts * Tenderly and contract deployments (#115) * Add tenderly verification to deploy script * Fix export networks * v1.7.0 (#116) * Add tenderly verification to deploy script * Fix export networks * Deployments and arbitrum * Pump version * Add known image hashes (#117) * Add knownImageHashes index * Build knownImageHashes * Only register knownImageHash for counterFactual wallets * Deploy new sequence utils * Push version to v1.8.0 * Revision version bump * Deploy arbitrum testnet 4 * comment updates * Undo comments (#120) * Undo arbitrum to sequence comment changes * Add job to see if there are pending builds from being commited * Add arbitrum mainnet and new testnet (#121) * Gas estimation module (#124) * Add MainModuleGasEstimation and GasEstimator contracts * Add gas estimation tests * Bump handlebars from 4.7.6 to 4.7.7 (#118) Bumps [handlebars](https://github.com/wycats/handlebars.js) from 4.7.6 to 4.7.7. - [Release notes](https://github.com/wycats/handlebars.js/releases) - [Changelog](https://github.com/handlebars-lang/handlebars.js/blob/master/release-notes.md) - [Commits](https://github.com/wycats/handlebars.js/compare/v4.7.6...v4.7.7) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump hosted-git-info from 2.8.8 to 2.8.9 (#119) Bumps [hosted-git-info](https://github.com/npm/hosted-git-info) from 2.8.8 to 2.8.9. - [Release notes](https://github.com/npm/hosted-git-info/releases) - [Changelog](https://github.com/npm/hosted-git-info/blob/v2.8.9/CHANGELOG.md) - [Commits](https://github.com/npm/hosted-git-info/compare/v2.8.8...v2.8.9) Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump normalize-url from 4.5.0 to 4.5.1 (#122) Bumps [normalize-url](https://github.com/sindresorhus/normalize-url) from 4.5.0 to 4.5.1. - [Release notes](https://github.com/sindresorhus/normalize-url/releases) - [Commits](https://github.com/sindresorhus/normalize-url/commits) --- updated-dependencies: - dependency-name: normalize-url dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump glob-parent from 5.1.1 to 5.1.2 (#123) Bumps [glob-parent](https://github.com/gulpjs/glob-parent) from 5.1.1 to 5.1.2. - [Release notes](https://github.com/gulpjs/glob-parent/releases) - [Changelog](https://github.com/gulpjs/glob-parent/blob/main/CHANGELOG.md) - [Commits](https://github.com/gulpjs/glob-parent/compare/v5.1.1...v5.1.2) --- updated-dependencies: - dependency-name: glob-parent dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Push version 1.9.0 * Bump lodash from 4.17.20 to 4.17.21 (#125) Bumps [lodash](https://github.com/lodash/lodash) from 4.17.20 to 4.17.21. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.20...4.17.21) --- updated-dependencies: - dependency-name: lodash dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * v1.9.1 * Ignore nonce for ModuleGasEstimation (#126) * v1.9.3 * v1.9.4 * Update etherscan lib and add chainId info to hardhat * Fresh signer lib (#130) * Add RequireFreshSigner lib * Add tests and change error code * Deploy to networks * Fix rare failed test * Bump tar from 4.4.13 to 4.4.19 (#131) Bumps [tar](https://github.com/npm/node-tar) from 4.4.13 to 4.4.19. - [Release notes](https://github.com/npm/node-tar/releases) - [Changelog](https://github.com/npm/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/npm/node-tar/compare/v4.4.13...v4.4.19) --- updated-dependencies: - dependency-name: tar dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump path-parse from 1.0.6 to 1.0.7 (#128) Bumps [path-parse](https://github.com/jbgutierrez/path-parse) from 1.0.6 to 1.0.7. - [Release notes](https://github.com/jbgutierrez/path-parse/releases) - [Commits](https://github.com/jbgutierrez/path-parse/commits/v1.0.7) --- updated-dependencies: - dependency-name: path-parse dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump axios from 0.21.1 to 0.21.4 (#132) Bumps [axios](https://github.com/axios/axios) from 0.21.1 to 0.21.4. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/master/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v0.21.1...v0.21.4) --- updated-dependencies: - dependency-name: axios dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump nth-check from 2.0.0 to 2.0.1 (#133) Bumps [nth-check](https://github.com/fb55/nth-check) from 2.0.0 to 2.0.1. - [Release notes](https://github.com/fb55/nth-check/releases) - [Commits](https://github.com/fb55/nth-check/compare/v2.0.0...v2.0.1) --- updated-dependencies: - dependency-name: nth-check dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * README * Per-transaction estimated gas usage and execution results * v1.9.5 * v1.9.6 * Fix error message in MainModuleGasEstimation * Bump follow-redirects from 1.14.4 to 1.14.7 (#137) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.4 to 1.14.7. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.4...v1.14.7) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump shelljs from 0.8.4 to 0.8.5 (#138) Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5. - [Release notes](https://github.com/shelljs/shelljs/releases) - [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md) - [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5) --- updated-dependencies: - dependency-name: shelljs dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump follow-redirects from 1.14.7 to 1.14.8 (#139) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.8. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.8) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump minimist from 1.2.5 to 1.2.6 (#140) Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6. - [Release notes](https://github.com/substack/minimist/releases) - [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6) --- updated-dependencies: - dependency-name: minimist dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Optimism deploy * Update hardhat/etherscan * Deploy on nove and avalanche * dep upgrades (#160) * deploy on avalanche testnet * Bump decode-uri-component from 0.2.0 to 0.2.2 (#161) Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2. - [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases) - [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2) --- updated-dependencies: - dependency-name: decode-uri-component dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump json5 from 1.0.1 to 1.0.2 (#162) * Zellic_audit_sequencev2 * Replace rinkeby and arb-rinkeby with arbitrum goerli (#172) * Sequence v2 (#145) * NonceUtils initial commit * Add SessionUtils * Add read gap nonce hook * Fix error names and add session tests * Add comments to SessionUtils * Patch lazy octopus require main modolue upgradable * Deploy session utils script * Deploy contract on networks * Commit factory build * Push Solidity version to 0.8.14 * Remove visivility of constructors * Implement native gapNonce and noNonce * Adapt tests to updated hardhat * Fix benchmark * Fix test coverage * Test special nonce types * Add tests for special nonce types * Replace string errors with type errors * Reduce gas costs using unchecked * Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable * Extend ModuleCalls for ModuleIgnoreNonceCalls * Compute subdigest during signature validation * Add alternative signature encoding schemas * Add support for signatures without chainId * Better signature dispatcher * Decode signatures without memory copy * Fix coverage tests * Update ts-node * Alternative signature dispatcher * Implement updateImageHash for ModuleAuthFixed * Fix benchmark runner * Recover signatures prefixed with lazy octops transactions * Fix lazy octopus prefixed signatures subdigest * Simplify tests * Remove unused contracts * Simplify repo and uncommit artifacts * wip chained signatures * better chained signatures * Cleanup libbytes and remove out of bounds checks * Fix github actions * Sequence merkle signatures (#146) * initial implementation recursive merkle signatures * Implement merkle signature encoding and decoding * Use merkle and legacy encoding, given size of config * Better benchmarker report * Optimize hash tree nodes * Fix new compiler warnings * Fix old compiler warnings * Optimize and simplify signature reading * Fix test to avoid generating wallets without signers * v2 - foundry changes (#147) * Remove subDigest from ModuleAuth * Remove unused LibBytes methods * Add foundry tests * Add foundry tests for utils * Add Foundry tests for SequenceBaseSig * Add SequenceDynamicSig tests * SequenceChainedSig tests and fixes * Add SubModuleNonceTest tests * Implementation and calls tests * Add more long array tests * Foundry tests * Fix implementation foundry test * ModuleCalls gas golfing * Keep transactions in calldata * Reduce runs github ci * Push to Solidity 0.8.16 * V2 - better signatures (#148) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Implement EIP-5719 (#149) * V2 better signatures (#150) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Add base EIP-4337 implementation (#151) * Push Solidity to 0.8.17 * V2 simplify (#152) * Remove EIP-4337 support * Remove alternative nonce types * V2 - 3 bytes size for signatures (#153) * Add readUint24 utility function * Use uint24 for chained signature size * Use 3 bytes for dynamic signature * Use 3 bytes for signature branchs * LibString * GuestModule * MainModule * SequenceBaseSig * SequenceNoChainIdSig * thershold -> threshold * Amend SignatureValidator comments * minor v2 changes (#157) * GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index) * NotEnoughGas: add transaction index * ModuleStaticAuth: check static digests first * reuse SubModuleNonce constants * Integrate checkpoint into imagehash (#154) * Embed checkpoint in imageHash * Fix setImplementation match wallet test * Fix checkpoint order on tests * thershold -> threshold Co-authored-by: William Hua <william@attente.ca> * Minor renames (#158) * imagehash -> image hash * typehash -> type hash * sub digest -> subdigest * leaf -> node * compare directly * whitespace * developpers -> developers * joinAddrAndWeight -> leafForAddressAndWeight * ImageHashNode | ConfigLeaf -> ConfigTopology * fix unnecessary casts * iddle -> idle * Converter -> Convertor * mainmodule -> main module * fix incorrect comments * V2 nested configs (#155) * V2 - convenience Auth + IPFS (#159) * Implement nested signature part * Fix foundry test for invalid sig type * Add tests for nested wallet configs * Add tests for unique leafs * Add ipfs + imageHash convenience method * Update hardhat * deploy contracts using EIP-2470 * Delete unused contract * Use node v18 for ci * Move v1 audits to v1 folder * Add onlyDelegatecall module * Fix comments * Remove redundant static auth * Foundry test fixes * Update outdated arcadeum comments * Better Tx executed events * Deploy new version * Fix type GuestModule comment * Update to Solidity 0.8.18 * erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (#165) * Comments and formatting * Add docs for ModuleAuth * MainModuleGasEstimation: simulateExecute (#167) * V2 - Consensys audit fixes (#168) * Fix right padded hooks selector issue * Fix multicall blockNumber wrong value * Revert isValidSignature if wrong signature length * Emit events when changing hooks * Revert if factory failed to deploy wallet * Remove unused imports and fix solhint * Implement ERC165 missing modules * Remove duplicated decodeNonce code * Move gas-estimation modules to subdir * Remove outdated experimental pragma * Fix foundry test * Revert contract creation if deploy failed * Deploy new contracts on some chains * Deploy Sequence v2 contracts * fix: requireNonExpired inclusion (#170) * Hooks (#169) * Hook implements IERC223Receiver * Add IERC777Receiver * Test stability (#171) * Bump forge deps * Improve test stability * Fix foundry test edge cases * Add v2 audit reports --------- Co-authored-by: William Hua <william@attente.ca> Co-authored-by: Ignacio Mazzara <nachomazzara@gmail.com> Co-authored-by: Michael Standen <screaminghawk@gmail.com> * Update README (#175) * Update README * Remove unused pnpm lock * Update hardhat to remove github action compile error * Fix node version to prevent hardhat error during github actions * Fix coverage tests * Deployments (#176) * Update deployment files * Add singleton deployer deployment to deploy script * Update contracts to match deployment on chain * Update package.json * Bump package version --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Agustin Aguilar <Agusxrun@gmail.com> Co-authored-by: Philippe Castonguay <ph.castonguay@gmail.com> Co-authored-by: danielrea <danrea133@hotmail.com> Co-authored-by: michael <1619025+acrylix@users.noreply.github.com> Co-authored-by: Peter Kieltyka <peter.kieltyka@gmail.com> Co-authored-by: Peter Kieltyka <pkieltyka@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: William Hua <william@attente.ca> Co-authored-by: Agustin Aguilar <agusgit@pm.me> Co-authored-by: Michael Standen <screaminghawk@gmail.com> Co-authored-by: Ignacio Mazzara <nachomazzara@gmail.com> * Update ci.yml (#21) * Update ci.yml Adjust CI workflow to remove inline build steps, disable the separate coverage job, and introduce a build verification job that ensures tests pass and the committed build output is up to date. CI: Remove redundant yarn build steps from benchmark and test jobs in the CI workflow. Comment out the standalone coverage job and its Coveralls reporting in the CI pipeline. Add a build verification job that runs tests and fails if there are uncommitted changes after the build artifacts check. Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 13: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> * Delete .github/workflows/yarn_ci.yml (#22) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete .github/workflows/pnpm-ci.yaml (#23) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update ci.yml (#24) https://github.com/Dargon789/wallet-contracts/commit/38e0719690eee3c4d7d8fa2ceff4ea22b0409f38 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Create web3_defi_gamefi.yml (#27) * Create web3_defi_gamefi.yml https://github.com/Dargon789/contracts-library/commit/d8c5f1f4fd29157f1dbdc3a6dec248e70b45436b Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .circleci/web3_defi_gamefi.yml Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> * Update ci.yml (#31) https://github.com/Dargon789/forge-std/commit/f1f442608c7b6d74dc8c4a9b09ef222e7f0b9646 Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update PROD.env.sample (#28) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete PR-Sovereign UX Deployment to Master.md (#30) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update config.yml (#26) https://github.com/Dargon789/contracts-library/commit/f34ffb3d0a981ebfcb264ab821acab002157f82b Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Delete .circleci/web3_defi_gamefi.yml (#42) Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Per-transaction estimated gas usage and execution results * Bump follow-redirects from 1.14.4 to 1.14.7 (#137) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.4 to 1.14.7. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.4...v1.14.7) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump shelljs from 0.8.4 to 0.8.5 (#138) Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5. - [Release notes](https://github.com/shelljs/shelljs/releases) - [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md) - [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5) --- updated-dependencies: - dependency-name: shelljs dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump follow-redirects from 1.14.7 to 1.14.8 (#139) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.8. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.8) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump minimist from 1.2.5 to 1.2.6 (#140) Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6. - [Release notes](https://github.com/substack/minimist/releases) - [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6) --- updated-dependencies: - dependency-name: minimist dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Optimism deploy * Update hardhat/etherscan * Deploy on nove and avalanche * dep upgrades (#160) * deploy on avalanche testnet * Bump decode-uri-component from 0.2.0 to 0.2.2 (#161) Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2. - [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases) - [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2) --- updated-dependencies: - dependency-name: decode-uri-component dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump json5 from 1.0.1 to 1.0.2 (#162) * Zellic_audit_sequencev2 * Replace rinkeby and arb-rinkeby with arbitrum goerli (#172) * Sequence v2 (#145) * NonceUtils initial commit * Add SessionUtils * Add read gap nonce hook * Fix error names and add session tests * Add comments to SessionUtils * Patch lazy octopus require main modolue upgradable * Deploy session utils script * Deploy contract on networks * Commit factory build * Push Solidity version to 0.8.14 * Remove visivility of constructors * Implement native gapNonce and noNonce * Adapt tests to updated hardhat * Fix benchmark * Fix test coverage * Test special nonce types * Add tests for special nonce types * Replace string errors with type errors * Reduce gas costs using unchecked * Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable * Extend ModuleCalls for ModuleIgnoreNonceCalls * Compute subdigest during signature validation * Add alternative signature encoding schemas * Add support for signatures without chainId * Better signature dispatcher * Decode signatures without memory copy * Fix coverage tests * Update ts-node * Alternative signature dispatcher * Implement updateImageHash for ModuleAuthFixed * Fix benchmark runner * Recover signatures prefixed with lazy octops transactions * Fix lazy octopus prefixed signatures subdigest * Simplify tests * Remove unused contracts * Simplify repo and uncommit artifacts * wip chained signatures * better chained signatures * Cleanup libbytes and remove out of bounds checks * Fix github actions * Sequence merkle signatures (#146) * initial implementation recursive merkle signatures * Implement merkle signature encoding and decoding * Use merkle and legacy encoding, given size of config * Better benchmarker report * Optimize hash tree nodes * Fix new compiler warnings * Fix old compiler warnings * Optimize and simplify signature reading * Fix test to avoid generating wallets without signers * v2 - foundry changes (#147) * Remove subDigest from ModuleAuth * Remove unused LibBytes methods * Add foundry tests * Add foundry tests for utils * Add Foundry tests for SequenceBaseSig * Add SequenceDynamicSig tests * SequenceChainedSig tests and fixes * Add SubModuleNonceTest tests * Implementation and calls tests * Add more long array tests * Foundry tests * Fix implementation foundry test * ModuleCalls gas golfing * Keep transactions in calldata * Reduce runs github ci * Push to Solidity 0.8.16 * V2 - better signatures (#148) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Implement EIP-5719 (#149) * V2 better signatures (#150) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Add base EIP-4337 implementation (#151) * Push Solidity to 0.8.17 * V2 simplify (#152) * Remove EIP-4337 support * Remove alternative nonce types * V2 - 3 bytes size for signatures (#153) * Add readUint24 utility function * Use uint24 for chained signature size * Use 3 bytes for dynamic signature * Use 3 bytes for signature branchs * LibString * GuestModule * MainModule * SequenceBaseSig * SequenceNoChainIdSig * thershold -> threshold * Amend SignatureValidator comments * minor v2 changes (#157) * GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index) * NotEnoughGas: add transaction index * ModuleStaticAuth: check static digests first * reuse SubModuleNonce constants * Integrate checkpoint into imagehash (#154) * Embed checkpoint in imageHash * Fix setImplementation match wallet test * Fix checkpoint order on tests * thershold -> threshold Co-authored-by: William Hua <william@attente.ca> * Minor renames (#158) * imagehash -> image hash * typehash -> type hash * sub digest -> subdigest * leaf -> node * compare directly * whitespace * developpers -> developers * joinAddrAndWeight -> leafForAddressAndWeight * ImageHashNode | ConfigLeaf -> ConfigTopology * fix unnecessary casts * iddle -> idle * Converter -> Convertor * mainmodule -> main module * fix incorrect comments * V2 nested configs (#155) * V2 - convenience Auth + IPFS (#159) * Implement nested signature part * Fix foundry test for invalid sig type * Add tests for nested wallet configs * Add tests for unique leafs * Add ipfs + imageHash convenience method * Update hardhat * deploy contracts using EIP-2470 * Delete unused contract * Use node v18 for ci * Move v1 audits to v1 folder * Add onlyDelegatecall module * Fix comments * Remove redundant static auth * Foundry test fixes * Update outdated arcadeum comments * Better Tx executed events * Deploy new version * Fix type GuestModule comment * Update to Solidity 0.8.18 * erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (#165) * Comments and formatting * Add docs for ModuleAuth * MainModuleGasEstimation: simulateExecute (#167) * V2 - Consensys audit fixes (#168) * Fix right padded hooks selector issue * Fix multicall blockNumber wrong value * Revert isValidSignature if wrong signature length * Emit events when changing hooks * Revert if factory failed to deploy wallet * Remove unused imports and fix solhint * Implement ERC165 missing modules * Remove duplicated decodeNonce code * Move gas-estimation modules to subdir * Remove outdated experimental pragma * Fix foundry test * Revert contract creation if deploy failed * Deploy new contracts on some chains * Deploy Sequence v2 contracts * fix: requireNonExpired inclusion (#170) * Hooks (#169) * Hook implements IERC223Receiver * Add IERC777Receiver * Test stability (#171) * Bump forge deps * Improve test stability * Fix foundry test edge cases * Add v2 audit reports --------- Co-authored-by: William Hua <william@attente.ca> Co-authored-by: Ignacio Mazzara <nachomazzara@gmail.com> Co-authored-by: Michael Standen <screaminghawk@gmail.com> * Update README (#175) * Update README * Remove unused pnpm lock * Update hardhat to remove github action compile error * Fix node version to prevent hardhat error during github actions * Fix coverage tests * Deployments (#176) * Update deployment files * Add singleton deployer deployment to deploy script * Update contracts to match deployment on chain * Update package.json * Bump package version * Per-transaction estimated gas usage and execution results (#46) * Per-transaction estimated gas usage and execution results * v1.9.5 * v1.9.6 * Fix error message in MainModuleGasEstimation * Bump follow-redirects from 1.14.4 to 1.14.7 (#137) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.4 to 1.14.7. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.4...v1.14.7) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump shelljs from 0.8.4 to 0.8.5 (#138) Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5. - [Release notes](https://github.com/shelljs/shelljs/releases) - [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md) - [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5) --- updated-dependencies: - dependency-name: shelljs dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump follow-redirects from 1.14.7 to 1.14.8 (#139) Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.14.7 to 1.14.8. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](https://github.com/follow-redirects/follow-redirects/compare/v1.14.7...v1.14.8) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump minimist from 1.2.5 to 1.2.6 (#140) Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6. - [Release notes](https://github.com/substack/minimist/releases) - [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6) --- updated-dependencies: - dependency-name: minimist dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Optimism deploy * Update hardhat/etherscan * Deploy on nove and avalanche * dep upgrades (#160) * deploy on avalanche testnet * Bump decode-uri-component from 0.2.0 to 0.2.2 (#161) Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2. - [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases) - [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2) --- updated-dependencies: - dependency-name: decode-uri-component dependency-type: indirect ... Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump json5 from 1.0.1 to 1.0.2 (#162) * Zellic_audit_sequencev2 * Replace rinkeby and arb-rinkeby with arbitrum goerli (#172) * Sequence v2 (#145) * NonceUtils initial commit * Add SessionUtils * Add read gap nonce hook * Fix error names and add session tests * Add comments to SessionUtils * Patch lazy octopus require main modolue upgradable * Deploy session utils script * Deploy contract on networks * Commit factory build * Push Solidity version to 0.8.14 * Remove visivility of constructors * Implement native gapNonce and noNonce * Adapt tests to updated hardhat * Fix benchmark * Fix test coverage * Test special nonce types * Add tests for special nonce types * Replace string errors with type errors * Reduce gas costs using unchecked * Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable * Extend ModuleCalls for ModuleIgnoreNonceCalls * Compute subdigest during signature validation * Add alternative signature encoding schemas * Add support for signatures without chainId * Better signature dispatcher * Decode signatures without memory copy * Fix coverage tests * Update ts-node * Alternative signature dispatcher * Implement updateImageHash for ModuleAuthFixed * Fix benchmark runner * Recover signatures prefixed with lazy octops transactions * Fix lazy octopus prefixed signatures subdigest * Simplify tests * Remove unused contracts * Simplify repo and uncommit artifacts * wip chained signatures * better chained signatures * Cleanup libbytes and remove out of bounds checks * Fix github actions * Sequence merkle signatures (#146) * initial implementation recursive merkle signatures * Implement merkle signature encoding and decoding * Use merkle and legacy encoding, given size of config * Better benchmarker report * Optimize hash tree nodes * Fix new compiler warnings * Fix old compiler warnings * Optimize and simplify signature reading * Fix test to avoid generating wallets without signers * v2 - foundry changes (#147) * Remove subDigest from ModuleAuth * Remove unused LibBytes methods * Add foundry tests * Add foundry tests for utils * Add Foundry tests for SequenceBaseSig * Add SequenceDynamicSig tests * SequenceChainedSig tests and fixes * Add SubModuleNonceTest tests * Implementation and calls tests * Add more long array tests * Foundry tests * Fix implementation foundry test * ModuleCalls gas golfing * Keep transactions in calldata * Reduce runs github ci * Push to Solidity 0.8.16 * V2 - better signatures (#148) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Implement EIP-5719 (#149) * V2 better signatures (#150) * Add ModuleExtraAuth * Foundry tests for module extra auth * Add ModuleStaticAuth module * Add ModuleStaticAuth foundry tests * Simplify ModuleExtraAuth * Add ModuleStaticMerkleAuth module * Bound chainId and heavy tests * Bound big foundry test * Move static subdigest signing to imageHash * Add base EIP-4337 implementation (#151) * Push Solidity to 0.8.17 * V2 simplify (#152) * Remove EIP-4337 support * Remove alternative nonce types * V2 - 3 bytes size for signatures (#153) * Add readUint24 utility function * Use uint24 for chained signature size * Use 3 bytes for dynamic signature * Use 3 bytes for signature branchs * LibString * GuestModule * MainModule * SequenceBaseSig * SequenceNoChainIdSig * thershold -> threshold * Amend SignatureValidator comments * minor v2 changes (#157) * GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index) * NotEnoughGas: add transaction index * ModuleStaticAuth: check static digests first * reuse SubModuleNonce constants * Integrate checkpoint into imagehash (#154) * Embed checkpoint in imageHash * Fix setImplementation match wallet test * Fix checkpoint order on tests * thershold -> threshold Co-authored-by: William Hua <william@attente.ca> * Minor renames (#158) * imagehash -> image hash * typehash -> type hash * sub digest -> subdigest * leaf -> node * compare directly * whitespace * developpers -> developers * joinAddrAndWeight -> leafForAddressAndWeight * ImageHashNode | ConfigLeaf -> ConfigTopology * fix unnecessary casts * iddle -> idle * Converter -> Convertor * mainmodule -> main module * fix incorrect comments * V2 nested configs (#155) * V2 - convenience Auth + IPFS (#159) * Implement nested signature part * Fix foundry test for invalid sig type * Add tests for nested wallet configs * Add tests for unique leafs * Add ipfs + imageHash convenience method * Update hardhat * deploy contracts using EIP-2470 * Delete unused contract * Use node v18 for ci * Move v1 audits to v1 folder * Add onlyDelegatecall module * Fix comments * Remove redundant static auth * Foundry test fixes * Update outdated arcadeum comments * Better Tx executed events * Deploy new version * Fix type GuestModule comment * Update to Solidity 0.8.18 * erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (#165) * Comments and formatting * Add docs for ModuleAuth * MainModuleGasEstimation: simulateExecute (#167) * V2 - Consensys audit fixes (#168) * Fix right padded hooks selector issue * Fix multicall blockNumber wrong value * Revert isValidSignature if wrong signature length * Emit events when changing hooks * Revert if factory failed to deploy wallet * Remove unused imports and fix solhint * Implement ERC165 missing modules * Remove duplicated decodeNonce code * Move gas-estimation modules to subdir * Remove outdated experimental pragma * Fix foundry test * Revert contract creation if deploy failed * Deploy new contracts on some chains * Deploy Sequence v2 contracts * fix: requireNonExpired inclusion (#170) * Hooks (#169) * Hook implements IERC223Receiver * Add IERC777Receiver * Test stability (#171) * Bump forge deps * Improve test stability * Fix foundry test edge cases * Add v2 audit reports --------- Co-authored-by: William Hua <william@attente.ca> Co-authored-by: Ignacio Mazzara <nachomazzara@gmail.com> Co-authored-by: Michael Standen <screaminghawk@gmail.com> * Update README (#175) * Update README * Remove unused pnpm lock * Update hardhat to remove github action compile error * Fix node version to prevent hardhat error during github actions * Fix coverage tests * Deployments (#176) * Update deployment files * Add singleton deployer deployment to deploy script * Update contracts to match deployment on chain * Update package.json * Bump package version --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: William Hua <william@attente.ca> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Agustin Aguilar <agusgit@pm.me> Co-authored-by: Peter Kieltyka <pkieltyka@users.noreply.github.com> Co-authored-by: Philippe Castonguay <ph.castonguay@gmail.com> Co-authored-by: Michael Standen <screaminghawk@gmail.com> Co-authored-by: Ignacio Mazzara <nachomazzara@gmail.com> * Update ci.yml (#54) * Update ci.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update ci.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update ci.yml Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> --------- Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update utils/deploy-contracts.ts Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Potential fix for code scanning alert no. 17: Workflow does not contain permissions Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update .solhint.json Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update utils/deploy-contracts.ts Co-authored-by: sourcery-ai[bot] <58596630+sourcery-ai[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Update README.md Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com> Signed-off-by: Dargon789 <64915515+Dargon789@users.noreply.github.com> * Main (#150) * fix: repack ci tests, lint, CI/CD ai help verified signature (#20) (#33) * Fix test wallet generation * Rename image hash storage slot * Update typings * Fix error more than 12 owners * Test wallet with 255 signers * Add gaslimit to transactions * Test transactions gasLimit * Onion hash for signers image * Fix bench test * Remove MainModuleDeployer * Add create contracts feature * Add prepare script for compiling contracts * Add files to npm package * Update MainModule.sol * Add Github actions * Push Solidity compiler to 0.6.6 * Replace nonce window by nonce spaces * Use module storage to store hooks * Use abi.encode and hardcode NONCE_KEY * Hardcode hooks key * Hardcode image hash key * Removed unused constant * Define more explicit new nonce * Build typings * Created ModuleStorage library * Rename ModuleBase -> ModuleSelfAuth * Solidity 0.6.7 * Update module typings * Add readHook external method * Implement ERC165 and supportsInterface on modules * Add network id to message digest * Implement ModuleStorage mappings * Test used storage slots * Fix read storage tests * Add ModuleHooks implements ERC223 * Test implements all interfaceIds * Remove function selectors from ERC165 * Add TxExecuted, and txHash to TxFailed * Test emit TxExecuted event * Add big batches benchmark * Add failing transactions benchmark * Add benchmark yarn job * Add benchmark job to Github actions * Fix rejected transaction test * Remove index and topics from tx events * Manually test interface ids * Implement self execute transactions * Push Solidity to 0.6.8 * Build typings * Remove addressOf from factory * Test self-execute transaction bundles * Use flag to determine if reading address or signature * Test revert invalid flag on signature * Use OpenZeppelin ECDSA recover to avoid ECDSA malleability * Inline ECDSA malleability checks for gas savings * Fix error message prefix separator * Use constants for signature type and remove unused struct * Enable buidler optimizer * Use buidler for build scripts * Add contract typings to gitignore, remove cleanup before build * Allow ModuleCalls methods to be overridden * Create AnonymousModule * Test AnonymousModule * Add ExpirableUtil for expirable bundles * Fix output files dir package.json * cross platform fix (#60) * Rename AnonymousModule -> GuestModule * Remove yarn-error and add to gitignore * Add coverage yarn script * Add coverage to Github actions * Fix notice comment on GuestModule * Test send empty signature to MainModuleUpgradable implementation * Make imageHash == 0 invalid * Move imageHash check to isValidImage * Fix pragma of core contracts * Remove unuse abicoder v2 on some contracts * Fix invalid signature revert messages prefixes * Enforce transaction gasLimit * Decrease gasLimits on test transactions * Test not enough gas * Ignore zero gasLimit * Remove pop byte util * Ignore gasLimit 0 on GuestModule * Check gasLeft on GuestModule * Typos * Fixes #72 * Fixes #70 * Fixes #76 * Fixes #71 * Fixes #78 * Comments for inheritance * Add comment for relayers * Remove pop value comment * Implement requireMinNonce * Fix revert string prefix * Add events for wallet upgrade * Remove first event field * Add requireConfig to utils * Validate counterfactual configuration * Increase expiration delta test * Fix typo * Deploy script via universal …
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Add wallet creation docs
Warp words signers image example
Fix typo
NonceUtils initial commit
Deploy on binance
Update etherscan verify
Add SessionUtils
Add read gap nonce hook
Fix error names and add session tests
Add comments to SessionUtils
Patch lazy octopus require main modolue upgradable
Deploy session utils script
Deploy contract on networks
Commit factory build
Push Solidity version to 0.8.14
Remove visivility of constructors
Implement native gapNonce and noNonce
Adapt tests to updated hardhat
Fix benchmark
Fix test coverage
Test special nonce types
Add tests for special nonce types
Replace string errors with type errors
Reduce gas costs using unchecked
Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable
Extend ModuleCalls for ModuleIgnoreNonceCalls
Compute subdigest during signature validation
Add alternative signature encoding schemas
Add support for signatures without chainId
Better signature dispatcher
Decode signatures without memory copy
Fix coverage tests
Update ts-node
Alternative signature dispatcher
Implement updateImageHash for ModuleAuthFixed
Fix benchmark runner
Recover signatures prefixed with lazy octops transactions
Fix lazy octopus prefixed signatures subdigest
Simplify tests
Remove unused contracts
Simplify repo and uncommit artifacts
wip chained signatures
better chained signatures
Cleanup libbytes and remove out of bounds checks
implement merkle tree encoding signatures
Fix github actions
Sequence merkle signatures (Sequence merkle signatures 0xsequence/wallet-contracts#146)
initial implementation recursive merkle signatures
Implement merkle signature encoding and decoding
Use merkle and legacy encoding, given size of config
Better benchmarker report
Optimize hash tree nodes
Fix new compiler warnings
Fix old compiler warnings
Optimize and simplify signature reading
Fix test to avoid generating wallets without signers
v2 - foundry changes (v2 - foundry changes 0xsequence/wallet-contracts#147)
Remove subDigest from ModuleAuth
Remove unused LibBytes methods
Add foundry tests
Add foundry tests for utils
Add Foundry tests for SequenceBaseSig
Add SequenceDynamicSig tests
SequenceChainedSig tests and fixes
Add SubModuleNonceTest tests
Implementation and calls tests
Add more long array tests
Foundry tests
Fix implementation foundry test
ModuleCalls gas golfing
Keep transactions in calldata
Reduce runs github ci
Push to Solidity 0.8.16
V2 - better signatures (V2 - better signatures 0xsequence/wallet-contracts#148)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Add autoUpdate modules
Implement EIP-5719 (Implement EIP-5719 0xsequence/wallet-contracts#149)
V2 better signatures (V2 better signatures 0xsequence/wallet-contracts#150)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Add base EIP-4337 implementation (Add base EIP-4337 implementation 0xsequence/wallet-contracts#151)
Push Solidity to 0.8.17
V2 simplify (V2 simplify 0xsequence/wallet-contracts#152)
Remove EIP-4337 support
Remove alternative nonce types
V2 - 3 bytes size for signatures (V2 - 3 bytes size for signatures 0xsequence/wallet-contracts#153)
Add readUint24 utility function
Use uint24 for chained signature size
Use 3 bytes for dynamic signature
Use 3 bytes for signature branchs
LibString
GuestModule
MainModule
SequenceBaseSig
SequenceNoChainIdSig
thershold -> threshold
Amend SignatureValidator comments
Add full config tree test
minor v2 changes (minor v2 changes 0xsequence/wallet-contracts#157)
GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index)
NotEnoughGas: add transaction index
ModuleStaticAuth: check static digests first
reuse SubModuleNonce constants
Integrate checkpoint into imagehash (Integrate checkpoint into imagehash 0xsequence/wallet-contracts#154)
Embed checkpoint in imageHash
Fix setImplementation match wallet test
Fix checkpoint order on tests
thershold -> threshold
Minor renames (Minor renames 0xsequence/wallet-contracts#158)
imagehash -> image hash
typehash -> type hash
Implement nested signature part
Fix foundry test for invalid sig type
Add tests for nested wallet configs
Add tests for unique leafs
Add ipfs + imageHash convenience method
deploy contracts using EIP-2470
sub digest -> subdigest
leaf -> node
compare directly
whitespace
developpers -> developers
joinAddrAndWeight -> leafForAddressAndWeight
ImageHashNode | ConfigLeaf -> ConfigTopology
fix unnecessary casts
iddle -> idle
Converter -> Convertor
mainmodule -> main module
fix incorrect comments
V2 nested configs (V2 nested configs 0xsequence/wallet-contracts#155)
Update and fix verify
V2 - convenience Auth + IPFS (V2 - convenience Auth + IPFS 0xsequence/wallet-contracts#159)
Implement nested signature part
Fix foundry test for invalid sig type
Add tests for nested wallet configs
Add tests for unique leafs
Add ipfs + imageHash convenience method
Update hardhat
deploy contracts using EIP-2470
Delete unused contract
Use node v18 for ci
Move v1 audits to v1 folder
Add onlyDelegatecall module
Fix comments
Remove redundant static auth
Foundry test fixes
Update outdated arcadeum comments
Better Tx executed events
Deploy new version
Fix type GuestModule comment
Update to Solidity 0.8.18
erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth 0xsequence/wallet-contracts#165)
Comments and formatting
Add docs for ModuleAuth
Bump undici from 5.12.0 to 5.19.1
Bumps undici from 5.12.0 to 5.19.1.
updated-dependencies:
MainModuleGasEstimation: simulateExecute (MainModuleGasEstimation: simulateExecute 0xsequence/wallet-contracts#167)
V2 - Consensys audit fixes (V2 - Consensys audit fixes 0xsequence/wallet-contracts#168)
Fix right padded hooks selector issue
Fix multicall blockNumber wrong value
Revert isValidSignature if wrong signature length
Emit events when changing hooks
Revert if factory failed to deploy wallet
Remove unused imports and fix solhint
Implement ERC165 missing modules
Remove duplicated decodeNonce code
Move gas-estimation modules to subdir
Remove outdated experimental pragma
Fix foundry test
Revert contract creation if deploy failed
Deploy new contracts on some chains
Deploy Sequence v2 contracts
fix: requireNonExpired inclusion (Fix: require utils expiration inclusion 0xsequence/wallet-contracts#170)
Hooks (Hooks 0xsequence/wallet-contracts#169)
Hook implements IERC223Receiver
Add IERC777Receiver
Test stability (Test stability 0xsequence/wallet-contracts#171)
Bump forge deps
Improve test stability
Replace rinkeby and arb-rinkeby with arbitrum goerli
Add Oasys homeverse testnet
Deploy to Oasys Homeverse Testnet
Add EIP-6492 validator implementation
Add static bytecode deploy script
EIP-4337 hook first pass
Nicer errors
Correct error handling
Ignore nonce validation. Assumed correct by entrypoint
Use call data directly
fix: package.json & yarn.lock to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
The following vulnerabilities are fixed with an upgrade:
The following vulnerabilities are fixed with an upgrade:
The following vulnerabilities are fixed with an upgrade:
Update ci.yml ([Snyk] Security upgrade ethers from 5.7.2 to 6.0.0 #1)
Create nodejs.yml ([Snyk] Security upgrade ethers from 5.7.2 to 6.0.0 #2)
Create nodejs.yml
Update .github/workflows/nodejs.yml
Add .circleci/config.yml
Update .circleci/config.yml
Add .circleci/config.yml ([Snyk] Security upgrade ethers from 5.7.2 to 6.0.0 #3)
Add .circleci/config.yml
Update .circleci/config.yml
CI:
Update Foundry test steps in the CI workflow to run forge test --rerun without extra verbose logging flags.
Create ci-web3-gamefi.yml (Update ci.yml (#1) #5)
Create pnpm-ci.yaml (fix: repack ci tests, lint, CI/CD ai help verified signature (#20) #7)
Create pnpm-ci.yaml
Update .github/workflows/pnpm-ci.yaml
Create npm.yml (Circleci project setup #6)
Create npm.yml
Potential fix for code scanning alert no. 12: Artifact poisoning
Build:
Introduce a Yarn-based GitHub Actions CI workflow that installs dependencies, lints Solidity code, and runs Foundry tests on push events.
Delete .github/workflows/nodejs.yml (Wallet contracts #11)
Update PROD.env.sample (Dargon789 patch 2 #12)
Update yarn.lock (0x #13)
Update yarn_ci.yml (Main #10)
Create PR-Sovereign UX Deployment to Master.md (Ai verified smartcontracts #14)
Create PR-Sovereign UX Deployment to Master.md Add project documentation file describing the Sovereign contracts library and its deployment workflow.
Documentation:
Document library features, supported ERC standards, and architectural components. Add instructions for installation, testing, gas comparison, and deployment using pnpm. Describe dependencies, audit information, and licensing for the contracts library.
Create PR-Sovereign.md (octopus-utils-2 #16)
Create PR-Sovereign.md Documentation:
Document the Sovereign contracts library features, deployment steps, testing workflow, dependencies, audits, and licensing in a new PR-Sovereign.md file.
Delete .circleci/ci-web3-gamefi.yml (Replace with arbitrum goerli #17)
fix: package.json to reduce vulnerabilities (Snyk fix ae7b5eea7eecc48b26ae20e3d47c38ab #18)
The following vulnerabilities are fixed with an upgrade:
CI:
Introduce a basic CircleCI workflow and job definition using a Docker executor to validate the pipeline setup.
fix: repack ci tests, lint, CI/CD ai help verified signature (Update README (0xsequence#175) (#136) #20)
Fix test wallet generation
Rename image hash storage slot
Update typings
Fix error more than 12 owners
Test wallet with 255 signers
Add gaslimit to transactions
Test transactions gasLimit
Onion hash for signers image
Fix bench test
Remove MainModuleDeployer
Add create contracts feature
Add prepare script for compiling contracts
Add files to npm package
Update MainModule.sol
Add Github actions
Push Solidity compiler to 0.6.6
Replace nonce window by nonce spaces
Use module storage to store hooks
Use abi.encode and hardcode NONCE_KEY
Hardcode hooks key
Hardcode image hash key
Removed unused constant
Define more explicit new nonce
Build typings
Created ModuleStorage library
Rename ModuleBase -> ModuleSelfAuth
Solidity 0.6.7
Update module typings
Add readHook external method
Implement ERC165 and supportsInterface on modules
Add network id to message digest
Implement ModuleStorage mappings
Test used storage slots
Fix read storage tests
Add ModuleHooks implements ERC223
Test implements all interfaceIds
Remove function selectors from ERC165
Add TxExecuted, and txHash to TxFailed
Test emit TxExecuted event
Add big batches benchmark
Add failing transactions benchmark
Add benchmark yarn job
Add benchmark job to Github actions
Fix rejected transaction test
Remove index and topics from tx events
Manually test interface ids
Implement self execute transactions
Push Solidity to 0.6.8
Build typings
Remove addressOf from factory
Test self-execute transaction bundles
Use flag to determine if reading address or signature
Test revert invalid flag on signature
Use OpenZeppelin ECDSA recover to avoid ECDSA malleability
Inline ECDSA malleability checks for gas savings
Fix error message prefix separator
Use constants for signature type and remove unused struct
Enable buidler optimizer
Use buidler for build scripts
Add contract typings to gitignore, remove cleanup before build
Allow ModuleCalls methods to be overridden
Create AnonymousModule
Test AnonymousModule
Add ExpirableUtil for expirable bundles
Fix output files dir package.json
cross platform fix (Cross Platform Fix 0xsequence/wallet-contracts#60)
Rename AnonymousModule -> GuestModule
Remove yarn-error and add to gitignore
Add coverage yarn script
Add coverage to Github actions
Fix notice comment on GuestModule
Test send empty signature to MainModuleUpgradable implementation
Make imageHash == 0 invalid
Move imageHash check to isValidImage
Fix pragma of core contracts
Remove unuse abicoder v2 on some contracts
Fix invalid signature revert messages prefixes
Enforce transaction gasLimit
Decrease gasLimits on test transactions
Test not enough gas
Ignore zero gasLimit
Remove pop byte util
Ignore gasLimit 0 on GuestModule
Check gasLeft on GuestModule
Typos
Fixes QSP-11 Shadowed Hooks 0xsequence/wallet-contracts#72
Fixes QSP-9 Sensitivity of Upgrades 0xsequence/wallet-contracts#70
Fixes QSP-15 Limited isContract() Check 0xsequence/wallet-contracts#76
Fixes QSP-10 Owner Signature Gas Limit Problems 0xsequence/wallet-contracts#71
Fixes QSP-17 Multiple Inheritance 0xsequence/wallet-contracts#78
Comments for inheritance
Add comment for relayers
Remove pop value comment
Implement requireMinNonce
Fix revert string prefix
Add events for wallet upgrade
Remove first event field
Add requireConfig to utils
Validate counterfactual configuration
Increase expiration delta test
Fix typo
Deploy script via universal deployer
Add requireUtils to deployed contracts
Fix tests path
Handle no config file
Add typings gen for ethers-v5
Add Goerli network info
Matic support
Add audits
Bumb to solc 0.7.4
Update package name
Update deployed contracts addresses
Add devcontainer to gitignore
Fix buidler coverage
Fix coverage timeout
MultiCallUtils initial commit
Skip slow tests on coverage
Ignore error on coverage run github actions
Fixes and tests for multiCall
Enable pre-test and add quicktest without pre-test
Make multicall payable
Add return chain id
Deploy SequenceUtils instead of RequireUtils
hardhat + ethers v5 (hardhat + ethers v5 0xsequence/wallet-contracts#103)
LICENSE, and yarn.lock
package.json, include LICENSE and contracts to dist files
package.json scripts update
github actions, update workflow filename
gh workflow
move src folders to root level
linting, formatting and vendoring
ci
Add publishConfig and publishSigners (Add publishConfig and publishSigners 0xsequence/wallet-contracts#109)
Add contract storage indexed requireConfig util
Simplify require utils index
Add publishSigners, rename requireConfig to publishConfig
Disable publishSigners for updated wallets
Sign sub-digest for initial signers
Add comments to RequireUtils
Sign sub-digest for ERC1271 hashes (Sign sub-digest for ERC1271 hashes 0xsequence/wallet-contracts#106)
Support for nested signatures - ERC1271 (Support for nested signatures - ERC1271 0xsequence/wallet-contracts#105)
Add support for dynamic size signatures
Support ERC1271 for nested wallets
Use bytes32 for ERC1271
Add test nested ERC1271 signature
Remove unused variables from readBytes
Rename sig type wallet bytes constant
Update build and types for require utils
Add verify etherscan scripts (Add verify etherscan scripts 0xsequence/wallet-contracts#110)
Deploy contracts on testnets and matic
Change optimizer runs to more compatible value
Deploy contracts to testnets and Matic
Mainnet deploy
Add quantstamp audit
v1.2.0
update deps
v1.3.0
Update RequireUtils to support ERC1271 signatures (Update RequireUtils to support EIP1271 signatures 0xsequence/wallet-contracts#111)
Out of bounds checks (Out of bounds checks 0xsequence/wallet-contracts#112)
Require EOA signatures to be 66 bytes
Re-build contracts and typings
Add overflow assert on libBytes
v1.4.0
Add lastImageHashUpdate index (Add lastImageHashUpdate index to RequireUtils 0xsequence/wallet-contracts#113)
Dist @0xsequence/wallet-contracts without any dependencies (Create @0xsequence/wallet-contracts without any dependencies 0xsequence/wallet-contracts#114)
v1.6.0, include js adapter for easy interfacing with contracts
Tenderly and contract deployments (Tenderly and contract deployments 0xsequence/wallet-contracts#115)
Add tenderly verification to deploy script
Fix export networks
v1.7.0 (v1.7.0 0xsequence/wallet-contracts#116)
Add tenderly verification to deploy script
Fix export networks
Deployments and arbitrum
Pump version
Add known image hashes (Add known image hashes 0xsequence/wallet-contracts#117)
Add knownImageHashes index
Build knownImageHashes
Only register knownImageHash for counterFactual wallets
Deploy new sequence utils
Push version to v1.8.0
Revision version bump
Deploy arbitrum testnet 4
comment updates
Undo comments (Undo comments 0xsequence/wallet-contracts#120)
Undo arbitrum to sequence comment changes
Add job to see if there are pending builds from being commited
Add arbitrum mainnet and new testnet (Add arbitrum mainnet and new testnet 0xsequence/wallet-contracts#121)
Gas estimation module (Gas estimation module 0xsequence/wallet-contracts#124)
Add MainModuleGasEstimation and GasEstimator contracts
Add gas estimation tests
Bump handlebars from 4.7.6 to 4.7.7 (Bump handlebars from 4.7.6 to 4.7.7 0xsequence/wallet-contracts#118)
Bumps handlebars from 4.7.6 to 4.7.7.
Bumps hosted-git-info from 2.8.8 to 2.8.9.
Bumps normalize-url from 4.5.0 to 4.5.1.
updated-dependencies:
Bumps glob-parent from 5.1.1 to 5.1.2.
updated-dependencies:
Push version 1.9.0
Bump lodash from 4.17.20 to 4.17.21 (Bump lodash from 4.17.20 to 4.17.21 0xsequence/wallet-contracts#125)
Bumps lodash from 4.17.20 to 4.17.21.
updated-dependencies:
v1.9.1
Ignore nonce for ModuleGasEstimation (Ignore nonce for ModuleGasEstimation 0xsequence/wallet-contracts#126)
v1.9.3
v1.9.4
Update etherscan lib and add chainId info to hardhat
Fresh signer lib (Fresh signer lib 0xsequence/wallet-contracts#130)
Add RequireFreshSigner lib
Add tests and change error code
Deploy to networks
Fix rare failed test
Bump tar from 4.4.13 to 4.4.19 (Bump tar from 4.4.13 to 4.4.19 0xsequence/wallet-contracts#131)
Bumps tar from 4.4.13 to 4.4.19.
updated-dependencies:
Bumps path-parse from 1.0.6 to 1.0.7.
updated-dependencies:
Bumps axios from 0.21.1 to 0.21.4.
updated-dependencies:
Bumps nth-check from 2.0.0 to 2.0.1.
updated-dependencies:
README
Per-transaction estimated gas usage and execution results
v1.9.5
v1.9.6
Fix error message in MainModuleGasEstimation
Bump follow-redirects from 1.14.4 to 1.14.7 (Bump follow-redirects from 1.14.4 to 1.14.7 0xsequence/wallet-contracts#137)
Bumps follow-redirects from 1.14.4 to 1.14.7.
updated-dependencies:
Bumps shelljs from 0.8.4 to 0.8.5.
updated-dependencies:
Bumps follow-redirects from 1.14.7 to 1.14.8.
updated-dependencies:
Bumps minimist from 1.2.5 to 1.2.6.
updated-dependencies:
Optimism deploy
Update hardhat/etherscan
Deploy on nove and avalanche
dep upgrades (dep upgrades 0xsequence/wallet-contracts#160)
deploy on avalanche testnet
Bump decode-uri-component from 0.2.0 to 0.2.2 (Bump decode-uri-component from 0.2.0 to 0.2.2 0xsequence/wallet-contracts#161)
Bumps decode-uri-component from 0.2.0 to 0.2.2.
updated-dependencies:
Bump json5 from 1.0.1 to 1.0.2 (Bump json5 from 1.0.1 to 1.0.2 0xsequence/wallet-contracts#162)
Zellic_audit_sequencev2
Replace rinkeby and arb-rinkeby with arbitrum goerli (Replace rinkeby and arb-rinkeby with arbitrum goerli 0xsequence/wallet-contracts#172)
Sequence v2 (Sequence v2 0xsequence/wallet-contracts#145)
NonceUtils initial commit
Add SessionUtils
Add read gap nonce hook
Fix error names and add session tests
Add comments to SessionUtils
Patch lazy octopus require main modolue upgradable
Deploy session utils script
Deploy contract on networks
Commit factory build
Push Solidity version to 0.8.14
Remove visivility of constructors
Implement native gapNonce and noNonce
Adapt tests to updated hardhat
Fix benchmark
Fix test coverage
Test special nonce types
Add tests for special nonce types
Replace string errors with type errors
Reduce gas costs using unchecked
Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable
Extend ModuleCalls for ModuleIgnoreNonceCalls
Compute subdigest during signature validation
Add alternative signature encoding schemas
Add support for signatures without chainId
Better signature dispatcher
Decode signatures without memory copy
Fix coverage tests
Update ts-node
Alternative signature dispatcher
Implement updateImageHash for ModuleAuthFixed
Fix benchmark runner
Recover signatures prefixed with lazy octops transactions
Fix lazy octopus prefixed signatures subdigest
Simplify tests
Remove unused contracts
Simplify repo and uncommit artifacts
wip chained signatures
better chained signatures
Cleanup libbytes and remove out of bounds checks
Fix github actions
Sequence merkle signatures (Sequence merkle signatures 0xsequence/wallet-contracts#146)
initial implementation recursive merkle signatures
Implement merkle signature encoding and decoding
Use merkle and legacy encoding, given size of config
Better benchmarker report
Optimize hash tree nodes
Fix new compiler warnings
Fix old compiler warnings
Optimize and simplify signature reading
Fix test to avoid generating wallets without signers
v2 - foundry changes (v2 - foundry changes 0xsequence/wallet-contracts#147)
Remove subDigest from ModuleAuth
Remove unused LibBytes methods
Add foundry tests
Add foundry tests for utils
Add Foundry tests for SequenceBaseSig
Add SequenceDynamicSig tests
SequenceChainedSig tests and fixes
Add SubModuleNonceTest tests
Implementation and calls tests
Add more long array tests
Foundry tests
Fix implementation foundry test
ModuleCalls gas golfing
Keep transactions in calldata
Reduce runs github ci
Push to Solidity 0.8.16
V2 - better signatures (V2 - better signatures 0xsequence/wallet-contracts#148)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Implement EIP-5719 (Implement EIP-5719 0xsequence/wallet-contracts#149)
V2 better signatures (V2 better signatures 0xsequence/wallet-contracts#150)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Add base EIP-4337 implementation (Add base EIP-4337 implementation 0xsequence/wallet-contracts#151)
Push Solidity to 0.8.17
V2 simplify (V2 simplify 0xsequence/wallet-contracts#152)
Remove EIP-4337 support
Remove alternative nonce types
V2 - 3 bytes size for signatures (V2 - 3 bytes size for signatures 0xsequence/wallet-contracts#153)
Add readUint24 utility function
Use uint24 for chained signature size
Use 3 bytes for dynamic signature
Use 3 bytes for signature branchs
LibString
GuestModule
MainModule
SequenceBaseSig
SequenceNoChainIdSig
thershold -> threshold
Amend SignatureValidator comments
minor v2 changes (minor v2 changes 0xsequence/wallet-contracts#157)
GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index)
NotEnoughGas: add transaction index
ModuleStaticAuth: check static digests first
reuse SubModuleNonce constants
Integrate checkpoint into imagehash (Integrate checkpoint into imagehash 0xsequence/wallet-contracts#154)
Embed checkpoint in imageHash
Fix setImplementation match wallet test
Fix checkpoint order on tests
thershold -> threshold
Minor renames (Minor renames 0xsequence/wallet-contracts#158)
imagehash -> image hash
typehash -> type hash
sub digest -> subdigest
leaf -> node
compare directly
whitespace
developpers -> developers
joinAddrAndWeight -> leafForAddressAndWeight
ImageHashNode | ConfigLeaf -> ConfigTopology
fix unnecessary casts
iddle -> idle
Converter -> Convertor
mainmodule -> main module
fix incorrect comments
V2 nested configs (V2 nested configs 0xsequence/wallet-contracts#155)
V2 - convenience Auth + IPFS (V2 - convenience Auth + IPFS 0xsequence/wallet-contracts#159)
Implement nested signature part
Fix foundry test for invalid sig type
Add tests for nested wallet configs
Add tests for unique leafs
Add ipfs + imageHash convenience method
Update hardhat
deploy contracts using EIP-2470
Delete unused contract
Use node v18 for ci
Move v1 audits to v1 folder
Add onlyDelegatecall module
Fix comments
Remove redundant static auth
Foundry test fixes
Update outdated arcadeum comments
Better Tx executed events
Deploy new version
Fix type GuestModule comment
Update to Solidity 0.8.18
erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth 0xsequence/wallet-contracts#165)
Comments and formatting
Add docs for ModuleAuth
MainModuleGasEstimation: simulateExecute (MainModuleGasEstimation: simulateExecute 0xsequence/wallet-contracts#167)
V2 - Consensys audit fixes (V2 - Consensys audit fixes 0xsequence/wallet-contracts#168)
Fix right padded hooks selector issue
Fix multicall blockNumber wrong value
Revert isValidSignature if wrong signature length
Emit events when changing hooks
Revert if factory failed to deploy wallet
Remove unused imports and fix solhint
Implement ERC165 missing modules
Remove duplicated decodeNonce code
Move gas-estimation modules to subdir
Remove outdated experimental pragma
Fix foundry test
Revert contract creation if deploy failed
Deploy new contracts on some chains
Deploy Sequence v2 contracts
fix: requireNonExpired inclusion (Fix: require utils expiration inclusion 0xsequence/wallet-contracts#170)
Hooks (Hooks 0xsequence/wallet-contracts#169)
Hook implements IERC223Receiver
Add IERC777Receiver
Test stability (Test stability 0xsequence/wallet-contracts#171)
Bump forge deps
Improve test stability
Fix foundry test edge cases
Add v2 audit reports
Update README (Update README 0xsequence/wallet-contracts#175)
Update README
Remove unused pnpm lock
Update hardhat to remove github action compile error
Fix node version to prevent hardhat error during github actions
Fix coverage tests
Deployments (Deployments 0xsequence/wallet-contracts#176)
Update deployment files
Add singleton deployer deployment to deploy script
Update contracts to match deployment on chain
Update package.json
Bump package version
Update ci.yml (Add auto update modules #21)
Update ci.yml Adjust CI workflow to remove inline build steps, disable the separate coverage job, and introduce a build verification job that ensures tests pass and the committed build output is up to date.
CI:
Remove redundant yarn build steps from benchmark and test jobs in the CI workflow. Comment out the standalone coverage job and its Coveralls reporting in the CI pipeline. Add a build verification job that runs tests and fails if there are uncommitted changes after the build artifacts check.
Delete .github/workflows/yarn_ci.yml (0xsequence v2 #22)
Delete .github/workflows/pnpm-ci.yaml (Main #23)
Update ci.yml (Master initial commit #24)
Dargon789@38e0719
Update config.yml
Create web3_defi_gamefi.yml (1.8.1 #27)
Create web3_defi_gamefi.yml
Dargon789/contracts-library@d8c5f1f
Dargon789/forge-std@f1f4426
Update PROD.env.sample (Main 0x #28)
Delete PR-Sovereign UX Deployment to Master.md (Wagmi 0x #30)
Update config.yml (Revert 161 main #26)
Dargon789/contracts-library@f34ffb3
Delete .circleci/web3_defi_gamefi.yml (Solidity 0.6.7 0xsequence/wallet-contracts#42)
Per-transaction estimated gas usage and execution results
Bump follow-redirects from 1.14.4 to 1.14.7 (Bump follow-redirects from 1.14.4 to 1.14.7 0xsequence/wallet-contracts#137)
Bumps follow-redirects from 1.14.4 to 1.14.7.
updated-dependencies:
Bumps shelljs from 0.8.4 to 0.8.5.
updated-dependencies:
Bumps follow-redirects from 1.14.7 to 1.14.8.
updated-dependencies:
Bumps minimist from 1.2.5 to 1.2.6.
updated-dependencies:
Optimism deploy
Update hardhat/etherscan
Deploy on nove and avalanche
dep upgrades (dep upgrades 0xsequence/wallet-contracts#160)
deploy on avalanche testnet
Bump decode-uri-component from 0.2.0 to 0.2.2 (Bump decode-uri-component from 0.2.0 to 0.2.2 0xsequence/wallet-contracts#161)
Bumps decode-uri-component from 0.2.0 to 0.2.2.
updated-dependencies:
Bump json5 from 1.0.1 to 1.0.2 (Bump json5 from 1.0.1 to 1.0.2 0xsequence/wallet-contracts#162)
Zellic_audit_sequencev2
Replace rinkeby and arb-rinkeby with arbitrum goerli (Replace rinkeby and arb-rinkeby with arbitrum goerli 0xsequence/wallet-contracts#172)
Sequence v2 (Sequence v2 0xsequence/wallet-contracts#145)
NonceUtils initial commit
Add SessionUtils
Add read gap nonce hook
Fix error names and add session tests
Add comments to SessionUtils
Patch lazy octopus require main modolue upgradable
Deploy session utils script
Deploy contract on networks
Commit factory build
Push Solidity version to 0.8.14
Remove visivility of constructors
Implement native gapNonce and noNonce
Adapt tests to updated hardhat
Fix benchmark
Fix test coverage
Test special nonce types
Add tests for special nonce types
Replace string errors with type errors
Reduce gas costs using unchecked
Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable
Extend ModuleCalls for ModuleIgnoreNonceCalls
Compute subdigest during signature validation
Add alternative signature encoding schemas
Add support for signatures without chainId
Better signature dispatcher
Decode signatures without memory copy
Fix coverage tests
Update ts-node
Alternative signature dispatcher
Implement updateImageHash for ModuleAuthFixed
Fix benchmark runner
Recover signatures prefixed with lazy octops transactions
Fix lazy octopus prefixed signatures subdigest
Simplify tests
Remove unused contracts
Simplify repo and uncommit artifacts
wip chained signatures
better chained signatures
Cleanup libbytes and remove out of bounds checks
Fix github actions
Sequence merkle signatures (Sequence merkle signatures 0xsequence/wallet-contracts#146)
initial implementation recursive merkle signatures
Implement merkle signature encoding and decoding
Use merkle and legacy encoding, given size of config
Better benchmarker report
Optimize hash tree nodes
Fix new compiler warnings
Fix old compiler warnings
Optimize and simplify signature reading
Fix test to avoid generating wallets without signers
v2 - foundry changes (v2 - foundry changes 0xsequence/wallet-contracts#147)
Remove subDigest from ModuleAuth
Remove unused LibBytes methods
Add foundry tests
Add foundry tests for utils
Add Foundry tests for SequenceBaseSig
Add SequenceDynamicSig tests
SequenceChainedSig tests and fixes
Add SubModuleNonceTest tests
Implementation and calls tests
Add more long array tests
Foundry tests
Fix implementation foundry test
ModuleCalls gas golfing
Keep transactions in calldata
Reduce runs github ci
Push to Solidity 0.8.16
V2 - better signatures (V2 - better signatures 0xsequence/wallet-contracts#148)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Implement EIP-5719 (Implement EIP-5719 0xsequence/wallet-contracts#149)
V2 better signatures (V2 better signatures 0xsequence/wallet-contracts#150)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Add base EIP-4337 implementation (Add base EIP-4337 implementation 0xsequence/wallet-contracts#151)
Push Solidity to 0.8.17
V2 simplify (V2 simplify 0xsequence/wallet-contracts#152)
Remove EIP-4337 support
Remove alternative nonce types
V2 - 3 bytes size for signatures (V2 - 3 bytes size for signatures 0xsequence/wallet-contracts#153)
Add readUint24 utility function
Use uint24 for chained signature size
Use 3 bytes for dynamic signature
Use 3 bytes for signature branchs
LibString
GuestModule
MainModule
SequenceBaseSig
SequenceNoChainIdSig
thershold -> threshold
Amend SignatureValidator comments
minor v2 changes (minor v2 changes 0xsequence/wallet-contracts#157)
GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index)
NotEnoughGas: add transaction index
ModuleStaticAuth: check static digests first
reuse SubModuleNonce constants
Integrate checkpoint into imagehash (Integrate checkpoint into imagehash 0xsequence/wallet-contracts#154)
Embed checkpoint in imageHash
Fix setImplementation match wallet test
Fix checkpoint order on tests
thershold -> threshold
Minor renames (Minor renames 0xsequence/wallet-contracts#158)
imagehash -> image hash
typehash -> type hash
sub digest -> subdigest
leaf -> node
compare directly
whitespace
developpers -> developers
joinAddrAndWeight -> leafForAddressAndWeight
ImageHashNode | ConfigLeaf -> ConfigTopology
fix unnecessary casts
iddle -> idle
Converter -> Convertor
mainmodule -> main module
fix incorrect comments
V2 nested configs (V2 nested configs 0xsequence/wallet-contracts#155)
V2 - convenience Auth + IPFS (V2 - convenience Auth + IPFS 0xsequence/wallet-contracts#159)
Implement nested signature part
Fix foundry test for invalid sig type
Add tests for nested wallet configs
Add tests for unique leafs
Add ipfs + imageHash convenience method
Update hardhat
deploy contracts using EIP-2470
Delete unused contract
Use node v18 for ci
Move v1 audits to v1 folder
Add onlyDelegatecall module
Fix comments
Remove redundant static auth
Foundry test fixes
Update outdated arcadeum comments
Better Tx executed events
Deploy new version
Fix type GuestModule comment
Update to Solidity 0.8.18
erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth 0xsequence/wallet-contracts#165)
Comments and formatting
Add docs for ModuleAuth
MainModuleGasEstimation: simulateExecute (MainModuleGasEstimation: simulateExecute 0xsequence/wallet-contracts#167)
V2 - Consensys audit fixes (V2 - Consensys audit fixes 0xsequence/wallet-contracts#168)
Fix right padded hooks selector issue
Fix multicall blockNumber wrong value
Revert isValidSignature if wrong signature length
Emit events when changing hooks
Revert if factory failed to deploy wallet
Remove unused imports and fix solhint
Implement ERC165 missing modules
Remove duplicated decodeNonce code
Move gas-estimation modules to subdir
Remove outdated experimental pragma
Fix foundry test
Revert contract creation if deploy failed
Deploy new contracts on some chains
Deploy Sequence v2 contracts
fix: requireNonExpired inclusion (Fix: require utils expiration inclusion 0xsequence/wallet-contracts#170)
Hooks (Hooks 0xsequence/wallet-contracts#169)
Hook implements IERC223Receiver
Add IERC777Receiver
Test stability (Test stability 0xsequence/wallet-contracts#171)
Bump forge deps
Improve test stability
Fix foundry test edge cases
Add v2 audit reports
Update README (Update README 0xsequence/wallet-contracts#175)
Update README
Remove unused pnpm lock
Update hardhat to remove github action compile error
Fix node version to prevent hardhat error during github actions
Fix coverage tests
Deployments (Deployments 0xsequence/wallet-contracts#176)
Update deployment files
Add singleton deployer deployment to deploy script
Update contracts to match deployment on chain
Update package.json
Bump package version
Per-transaction estimated gas usage and execution results (Manually test interface ids 0xsequence/wallet-contracts#46)
Per-transaction estimated gas usage and execution results
v1.9.5
v1.9.6
Fix error message in MainModuleGasEstimation
Bump follow-redirects from 1.14.4 to 1.14.7 (Bump follow-redirects from 1.14.4 to 1.14.7 0xsequence/wallet-contracts#137)
Bumps follow-redirects from 1.14.4 to 1.14.7.
updated-dependencies:
Bumps shelljs from 0.8.4 to 0.8.5.
updated-dependencies:
Bumps follow-redirects from 1.14.7 to 1.14.8.
updated-dependencies:
Bumps minimist from 1.2.5 to 1.2.6.
updated-dependencies:
Optimism deploy
Update hardhat/etherscan
Deploy on nove and avalanche
dep upgrades (dep upgrades 0xsequence/wallet-contracts#160)
deploy on avalanche testnet
Bump decode-uri-component from 0.2.0 to 0.2.2 (Bump decode-uri-component from 0.2.0 to 0.2.2 0xsequence/wallet-contracts#161)
Bumps decode-uri-component from 0.2.0 to 0.2.2.
updated-dependencies:
Bump json5 from 1.0.1 to 1.0.2 (Bump json5 from 1.0.1 to 1.0.2 0xsequence/wallet-contracts#162)
Zellic_audit_sequencev2
Replace rinkeby and arb-rinkeby with arbitrum goerli (Replace rinkeby and arb-rinkeby with arbitrum goerli 0xsequence/wallet-contracts#172)
Sequence v2 (Sequence v2 0xsequence/wallet-contracts#145)
NonceUtils initial commit
Add SessionUtils
Add read gap nonce hook
Fix error names and add session tests
Add comments to SessionUtils
Patch lazy octopus require main modolue upgradable
Deploy session utils script
Deploy contract on networks
Commit factory build
Push Solidity version to 0.8.14
Remove visivility of constructors
Implement native gapNonce and noNonce
Adapt tests to updated hardhat
Fix benchmark
Fix test coverage
Test special nonce types
Add tests for special nonce types
Replace string errors with type errors
Reduce gas costs using unchecked
Extend ModuleAuthUpgradable for ModuleIgnoreAuthUpgradable
Extend ModuleCalls for ModuleIgnoreNonceCalls
Compute subdigest during signature validation
Add alternative signature encoding schemas
Add support for signatures without chainId
Better signature dispatcher
Decode signatures without memory copy
Fix coverage tests
Update ts-node
Alternative signature dispatcher
Implement updateImageHash for ModuleAuthFixed
Fix benchmark runner
Recover signatures prefixed with lazy octops transactions
Fix lazy octopus prefixed signatures subdigest
Simplify tests
Remove unused contracts
Simplify repo and uncommit artifacts
wip chained signatures
better chained signatures
Cleanup libbytes and remove out of bounds checks
Fix github actions
Sequence merkle signatures (Sequence merkle signatures 0xsequence/wallet-contracts#146)
initial implementation recursive merkle signatures
Implement merkle signature encoding and decoding
Use merkle and legacy encoding, given size of config
Better benchmarker report
Optimize hash tree nodes
Fix new compiler warnings
Fix old compiler warnings
Optimize and simplify signature reading
Fix test to avoid generating wallets without signers
v2 - foundry changes (v2 - foundry changes 0xsequence/wallet-contracts#147)
Remove subDigest from ModuleAuth
Remove unused LibBytes methods
Add foundry tests
Add foundry tests for utils
Add Foundry tests for SequenceBaseSig
Add SequenceDynamicSig tests
SequenceChainedSig tests and fixes
Add SubModuleNonceTest tests
Implementation and calls tests
Add more long array tests
Foundry tests
Fix implementation foundry test
ModuleCalls gas golfing
Keep transactions in calldata
Reduce runs github ci
Push to Solidity 0.8.16
V2 - better signatures (V2 - better signatures 0xsequence/wallet-contracts#148)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Implement EIP-5719 (Implement EIP-5719 0xsequence/wallet-contracts#149)
V2 better signatures (V2 better signatures 0xsequence/wallet-contracts#150)
Add ModuleExtraAuth
Foundry tests for module extra auth
Add ModuleStaticAuth module
Add ModuleStaticAuth foundry tests
Simplify ModuleExtraAuth
Add ModuleStaticMerkleAuth module
Bound chainId and heavy tests
Bound big foundry test
Move static subdigest signing to imageHash
Add base EIP-4337 implementation (Add base EIP-4337 implementation 0xsequence/wallet-contracts#151)
Push Solidity to 0.8.17
V2 simplify (V2 simplify 0xsequence/wallet-contracts#152)
Remove EIP-4337 support
Remove alternative nonce types
V2 - 3 bytes size for signatures (V2 - 3 bytes size for signatures 0xsequence/wallet-contracts#153)
Add readUint24 utility function
Use uint24 for chained signature size
Use 3 bytes for dynamic signature
Use 3 bytes for signature branchs
LibString
GuestModule
MainModule
SequenceBaseSig
SequenceNoChainIdSig
thershold -> threshold
Amend SignatureValidator comments
minor v2 changes (minor v2 changes 0xsequence/wallet-contracts#157)
GuestModule: DelegateCallNotAllowed() -> DelegateCallNotAllowed(uint256 _index)
NotEnoughGas: add transaction index
ModuleStaticAuth: check static digests first
reuse SubModuleNonce constants
Integrate checkpoint into imagehash (Integrate checkpoint into imagehash 0xsequence/wallet-contracts#154)
Embed checkpoint in imageHash
Fix setImplementation match wallet test
Fix checkpoint order on tests
thershold -> threshold
Minor renames (Minor renames 0xsequence/wallet-contracts#158)
imagehash -> image hash
typehash -> type hash
sub digest -> subdigest
leaf -> node
compare directly
whitespace
developpers -> developers
joinAddrAndWeight -> leafForAddressAndWeight
ImageHashNode | ConfigLeaf -> ConfigTopology
fix unnecessary casts
iddle -> idle
Converter -> Convertor
mainmodule -> main module
fix incorrect comments
V2 nested configs (V2 nested configs 0xsequence/wallet-contracts#155)
V2 - convenience Auth + IPFS (V2 - convenience Auth + IPFS 0xsequence/wallet-contracts#159)
Implement nested signature part
Fix foundry test for invalid sig type
Add tests for nested wallet configs
Add tests for unique leafs
Add ipfs + imageHash convenience method
Update hardhat
deploy contracts using EIP-2470
Delete unused contract
Use node v18 for ci
Move v1 audits to v1 folder
Add onlyDelegatecall module
Fix comments
Remove redundant static auth
Foundry test fixes
Update outdated arcadeum comments
Better Tx executed events
Deploy new version
Fix type GuestModule comment
Update to Solidity 0.8.18
erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth (erc-165 tests: remove duplicate IModuleHooks, add IModuleAuth 0xsequence/wallet-contracts#165)
Comments and formatting
Add docs for ModuleAuth
MainModuleGasEstimation: simulateExecute (MainModuleGasEstimation: simulateExecute 0xsequence/wallet-contracts#167)
V2 - Consensys audit fixes (V2 - Consensys audit fixes 0xsequence/wallet-contracts#168)
Fix right padded hooks selector issue
Fix multicall blockNumber wrong value
Revert isValidSignature if wrong signature length
Emit events when changing hooks
Revert if factory failed to deploy wallet
Remove unused imports and fix solhint
Implement ERC165 missing modules
Remove duplicated decodeNonce code
Move gas-estimation modules to subdir
Remove outdated experimental pragma
Fix foundry test
Revert contract creation if deploy failed
Deploy new contracts on some chains
Deploy Sequence v2 contracts
fix: requireNonExpired inclusion (Fix: require utils expiration inclusion 0xsequence/wallet-contracts#170)
Hooks (Hooks 0xsequence/wallet-contracts#169)
Hook implements IERC223Receiver
Add IERC777Receiver
Test stability (Test stability 0xsequence/wallet-contracts#171)
Bump forge deps
Improve test stability
Fix foundry test edge cases
Add v2 audit reports
Update README (Update README 0xsequence/wallet-contracts#175)
Update README
Remove unused pnpm lock
Update hardhat to remove github action compile error
Fix node version to prevent hardhat error during github actions
Fix coverage tests
Deployments (Deployments 0xsequence/wallet-contracts#176)
Update deployment files
Add singleton deployer deployment to deploy script
Update contracts to match deployment on chain
Update package.json
Bump package version
Update ci.yml (Enable buidler optimizer 0xsequence/wallet-contracts#54)
Update ci.yml
Update ci.yml
Update ci.yml
Update utils/deploy-contracts.ts
Update README.md
Update README.md
Potential fix for code scanning alert no. 17: Workflow does not contain permissions
Update .solhint.json
Update utils/deploy-contracts.ts
Update README.md
Main (V2 better signatures 0xsequence/wallet-contracts#150)
fix: repack ci tests, lint, CI/CD ai help verified signature (Update README (0xsequence#175) (#136) #20) (Main #33)
Fix test wallet generation
Rename image hash storage slot
Update typings
Fix error more than 12 owners
Test wallet with 255 signers
Add gaslimit to transactions
Test transactions gasLimit
Onion hash for signers image
Fix bench test
Remove MainModuleDeployer
Add create contracts feature
Add prepare script for compiling contracts
Add files to npm package
Update MainModule.sol
Add Github actions
Push Solidity compiler to 0.6.6
Replace nonce window by nonce spaces
Use module storage to store hooks
Use abi.encode and hardcode NONCE_KEY
Hardcode hooks key
Hardcode image hash key
Removed unused constant
Define more explicit new nonce
Build typings
Created ModuleStorage library
Rename ModuleBase -> ModuleSelfAuth
Solidity 0.6.7
Update module typings
Add readHook external method
Implement ERC165 and supportsInterface on modules
Add network id to message digest
Implement ModuleStorage mappings
Test used storage slots
Fix read storage tests
Add ModuleHooks implements ERC223
Test implements all interfaceIds
Remove function selectors from ERC165
Add TxExecuted, and txHash to TxFailed
Test emit TxExecuted event
Add big batches benchmark
Add failing transactions benchmark
Add benchmark yarn job
Add benchmark job to Github actions
Fix rejected transaction test
Remove index and topics from tx events
Manually test interface ids
Implement self execute transactions
Push Solidity to 0.6.8
Build typings
Remove addressOf from factory
Test self-execute transaction bundles
Use flag to determine if reading address or signature
Test revert invalid flag on signature
Use OpenZeppelin ECDSA recover to avoid ECDSA malleability
Inline ECDSA malleability checks for gas savings
Fix error message prefix separator
Use constants for signature type and remove unused struct
Enable buidler optimizer
Use buidler for build scripts
Add contract typings to gitignore, remove cleanup before build
Allow ModuleCalls methods to be overridden
Create AnonymousModule
Test AnonymousModule
Add ExpirableUtil for expirable bundles
Fix output files dir package.json
cross platform fix (Cross Platform Fix 0xsequence/wallet-contracts#60)
Rename AnonymousModule -> GuestModule
Remove yarn-error and add to gitignore
Add coverage yarn script
Add coverage to Github actions
Fix notice comment on GuestModule
Test send empty signature to MainModuleUpgradable implementation
Make imageHash == 0 invalid
Move imageHash check to isValidImage
Fix pragma of core contracts
Remove unuse abicoder v2 on some contracts
Fix invalid signature revert messages prefixes
Enforce transaction gasLimit
Decrease gasLimits on test transactions
Test not enough gas
Ignore zero gasLimit
Remove pop byte util
Ignore gasLimit 0 on GuestModule
Check gasLeft on GuestModule
Typos
Fixes QSP-11 Shadowed Hooks 0xsequence/wallet-contracts#72
Fixes QSP-9 Sensitivity of Upgrades 0xsequence/wallet-contracts#70
Fixes QSP-15 Limited isContract() Check 0xsequence/wallet-contracts#76
Fixes QSP-10 Owner Signature Gas Limit Problems 0xsequence/wallet-contracts#71
Fixes QSP-17 Multiple Inheritance 0xsequence/wallet-contracts#78
Comments for inheritance
Add comment for relayers
Remove pop value comment
Implement requireMinNonce
Fix revert string prefix
Add events for wallet upgrade
Remove first event field
Add requireConfig to utils
Validate counterfactual configuration
Increase expiration delta test
Fix typo
Deploy script via universal …