Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
📝 Coding Plan
Comment Tip CodeRabbit can use TruffleHog to scan for secrets in your code with verification capabilities.Add a TruffleHog config file (e.g. trufflehog-config.yml, trufflehog.yml) to your project to customize detectors and scanning behavior. The tool runs only when a config file is present. |
f07a607 to
2fd1eb6
Compare
2fd1eb6 to
0d63802
Compare
Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
* Start release candidate * Fix local docs generation (#320) * remove properties symlink * add properties.js * lint fix * Remove backwards compatibility from Batcher (#321) * Remove backwards compatibility from Batcher * Apply suggestion from @arr00 * Validate `fromToken` and `toToken` on construction (#322) * Validate `fromToken` on construction * use `ERC165Checker` * check toToken as well * directly validate to and from token * Add additional functions to `IERC7984ERC20Wrapper` (#323) * remove incorrect docs on `unwrap` function * add finalize unwrap and rate to wrapper interface * update batcher to use unwrap request ids instead of unwrap amounts * add `unwrapAmount` to wrapper interface for unwrap request introspection * additional docs * call getter for `unwrapAmount` in `finalizeUnwrap` * update events and errors appropriately * remove `ERC7984ERC20Wrapper` import * fix import order * Move events to interface from `ERC7984ERC20Wrapper` * add note on request id for `unwrap` * change mapping to be of `bytes32` identifiers * add changeset * Allow claiming on behalf of another account in batcher (#324) * Allow claiming on behalf of another account in batcher * revert on claim if users not part of the batch * add error on quit too * Add additional warnings to the batcher (#325) * Return a bytes32 unwrap id from the `_unwrap` function in `BatcherConfidential` (#326) * Return a bytes32 unwrap id from the `_unwrap` function in `BatcherConfidential` * modify warning * Document possible rounding down of user deposits (#327) * Document possible rounding down of user deposits * add contract level comment as well * up * Release v0.4.0 (rc) (#318) * Release v0.4.0 (rc) * update changelog * update changelog * Apply suggestion from @james-toussaint Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com> Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com> * Update node version to 24.x in CI (#328) * Exit release candidate * Release v0.4.0 (#335) * Release v0.4.0 * update changelog * remove changelog duplicate --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com> --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Arr00 <13561405+arr00@users.noreply.github.com> Co-authored-by: James Toussaint <33313130+james-toussaint@users.noreply.github.com>
This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and publish to npm yourself or setup this action to publish automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to release-v0.4, this PR will be updated.
release-v0.4is currently in pre mode so this branch has prereleases rather than normal releases. If you want to exit prereleases, runchangeset pre exitonrelease-v0.4.Releases
openzeppelin-confidential-contracts@0.4.0-rc.0
openzeppelin-confidential-contracts
0.4.0-rc.0 (2026-03-12)
@fhevm/soliditydependency to0.11.1(#311)Token
ERC7984ERC20Wrapper: use a bytes32 unwrap request identifier instead of identifying batches by the euint64 unwrap amount. (#326)ERC7984ERC20Wrapper: Support ERC-165 interface detection onERC7984ERC20Wrapper. (#267)ERC7984ERC20Wrapper: return the amount of wrapped token sent on wrap calls. (#307)ERC7984ERC20Wrapper: return unwrapped amount onunwrapcalls (#288)ERC7984Restricted,ERC7984Rwa: RenameisUserAllowedtocanTransact(#291)ERC7984ERC20Wrapper: revert on wrap if there is a chance of total supply overflow. (#268)Finance
BatcherConfidential: A batching primitive that enables routing between twoERC7984ERC20Wrappercontracts via a non-confidential route. (#293)Utils
HandleAccessManager: change_validateHandleAllowanceto return a boolean and validate it. (#303)0.3.1 (2026-01-06)
Bug fixes
ERC7984ERC20Wrapper: revert on wrap if there is a chance of total supply overflow. (#268)0.3.0 (2025-11-28)
@fhevm/solidityfrom v0.7.0 to 0.9.1 (#202, #248, #254)Token
ConfidentialFungibleTokenfiles and contracts to useERC7984instead. (#158)ERC7984: ChangetokenURI()tocontractURI()following change in the ERC. (#209)ERC7984: Support ERC-165 interface detection on ERC-7984. (#246)IERC7984: ChangetokenURI()tocontractURI()following change in the ERC. (#209)IERC7984: Support ERC-165 interface detection on ERC-7984. (#246)ERC7984Omnibus: Add an extension ofERC7984that exposes new functions for transferring between confidential subaccounts on omnibus wallets. (#186)ERC7984ObserverAccess: Add an extension for ERC7984, which allows each account to add an observer who is given access to their transfer and balance amounts. (#148)ERC7984Restricted: An extension ofERC7984that implements user account transfer restrictions. (#182)ERC7984Freezable: Add an extension toERC7984that implements internal functions with the ability to freeze/unfreeze user tokens. (#151)ERC7984Rwa: An extension ofERC7984, that supports confidential Real World Assets (RWAs). (#160)Utils
FHESafeMath: AddtryAddandtrySubfunctions that return 0 upon failure. (#206)FHESafeMath: Support non-initialized inputs intryIncrease(..)/tryDecrease(..). (#183)0.2.0 (2025-08-14)
@fhevm/solidity0.7.0. (#27)Token
IConfidentialFungibleToken: PrefixtotalSupplyandbalanceOffunctions with confidential. (#93)IConfidentialFungibleToken: RenameEncryptedAmountDisclosedevent toAmountDisclosed. (#93)ConfidentialFungibleToken: Change the default decimals from 9 to 6. (#74)ConfidentialFungibleTokenERC20Wrapper: Add an internal function to allow overriding the max decimals used for wrapped tokens. (#89)ConfidentialFungibleTokenERC20Wrapper: Add an internal function to allow overriding the underlying decimals fallback value. (#133)Governance
VotesConfidential: Add votes governance utility for keeping track of FHE vote delegations. (#40)ConfidentialFungibleTokenVotes: Add an extension ofConfidentialFungibleTokenthat implementsVotesConfidential. (#40)Finance
VestingWalletConfidential: A vesting wallet that releases confidential tokens owned by it according to a defined vesting schedule. (#91)VestingWalletCliffConfidential: A variant ofVestingWalletConfidentialwhich adds a cliff period to the vesting schedule. (#91)VestingWalletConfidentialFactory: A generalized factory that allows for batch funding of confidential vesting wallets. (#102)Misc
HandleAccessManager: Minimal contract that adds a function to give allowance to callers for a given ciphertext handle. (#143)ERC7821WithExecutor: Add an abstract contract that inherits fromERC7821and adds anexecutorrole. (#102)CheckpointsConfidential: Add a library for handling checkpoints with confidential value types. (#60)TFHESafeMath: Renamed toFHESafeMath. (#137)