diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 35ae9eb9ec..9cd79e5061 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -6,6 +6,6 @@ "packages/fork-diff": "0.4.0", "packages/guardian-prover-health-check": "0.1.0", "packages/guardian-prover-health-check-ui": "0.1.0", - "packages/protocol": "1.4.0", + "packages/protocol": "1.5.0", "packages/relayer": "0.12.0" } diff --git a/packages/protocol/CHANGELOG.md b/packages/protocol/CHANGELOG.md index 2e60f5a398..6074a2d587 100644 --- a/packages/protocol/CHANGELOG.md +++ b/packages/protocol/CHANGELOG.md @@ -1,5 +1,192 @@ # Changelog +## [1.5.0](https://github.com/taikoxyz/taiko-mono/compare/protocol-v1.4.0...protocol-v1.5.0) (2024-04-25) + + +### ⚠ BREAKING CHANGES + +* **protocol:** fix typos ([#16189](https://github.com/taikoxyz/taiko-mono/issues/16189)) +* **protocol:** enforce naming convention ([#16168](https://github.com/taikoxyz/taiko-mono/issues/16168)) +* **protocol:** improve signal service and remove ICrossChainSync ([#15859](https://github.com/taikoxyz/taiko-mono/issues/15859)) +* **protocol:** re-implement multi-hop bridging with optional caching ([#15761](https://github.com/taikoxyz/taiko-mono/issues/15761)) +* **protocol:** improve protocol based on Brecht's internal review ([#15740](https://github.com/taikoxyz/taiko-mono/issues/15740)) + +### Features + +* **protocol, relayer:** Improved Taiko Protocol and Relayer Documentations ([#15440](https://github.com/taikoxyz/taiko-mono/issues/15440)) ([67ca2e1](https://github.com/taikoxyz/taiko-mono/commit/67ca2e1e0bfe5301efa854048cc5cb0f0dafe921)) +* **protocol:** add `acceptOwnership` method in deployOnL1 ([#16103](https://github.com/taikoxyz/taiko-mono/issues/16103)) ([745d7d3](https://github.com/taikoxyz/taiko-mono/commit/745d7d38e865bcfed4b19b5e9de1fcb7b4fc8c1d)) +* **protocol:** add `AuthorizeTaikoForMultihop ` script ([#15888](https://github.com/taikoxyz/taiko-mono/issues/15888)) ([45aff8e](https://github.com/taikoxyz/taiko-mono/commit/45aff8e971332fb5145aa0d1ec7a2b7ebd46305b)) +* **protocol:** add `DeployTaikoToken` script ([#16771](https://github.com/taikoxyz/taiko-mono/issues/16771)) ([00f8954](https://github.com/taikoxyz/taiko-mono/commit/00f8954536c3572fe0062b7de0a9537921f38323)) +* **protocol:** add `lastSyncedBlockId ` for L2 DAO vote aggregation ([#16654](https://github.com/taikoxyz/taiko-mono/issues/16654)) ([edbae8d](https://github.com/taikoxyz/taiko-mono/commit/edbae8d42a3929db13965ce5b445449b6372fc6b)) +* **protocol:** add `LibTiers.TIER_GUARDIAN` to `OptimisticTierProvider` ([#15647](https://github.com/taikoxyz/taiko-mono/issues/15647)) ([ee5c855](https://github.com/taikoxyz/taiko-mono/commit/ee5c855012fe4a8c0667111510dc917a465139b1)) +* **protocol:** add `OptimisticTierProvider` for client testing ([#15645](https://github.com/taikoxyz/taiko-mono/issues/15645)) ([6569264](https://github.com/taikoxyz/taiko-mono/commit/6569264fc72ed9102fa7532cd8b0fb631f598d3d)) +* **protocol:** add `TaikoL1.getTransition(blockId, transitionID)` function ([2c63cb0](https://github.com/taikoxyz/taiko-mono/commit/2c63cb0c796495948f1dd887662044397394d852)) +* **protocol:** add `UpgradeTierProvider` script ([#16017](https://github.com/taikoxyz/taiko-mono/issues/16017)) ([a01da46](https://github.com/taikoxyz/taiko-mono/commit/a01da4687f2b26a27dc12958109e5112e87baa60)) +* **protocol:** add a new tier B_TIER_GUARDIAN_MINORITY ([#16790](https://github.com/taikoxyz/taiko-mono/issues/16790)) ([cab4071](https://github.com/taikoxyz/taiko-mono/commit/cab4071e649bdcf122aeca8025d484d5a0a21a47)) +* **protocol:** add a script to use native USDC token as the bridged token ([#16812](https://github.com/taikoxyz/taiko-mono/issues/16812)) ([63fe93d](https://github.com/taikoxyz/taiko-mono/commit/63fe93d4787f71f83c402d4603e874f3cd44f53b)) +* **protocol:** add a view function isSignalReceived for Bridge relayer/UI ([#16591](https://github.com/taikoxyz/taiko-mono/issues/16591)) ([39d4be6](https://github.com/taikoxyz/taiko-mono/commit/39d4be6e003d5e1c9d182dbaa76c54abe09a6112)) +* **protocol:** add back EventProcessed event and improve gas logging in Bridge ([#16760](https://github.com/taikoxyz/taiko-mono/issues/16760)) ([530457b](https://github.com/taikoxyz/taiko-mono/commit/530457b5523057276ea290727af0cc64ec5b78f3)) +* **protocol:** add ERC20Airdrop test and deployment script ([#15752](https://github.com/taikoxyz/taiko-mono/issues/15752)) ([e60588c](https://github.com/taikoxyz/taiko-mono/commit/e60588cd5d455d0237ba7f7860d575a727f52103)) +* **protocol:** add GuardianApproval event to GuardianProver ([#15817](https://github.com/taikoxyz/taiko-mono/issues/15817)) ([78f0481](https://github.com/taikoxyz/taiko-mono/commit/78f04812de1bcb22ed40c9ae9b16e42d3d3783c2)) +* **protocol:** add message owner parameter to vault operations ([#15770](https://github.com/taikoxyz/taiko-mono/issues/15770)) ([136bdb7](https://github.com/taikoxyz/taiko-mono/commit/136bdb7395f4a30a76884c70310c02645ebaead2)) +* **protocol:** add QuillAudits report ([#16186](https://github.com/taikoxyz/taiko-mono/issues/16186)) ([b0ce62e](https://github.com/taikoxyz/taiko-mono/commit/b0ce62ed8c55acce04660b39ae1eb677858aabf1)) +* **protocol:** add readonly functions isMessageFailed & isMessageReceived to Bridge ([#16608](https://github.com/taikoxyz/taiko-mono/issues/16608)) ([2fbd948](https://github.com/taikoxyz/taiko-mono/commit/2fbd94866d5520864de59507239e00fa218ffd06)) +* **protocol:** add various small fixes based on quill report ([#16031](https://github.com/taikoxyz/taiko-mono/issues/16031)) ([1f46b33](https://github.com/taikoxyz/taiko-mono/commit/1f46b336a3ed5c3961424e5182fa43f118349ac6)) +* **protocol:** Add votes and snapshot plugin ([#15732](https://github.com/taikoxyz/taiko-mono/issues/15732)) ([45b549b](https://github.com/taikoxyz/taiko-mono/commit/45b549b9790457fe6b9ecb6caccbc4a2cd13abd0)) +* **protocol:** added test case for ERC721Airdrop ([#16025](https://github.com/taikoxyz/taiko-mono/issues/16025)) ([c8f6e9b](https://github.com/taikoxyz/taiko-mono/commit/c8f6e9b71ac34b1afb25b9378a496f6a314c9ad3)) +* **protocol:** Adjust proving reward to increase valid contestation ROI ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** adopt optimism new trie codebase ([#15608](https://github.com/taikoxyz/taiko-mono/issues/15608)) ([f5e7ee1](https://github.com/taikoxyz/taiko-mono/commit/f5e7ee14439c46f7322a0fb9c2cb11f21498b0ca)) +* **protocol:** allow assigned prover to prove blocks outside proving window (liveness bond not returned) ([2c63cb0](https://github.com/taikoxyz/taiko-mono/commit/2c63cb0c796495948f1dd887662044397394d852)) +* **protocol:** allow bridge to ban addresses ([#15577](https://github.com/taikoxyz/taiko-mono/issues/15577)) ([17b074b](https://github.com/taikoxyz/taiko-mono/commit/17b074bcf1ee15e40a88b7e21504c209f83993bc)) +* **protocol:** allow bridge to fail a message by the owner without retrying it ([#16669](https://github.com/taikoxyz/taiko-mono/issues/16669)) ([dce651e](https://github.com/taikoxyz/taiko-mono/commit/dce651e2647013b0d13d7947e0fd0115f38fe639)) +* **protocol:** allow disabling block reuse ([#15916](https://github.com/taikoxyz/taiko-mono/issues/15916)) ([0f314c5](https://github.com/taikoxyz/taiko-mono/commit/0f314c50db866b26998bb35b43d46d15f2083603)) +* **protocol:** allow ERC20Airdrop.delegateBySig to fail ([#16622](https://github.com/taikoxyz/taiko-mono/issues/16622)) ([d375cc1](https://github.com/taikoxyz/taiko-mono/commit/d375cc13a245880951e71cd18b64a0e2e2d21ada)) +* **protocol:** allow GuardianProver set TKO allowance for TaikoL1 ([#16831](https://github.com/taikoxyz/taiko-mono/issues/16831)) ([ce7076c](https://github.com/taikoxyz/taiko-mono/commit/ce7076ce8b19a6059bd16579f6366fd07ab38153)) +* **protocol:** allow L2 contracts to read L2's parent block timestamp ([#16425](https://github.com/taikoxyz/taiko-mono/issues/16425)) ([9b79359](https://github.com/taikoxyz/taiko-mono/commit/9b793599c1fa43620eff1f5e02068a7eb4c693c6)) +* **protocol:** allow minGuardians be any value between 0 and numGuardians ([#16384](https://github.com/taikoxyz/taiko-mono/issues/16384)) ([0b1385e](https://github.com/taikoxyz/taiko-mono/commit/0b1385e37b9d17fb9ce41fcb48793fc2b8fc468e)) +* **protocol:** allow one-tx claim and delegation for bridged ERC20 tokens ([#15727](https://github.com/taikoxyz/taiko-mono/issues/15727)) ([603f24b](https://github.com/taikoxyz/taiko-mono/commit/603f24bb34e9db4378976b0c26312b60a3166318)) +* **protocol:** allow setting L2 coinbase ([#15743](https://github.com/taikoxyz/taiko-mono/issues/15743)) ([e3fde54](https://github.com/taikoxyz/taiko-mono/commit/e3fde54c1bcbce1113b631705119d8356f5e8d1e)) +* **protocol:** avoid proving-fee payment if amount is 0 ([#16595](https://github.com/taikoxyz/taiko-mono/issues/16595)) ([761a066](https://github.com/taikoxyz/taiko-mono/commit/761a06609cbe498b5ab5877ed81e5d663526c6e0)) +* **protocol:** change `INSTANCE_VALIDITY_DELAY` to `0` at first ([#16656](https://github.com/taikoxyz/taiko-mono/issues/16656)) ([86a41ac](https://github.com/taikoxyz/taiko-mono/commit/86a41ac415e76caa3ebd69cea444cb556258f469)) +* **protocol:** change cooldown and proving window to minutes ([#16063](https://github.com/taikoxyz/taiko-mono/issues/16063)) ([f064224](https://github.com/taikoxyz/taiko-mono/commit/f0642241360630eb549e8125760f8786cd611864)) +* **protocol:** check 4844 staticcall return values (TKO-22) ([#15574](https://github.com/taikoxyz/taiko-mono/issues/15574)) ([00a9cd7](https://github.com/taikoxyz/taiko-mono/commit/00a9cd7ee789d635c40f097c06b4dc5b1c5f545f)) +* **protocol:** check if addresses ever reregistered in SGXProver ([#15665](https://github.com/taikoxyz/taiko-mono/issues/15665)) ([27c86c1](https://github.com/taikoxyz/taiko-mono/commit/27c86c183e21d6c3137ca63f44c31c3d26e353d9)) +* **protocol:** Emit event for client / node (Requested by Huan) ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** enable EIP712 signature for TimelockTokenPool ([#16335](https://github.com/taikoxyz/taiko-mono/issues/16335)) ([d93e4c5](https://github.com/taikoxyz/taiko-mono/commit/d93e4c54e37e13ac8a88ae01c732da77a5845c6c)) +* **protocol:** enable remote attestation in SGX prover ([#15559](https://github.com/taikoxyz/taiko-mono/issues/15559)) ([95159d6](https://github.com/taikoxyz/taiko-mono/commit/95159d6c78f53fd490b7210618092dc89c492679)) +* **protocol:** enforce an invocation delay for bridged messages ([#15555](https://github.com/taikoxyz/taiko-mono/issues/15555)) ([59c322d](https://github.com/taikoxyz/taiko-mono/commit/59c322d53775f62693d35f5674633993ba48fe6a)) +* **protocol:** enforce initializer call with onlyInitializing modifier ([#16061](https://github.com/taikoxyz/taiko-mono/issues/16061)) ([f3d7d82](https://github.com/taikoxyz/taiko-mono/commit/f3d7d821440c89c42e72b611245077e2cbaf9bb7)) +* **protocol:** extend SignalService interface ([#15969](https://github.com/taikoxyz/taiko-mono/issues/15969)) ([d90e90a](https://github.com/taikoxyz/taiko-mono/commit/d90e90af3e9904f780ebda7c90ea858fdca4c61c)) +* **protocol:** fix signal service multi-hop proof verification bugs ([#15680](https://github.com/taikoxyz/taiko-mono/issues/15680)) ([b46269c](https://github.com/taikoxyz/taiko-mono/commit/b46269c891158887bf0a7be47c1370decea30ac8)) +* **protocol:** get rid of new compiler warnings ([#15613](https://github.com/taikoxyz/taiko-mono/issues/15613)) ([ccee985](https://github.com/taikoxyz/taiko-mono/commit/ccee985408d938b992c65d90902069194dc5b54f)) +* **protocol:** getBlock also returns the transition used to verify the block ([#15917](https://github.com/taikoxyz/taiko-mono/issues/15917)) ([e583d99](https://github.com/taikoxyz/taiko-mono/commit/e583d9916378513a17e7b5b06e17a6002ea7f024)) +* **protocol:** improve `_authorizePause` for Bridge ([#16544](https://github.com/taikoxyz/taiko-mono/issues/16544)) ([f76c705](https://github.com/taikoxyz/taiko-mono/commit/f76c7058cbc3aa6aeb86a147bc9bd041739f382e)) +* **protocol:** Improve Bridge `_proveSignalReceived` code readability ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** Improve bridged nft tokens ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** Improve L2 1559 fee calculation code ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** improve protocol based on Brecht's internal review ([#15740](https://github.com/taikoxyz/taiko-mono/issues/15740)) ([791b139](https://github.com/taikoxyz/taiko-mono/commit/791b139bb0c8533a4f36230db0235afb9ddcd9e5)) +* **protocol:** improve signal service and remove ICrossChainSync ([#15859](https://github.com/taikoxyz/taiko-mono/issues/15859)) ([58ffe10](https://github.com/taikoxyz/taiko-mono/commit/58ffe1011a67710277b19d813bd49b530d1ba335)) +* **protocol:** increase GAS_OVERHEAD value based on testnet data ([#16769](https://github.com/taikoxyz/taiko-mono/issues/16769)) ([fb9334c](https://github.com/taikoxyz/taiko-mono/commit/fb9334c3391dc42972ebf8c3aeac427dc9e8ed5b)) +* **protocol:** Introduce DelegateOwner to become the owner of all L2 contracts ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** Make each transition contesting only dependent on it's own cooldown period ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** make getInvocationDelays return non-zero values for base chains ([#15968](https://github.com/taikoxyz/taiko-mono/issues/15968)) ([bb8aaf4](https://github.com/taikoxyz/taiko-mono/commit/bb8aaf4b95e5ae81221521cd1292c1fc916a0c47)) +* **protocol:** Make testnets and mainnet have the same bridge configuration ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** One grant per address ([#15558](https://github.com/taikoxyz/taiko-mono/issues/15558)) ([0e24d2d](https://github.com/taikoxyz/taiko-mono/commit/0e24d2d3308468e6e74bb757380f85db476d883a)) +* **protocol:** pause ERC20Vault by default on L2 so owner can deploy native USDC ([#16791](https://github.com/taikoxyz/taiko-mono/issues/16791)) ([cd682a0](https://github.com/taikoxyz/taiko-mono/commit/cd682a02c47a46efd55000fc063dca979f74589f)) +* **protocol:** re-implement multi-hop bridging with optional caching ([#15761](https://github.com/taikoxyz/taiko-mono/issues/15761)) ([a3a12de](https://github.com/taikoxyz/taiko-mono/commit/a3a12de9accb77f9acada4e608b9c41e7c61bff0)) +* **protocol:** redesign Bridge fee & gasLimit and remove 2-step processing ([#16739](https://github.com/taikoxyz/taiko-mono/issues/16739)) ([3049b0c](https://github.com/taikoxyz/taiko-mono/commit/3049b0c96812d8994117e3bda3bb56c1772b12a3)) +* **protocol:** remove `contestations` from `TransitionState` and events (it's buggy) ([2c63cb0](https://github.com/taikoxyz/taiko-mono/commit/2c63cb0c796495948f1dd887662044397394d852)) +* **protocol:** remove and clear `proposedIn` from TaikoData.Block ([#16630](https://github.com/taikoxyz/taiko-mono/issues/16630)) ([511c18d](https://github.com/taikoxyz/taiko-mono/commit/511c18d4dd949aecbf5892623c541ce50a17518e)) +* **protocol:** remove banning address ([#16604](https://github.com/taikoxyz/taiko-mono/issues/16604)) ([c4b705b](https://github.com/taikoxyz/taiko-mono/commit/c4b705b3a977322268ce14eacf2e4f5327536593)) +* **protocol:** remove ERC20SnapshotUpgradeable from TaikoToken and BrigedERC20 tokens ([#16809](https://github.com/taikoxyz/taiko-mono/issues/16809)) ([f20a02f](https://github.com/taikoxyz/taiko-mono/commit/f20a02f048da1349269da2cc75b61cd8a3c8fd22)) +* **protocol:** remove the ETHDeposit feature completely ([#16638](https://github.com/taikoxyz/taiko-mono/issues/16638)) ([643b4b1](https://github.com/taikoxyz/taiko-mono/commit/643b4b1158ae645e9ee4416c4c2fec9dc9395fd7)) +* **protocol:** Rename tier providers ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** reserve 2 slots for TaikoData.Transition ([#15716](https://github.com/taikoxyz/taiko-mono/issues/15716)) ([8099bd1](https://github.com/taikoxyz/taiko-mono/commit/8099bd1b1370129a5c9794157aa5028c7b5f29b2)) +* **protocol:** risc0 verifier contract ([#16331](https://github.com/taikoxyz/taiko-mono/issues/16331)) ([17abc18](https://github.com/taikoxyz/taiko-mono/commit/17abc189ca3d2752beb5400c036a650fd5b9c895)) +* **protocol:** sync state root rather than signal service's storage root ([#15671](https://github.com/taikoxyz/taiko-mono/issues/15671)) ([ea33e65](https://github.com/taikoxyz/taiko-mono/commit/ea33e655c5d497e29c01c3070c5be36b9e7429ed)) +* **protocol:** trigger simultaneous recurring TKO snapshots ([#16715](https://github.com/taikoxyz/taiko-mono/issues/16715)) ([bffc8dc](https://github.com/taikoxyz/taiko-mono/commit/bffc8dc7519d8805d1eebfe4594a7c38519adda7)) +* **protocol:** update `AuthorizeTaikoForMultihop` script ([#16147](https://github.com/taikoxyz/taiko-mono/issues/16147)) ([0b1aa8b](https://github.com/taikoxyz/taiko-mono/commit/0b1aa8b6a77d9aa1fb084fb1bc7fbf7473063bcf)) +* **protocol:** update `config_dcap_sgx_verifier.sh` test script ([#16218](https://github.com/taikoxyz/taiko-mono/issues/16218)) ([5df976c](https://github.com/taikoxyz/taiko-mono/commit/5df976c257846705a05c822e884410e47271bf3f)) +* **protocol:** update `SetRemoteBridgeSuites` to register remote signal services ([#15982](https://github.com/taikoxyz/taiko-mono/issues/15982)) ([11af1cc](https://github.com/taikoxyz/taiko-mono/commit/11af1ccb4ba671543084d1d5b99dfddf4749670f)) +* **protocol:** Update chain id for the upcoming Hekla testnet ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** update signal service ownership transfer check in DeployOnL1 ([#16080](https://github.com/taikoxyz/taiko-mono/issues/16080)) ([06a774e](https://github.com/taikoxyz/taiko-mono/commit/06a774e2ff0dec652db07321698ca5fbdd8044e1)) +* **protocol:** Upgrade solhint to 4.5.2 ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** upgrade to use OZ 4.9.6 ([#16360](https://github.com/taikoxyz/taiko-mono/issues/16360)) ([2a0fe95](https://github.com/taikoxyz/taiko-mono/commit/2a0fe9526718bdf799874c7f2b0968f3dda7b6f2)) +* **protocol:** use `blobhash()` and remove `BlobHashReader.yulp` ([#15610](https://github.com/taikoxyz/taiko-mono/issues/15610)) ([d886ad7](https://github.com/taikoxyz/taiko-mono/commit/d886ad7ad6a8b6ff58a2c9f31bbbe3b404ec06c7)) +* **protocol:** use 35000 as gas limit for sending Ether in Brdge ([#16666](https://github.com/taikoxyz/taiko-mono/issues/16666)) ([4909782](https://github.com/taikoxyz/taiko-mono/commit/4909782194ae025ff78438126c1e595f404e16a9)) +* **protocol:** use Ownable2StepUpgradeable for better security ([#16029](https://github.com/taikoxyz/taiko-mono/issues/16029)) ([9cbfd08](https://github.com/taikoxyz/taiko-mono/commit/9cbfd08f7e691553480b8932aac33cbe6b936156)) +* **relayer:** two-step bridge + watchdog + full merkle proof ([#15669](https://github.com/taikoxyz/taiko-mono/issues/15669)) ([1039a96](https://github.com/taikoxyz/taiko-mono/commit/1039a960f8c0a0896821f067cca1137f108d847d)) + + +### Bug Fixes + +* **protocol:** add 1 to _REENTRY_SLOT in EssentialContract ([#16593](https://github.com/taikoxyz/taiko-mono/issues/16593)) ([a381ddd](https://github.com/taikoxyz/taiko-mono/commit/a381dddeae95a715f80a9c21fb8990fe6549a94d)) +* **protocol:** add access control to BridgedERC20Base.burn (TKO-08 ) ([#15566](https://github.com/taikoxyz/taiko-mono/issues/15566)) ([9004b04](https://github.com/taikoxyz/taiko-mono/commit/9004b041903a1a89b377f379fce88f944359a772)) +* **protocol:** add address manager to taiko token ([#16394](https://github.com/taikoxyz/taiko-mono/issues/16394)) ([c64ec19](https://github.com/taikoxyz/taiko-mono/commit/c64ec193c95113a4c33692289e23e8d9fa864073)) +* **protocol:** add delete-instance function (TKO16) ([#15629](https://github.com/taikoxyz/taiko-mono/issues/15629)) ([a62a137](https://github.com/taikoxyz/taiko-mono/commit/a62a137f03304f43484f01a61649fcff28ccdc45)) +* **protocol:** add GovernorSettingsUpgradeable ([#16687](https://github.com/taikoxyz/taiko-mono/issues/16687)) ([eba82ba](https://github.com/taikoxyz/taiko-mono/commit/eba82bad1075afc695f3203304160f26e42627a9)) +* **protocol:** address miscellaneous feedbacks from Sigma Prime (TKO26) ([#15600](https://github.com/taikoxyz/taiko-mono/issues/15600)) ([760d3dc](https://github.com/taikoxyz/taiko-mono/commit/760d3dc955b503da94d9bc9f2ca08965f07e0b4c)) +* **protocol:** allow proposing when proving is paused ([#15796](https://github.com/taikoxyz/taiko-mono/issues/15796)) ([6b46943](https://github.com/taikoxyz/taiko-mono/commit/6b4694390176597dd195bd6fc23b4190e69f25e9)) +* **protocol:** block reusability check error fixed (TKO-18) ([#15572](https://github.com/taikoxyz/taiko-mono/issues/15572)) ([27ce911](https://github.com/taikoxyz/taiko-mono/commit/27ce911c9c13650daed8c5da630850c1959106d1)) +* **protocol:** call _disableInitializers in AddressResolver's constructor. ([#16564](https://github.com/taikoxyz/taiko-mono/issues/16564)) ([f137077](https://github.com/taikoxyz/taiko-mono/commit/f1370778346db18bd2a85836aeb497314c6ca7d3)) +* **protocol:** change to transfer and mint pattern with BridgedERC20 tokens ([#16796](https://github.com/taikoxyz/taiko-mono/issues/16796)) ([75841ec](https://github.com/taikoxyz/taiko-mono/commit/75841ecc21b982d48da9ac5576a8013574a39a56)) +* **protocol:** check 63/64 gasleft() not smaller than specified gaslimit ([#16613](https://github.com/taikoxyz/taiko-mono/issues/16613)) ([12f73cd](https://github.com/taikoxyz/taiko-mono/commit/12f73cda76800ee79d217e8e4b44312689defb05)) +* **protocol:** check blob capability in LibProposing using LibNetwork.isDencunSupported ([#16657](https://github.com/taikoxyz/taiko-mono/issues/16657)) ([e787493](https://github.com/taikoxyz/taiko-mono/commit/e787493e02238735b3bb4ff1690f7a02004cbd0c)) +* **protocol:** check invocation gas limit also in `retryMessage` ([#16660](https://github.com/taikoxyz/taiko-mono/issues/16660)) ([8209a43](https://github.com/taikoxyz/taiko-mono/commit/8209a437436f9a84d1e75bbafe6780952401d6a2)) +* **protocol:** check no loops in multi-hop in Bridge ([#16659](https://github.com/taikoxyz/taiko-mono/issues/16659)) ([447cd52](https://github.com/taikoxyz/taiko-mono/commit/447cd5252d141dfd38a2764d570b9168762c0d4b)) +* **protocol:** Correct decoding (TKO-03) ([#15582](https://github.com/taikoxyz/taiko-mono/issues/15582)) ([dc46b27](https://github.com/taikoxyz/taiko-mono/commit/dc46b27612398dd05e818d7439a8e872a227b603)) +* **protocol:** Deposit ether reentrancy (TKO-14) ([#15569](https://github.com/taikoxyz/taiko-mono/issues/15569)) ([7327ff0](https://github.com/taikoxyz/taiko-mono/commit/7327ff0dcd4dcdbcb94681332aad8c30a2ec14e1)) +* **protocol:** fix a bug in changeBridgedToken ([#16403](https://github.com/taikoxyz/taiko-mono/issues/16403)) ([42c279f](https://github.com/taikoxyz/taiko-mono/commit/42c279f0c8d884e6c3f76a2750d72a856ea6fc70)) +* **protocol:** Fix a proving bug when top-tier re-approves top-tier (reported by OpenZeppelin and Code4rena) ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** fix a SGX bug in pemCertChainLib ([#16639](https://github.com/taikoxyz/taiko-mono/issues/16639)) ([83db3da](https://github.com/taikoxyz/taiko-mono/commit/83db3da8cb477c3bc7d75254d8bb6b88b8defd36)) +* **protocol:** fix an issue in `DevnetTierProvider` ([#16798](https://github.com/taikoxyz/taiko-mono/issues/16798)) ([2714dd2](https://github.com/taikoxyz/taiko-mono/commit/2714dd28d74f6e7b9636ffc93726d82993f7ea4d)) +* **protocol:** fix bridge bug caused by incorrect check of `receivedAt` (by OZ) ([#16545](https://github.com/taikoxyz/taiko-mono/issues/16545)) ([c879124](https://github.com/taikoxyz/taiko-mono/commit/c8791241e190b884e1ab008ede0d6455f2c708b2)) +* **protocol:** fix bridge prove message issue using staticcall ([#16404](https://github.com/taikoxyz/taiko-mono/issues/16404)) ([dd57560](https://github.com/taikoxyz/taiko-mono/commit/dd57560f1f7bad453696044080884533ece05876)) +* **protocol:** fix bridge unpause will delay execution ([#16612](https://github.com/taikoxyz/taiko-mono/issues/16612)) ([381f8b8](https://github.com/taikoxyz/taiko-mono/commit/381f8b8b180958091187f26f32c514932bc1f7fe)) +* **protocol:** fix Bridge.sol gap size ([#16594](https://github.com/taikoxyz/taiko-mono/issues/16594)) ([5f75dd8](https://github.com/taikoxyz/taiko-mono/commit/5f75dd89f4139c4415d874ee10cbb26a5e96d41c)) +* **protocol:** fix bug in LibBytesUtils.toBytes32 (TKO-07) ([#15565](https://github.com/taikoxyz/taiko-mono/issues/15565)) ([6def8a3](https://github.com/taikoxyz/taiko-mono/commit/6def8a3598bb6baf21169c402468f973001b8d14)) +* **protocol:** fix build error ([#15973](https://github.com/taikoxyz/taiko-mono/issues/15973)) ([f53130c](https://github.com/taikoxyz/taiko-mono/commit/f53130cae8ed108c2c36547130d6e7199db496ee)) +* **protocol:** fix chainid check to allow the case where `chainid = type(uint64).max` to still be valid, per the implied intention of type downcasting ([#15792](https://github.com/taikoxyz/taiko-mono/issues/15792)) ([a401622](https://github.com/taikoxyz/taiko-mono/commit/a4016221197b67f6b7228772743380c94ee15969)) +* **protocol:** fix cooldown/proof window caused by pausing (TKO-12) ([#15585](https://github.com/taikoxyz/taiko-mono/issues/15585)) ([b2176d3](https://github.com/taikoxyz/taiko-mono/commit/b2176d30868d55342c4ec19271d55999bf6bb0f2)) +* **protocol:** fix cooldown/proof window caused by pausing proving (again) ([#15616](https://github.com/taikoxyz/taiko-mono/issues/15616)) ([e43b512](https://github.com/taikoxyz/taiko-mono/commit/e43b5120a9ca65453cefaac4acdd948106888bb8)) +* **protocol:** fix custom coinbase `transferFrom` issue (alternative) ([#16327](https://github.com/taikoxyz/taiko-mono/issues/16327)) ([7423ffa](https://github.com/taikoxyz/taiko-mono/commit/7423ffa2fb2c5df870be9f1f2cab23c3409e5046)) +* **protocol:** fix encode eth deposit check ([#15793](https://github.com/taikoxyz/taiko-mono/issues/15793)) ([005a37a](https://github.com/taikoxyz/taiko-mono/commit/005a37ad574f59919f816220d728d6ea4002185a)) +* **protocol:** fix ERC20Airdrop2.sol with an extended withdrawal window ([#16596](https://github.com/taikoxyz/taiko-mono/issues/16596)) ([bc542d8](https://github.com/taikoxyz/taiko-mono/commit/bc542d89f98bff34a6331a5ed6bb2c9bbe15b148)) +* **protocol:** Fix genesis script by add missing state variables (reported by OpenZeppelin) ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** fix governor bravo vulnerability ([#15947](https://github.com/taikoxyz/taiko-mono/issues/15947)) ([a631be6](https://github.com/taikoxyz/taiko-mono/commit/a631be668b0bc6829643ccf02023ce13cbf19bc7)) +* **protocol:** fix guardian prover ([#16606](https://github.com/taikoxyz/taiko-mono/issues/16606)) ([643bd17](https://github.com/taikoxyz/taiko-mono/commit/643bd17c393503ae685df465e58b450192731a6d)) +* **protocol:** fix isSignalSent bug ([#15970](https://github.com/taikoxyz/taiko-mono/issues/15970)) ([c001cfb](https://github.com/taikoxyz/taiko-mono/commit/c001cfb2cfa9acbee0c9fb19caab7a5f558f3e93)) +* **protocol:** fix LibTrieProof.verifyMerkleProof by RLP-encoding the byte32 value first ([#16018](https://github.com/taikoxyz/taiko-mono/issues/16018)) ([e1f21c1](https://github.com/taikoxyz/taiko-mono/commit/e1f21c12cb1347fef6f7795cfd1b55e2f172312f)) +* **protocol:** fix msg.sender == first_proposer bug ([#16605](https://github.com/taikoxyz/taiko-mono/issues/16605)) ([b019975](https://github.com/taikoxyz/taiko-mono/commit/b019975eb2d46251ddc80f0c3650e8e5a89d1dab)) +* **protocol:** Fix or improve comments (reported by Code4rena) ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** fix parent metahash check for the first block ([#16607](https://github.com/taikoxyz/taiko-mono/issues/16607)) ([ce9e67b](https://github.com/taikoxyz/taiko-mono/commit/ce9e67b35750b44c841346ed9fe7e8f2affd568f)) +* **protocol:** fix potential 1271 signature replay if proposers are smart contracts ([#16665](https://github.com/taikoxyz/taiko-mono/issues/16665)) ([2b27477](https://github.com/taikoxyz/taiko-mono/commit/2b27477ec0f9e5f0e0326d302531f93ff2c65de3)) +* **protocol:** fix recall not working with bridged tokens ([#15679](https://github.com/taikoxyz/taiko-mono/issues/15679)) ([dd2c33d](https://github.com/taikoxyz/taiko-mono/commit/dd2c33d46f6c1b461a7a7a2fb0e6ec647b768973)) +* **protocol:** fix revert reading blockhash (TKO-19) ([#15570](https://github.com/taikoxyz/taiko-mono/issues/15570)) ([465f7f4](https://github.com/taikoxyz/taiko-mono/commit/465f7f45511e8ab9c4fde66b2ddc11a9a114db34)) +* **protocol:** Fix sender EOA check (reported by OpenZeppelin) ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** fix signature reuse bug ([#16611](https://github.com/taikoxyz/taiko-mono/issues/16611)) ([ff2dc11](https://github.com/taikoxyz/taiko-mono/commit/ff2dc11f37e07299609c57ba2839a8216ab47b35)) +* **protocol:** fix singla service cannot be shared by multiple taiko L1/L2 contracts bug ([#15807](https://github.com/taikoxyz/taiko-mono/issues/15807)) ([a652ae8](https://github.com/taikoxyz/taiko-mono/commit/a652ae8dc0108e2799a449cce4e5f795f87908a1)) +* **protocol:** fix supportsInterface in BaseVault, fix typo and visibility ([#16600](https://github.com/taikoxyz/taiko-mono/issues/16600)) ([f6efe97](https://github.com/taikoxyz/taiko-mono/commit/f6efe975274cd95e33f98de6c6e5d7fc39d21966)) +* **protocol:** Fix taiko token domain separator ([#15717](https://github.com/taikoxyz/taiko-mono/issues/15717)) ([6e2771c](https://github.com/taikoxyz/taiko-mono/commit/6e2771c54e62e73715cfbe2e7d4fc5a2fb54cf5c)) +* **protocol:** imporve bridge `_proveSignalReceived` and fix genesis test ([#15641](https://github.com/taikoxyz/taiko-mono/issues/15641)) ([15f6995](https://github.com/taikoxyz/taiko-mono/commit/15f6995f82d7456458eeecf098bd0d02bc3afec4)) +* **protocol:** make `snapshot` return value ([#16436](https://github.com/taikoxyz/taiko-mono/issues/16436)) ([dcae54a](https://github.com/taikoxyz/taiko-mono/commit/dcae54a8f859aadb4ede4df054cab976984573af)) +* **protocol:** Make each transition contesting only dependent on it's own cooldown period (reported by OpenZeppelin) ([37fa853](https://github.com/taikoxyz/taiko-mono/commit/37fa853bd4d560a8ef0301437303f35f0d0c4c92)) +* **protocol:** mandate bridge message only calls onMessageInvocation ([#15996](https://github.com/taikoxyz/taiko-mono/issues/15996)) ([f7a12b8](https://github.com/taikoxyz/taiko-mono/commit/f7a12b8601937eef97068c3029c91dff431c03a8)) +* **protocol:** need to fix a bug in LibTrieProof (or its test) ([#15739](https://github.com/taikoxyz/taiko-mono/issues/15739)) ([ac1ca31](https://github.com/taikoxyz/taiko-mono/commit/ac1ca310846a075a663c119d404dc8f5f591eb9c)) +* **protocol:** new way to calculate meta.difficulty (TKO-11) ([#15568](https://github.com/taikoxyz/taiko-mono/issues/15568)) ([8c4b48e](https://github.com/taikoxyz/taiko-mono/commit/8c4b48e4ae2b8300de2282c7843ecf66e2fe22ae)) +* **protocol:** oz - use excessivelySafeCall instadd of `to.call(...)` ([#16145](https://github.com/taikoxyz/taiko-mono/issues/16145)) ([8d79dde](https://github.com/taikoxyz/taiko-mono/commit/8d79ddedf1f44b54f0a1750af7997e1adfa0a850)) +* **protocol:** prove signal with full merkle proofs against block state roots ([#15683](https://github.com/taikoxyz/taiko-mono/issues/15683)) ([e2f4bc2](https://github.com/taikoxyz/taiko-mono/commit/e2f4bc260c1bf0aa163927252dd737851ed6e63e)) +* **protocol:** remove an unused event ([#16054](https://github.com/taikoxyz/taiko-mono/issues/16054)) ([c7cca7d](https://github.com/taikoxyz/taiko-mono/commit/c7cca7de1c858fc63c4fbd729a031200ea23b203)) +* **protocol:** remove the blob-reuse feature ([284447b](https://github.com/taikoxyz/taiko-mono/commit/284447b369edde7b85e92da9ada5fd303c3446f7)) +* **protocol:** renounce timelock_admin role from msg.sender ([#16751](https://github.com/taikoxyz/taiko-mono/issues/16751)) ([abd18e8](https://github.com/taikoxyz/taiko-mono/commit/abd18e83fe6dfec9e53753d2607af845925e9928)) +* **protocol:** return liveness bond only to assigned prover ([2c63cb0](https://github.com/taikoxyz/taiko-mono/commit/2c63cb0c796495948f1dd887662044397394d852)) +* **protocol:** revert auto snapshot PR ([#16801](https://github.com/taikoxyz/taiko-mono/issues/16801)) ([ef00cae](https://github.com/taikoxyz/taiko-mono/commit/ef00caecb841c9a2697c4b37a4fe17bfed4665f2)) +* **protocol:** revert removing `proposedIn` (being used by node/client) ([#16644](https://github.com/taikoxyz/taiko-mono/issues/16644)) ([2c311e1](https://github.com/taikoxyz/taiko-mono/commit/2c311e1aea456bca815f8cbbe42b2f5810d0db9f)) +* **protocol:** set initial owner in the init() function without `acceptOwnership` ([#16071](https://github.com/taikoxyz/taiko-mono/issues/16071)) ([63cd7d3](https://github.com/taikoxyz/taiko-mono/commit/63cd7d3ba338b026c2d7836181dd9adb34bd6b45)) +* **protocol:** sync submodule commits ([#15656](https://github.com/taikoxyz/taiko-mono/issues/15656)) ([986cb63](https://github.com/taikoxyz/taiko-mono/commit/986cb6368d0dac0cf3beb3e6239464091a767ffe)) +* **protocol:** tstore is not suppported on L2 now ([#15802](https://github.com/taikoxyz/taiko-mono/issues/15802)) ([f44698e](https://github.com/taikoxyz/taiko-mono/commit/f44698ea21d70782d9b58c400aefda5c7e94ef6e)) +* **protocol:** update amounts emitted to match length with tokenIds ([#15898](https://github.com/taikoxyz/taiko-mono/issues/15898)) ([bfa0ca2](https://github.com/taikoxyz/taiko-mono/commit/bfa0ca2a7bc517d10b3eb77962c7a10527f97f14)) +* **protocol:** use IERC721Upgradeable instead of ERC721Upgradeable under ERC721Airdrop ([#16059](https://github.com/taikoxyz/taiko-mono/issues/16059)) ([b9ee868](https://github.com/taikoxyz/taiko-mono/commit/b9ee868d8893fd668be6cc209558794843e80b99)) +* **protocol:** Use safeMint with ERC721 ([#15636](https://github.com/taikoxyz/taiko-mono/issues/15636)) ([c12e2d7](https://github.com/taikoxyz/taiko-mono/commit/c12e2d75fff02dcd1b0f1edaa1781a30a1d4b4e1)) +* **protocol:** use safeTransferFrom (TKO-09) ([#15567](https://github.com/taikoxyz/taiko-mono/issues/15567)) ([30d771c](https://github.com/taikoxyz/taiko-mono/commit/30d771c42bc76a7115dc10a298cd8060fd5262cc)) +* **protocol:** use signature check to verify if msg.sender is EOA ([#16641](https://github.com/taikoxyz/taiko-mono/issues/16641)) ([b853c08](https://github.com/taikoxyz/taiko-mono/commit/b853c08eb82cf93bba81b51169c1add8b42f4b09)) +* **repo:** typos ([#16589](https://github.com/taikoxyz/taiko-mono/issues/16589)) ([8836e50](https://github.com/taikoxyz/taiko-mono/commit/8836e5029d32ca3c7d45321a8e48910680626704)) + + +### Reverts + +* **protocol:** revert update open-zeppelin contracts ([#15896](https://github.com/taikoxyz/taiko-mono/issues/15896)) ([994e29e](https://github.com/taikoxyz/taiko-mono/commit/994e29e67f68b2478c2e79ce28c9542fd048dc3c)) + + +### Documentation + +* **protocol:** fix typos ([#16189](https://github.com/taikoxyz/taiko-mono/issues/16189)) ([8546ef5](https://github.com/taikoxyz/taiko-mono/commit/8546ef5c59a7296bc9202afb85cb624df6373949)) + + +### Miscellaneous Chores + +* **protocol:** enforce naming convention ([#16168](https://github.com/taikoxyz/taiko-mono/issues/16168)) ([1f6a8af](https://github.com/taikoxyz/taiko-mono/commit/1f6a8afc472b5cbee45ee3cbf6635f140d329673)) + ## [1.4.0](https://github.com/taikoxyz/taiko-mono/compare/protocol-v1.3.0...protocol-v1.4.0) (2024-04-25) diff --git a/packages/protocol/package.json b/packages/protocol/package.json index 000e97bf07..95e66a20e0 100644 --- a/packages/protocol/package.json +++ b/packages/protocol/package.json @@ -1,6 +1,6 @@ { "name": "@taiko/protocol", - "version": "1.4.0", + "version": "1.5.0", "private": true, "scripts": { "buildMerkle": "ts-node ./utils/airdrop/buildMerkleTree.ts ./utils/airdrop/airdrop_db/example_claimList.json",