Skip to content

feat: Synchronous Vault Composers - #1584

Merged
shankars99 merged 15 commits into
mainfrom
feat/ovault-evm
Aug 9, 2025
Merged

feat: Synchronous Vault Composers#1584
shankars99 merged 15 commits into
mainfrom
feat/ovault-evm

Conversation

@shankars99

Copy link
Copy Markdown
Collaborator

All PRs related to OVaults will be merged into this branch and treat it as the main branch.
Post audit this branch will be merged into main

@socket-security

socket-security Bot commented Jul 20, 2025

Copy link
Copy Markdown

Warning

Review the following alerts detected in dependencies.

According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.

Action Severity Alert  (click "▶" to expand/collapse)
Warn Medium
@layerzerolabs/scan-client-v2@0.0.1 is an Unpopular package.

Location: Package overview

From: packages/ovault-evm/package.jsonnpm/@layerzerolabs/scan-client-v2@0.0.1

ℹ Read more on: This package | This alert | What are unpopular packages?

Next steps: Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support@socket.dev.

Suggestion: Unpopular packages may have less maintenance and contain other problems.

Mark the package as acceptable risk. To ignore this alert only in this pull request, reply with the comment @SocketSecurity ignore npm/@layerzerolabs/scan-client-v2@0.0.1. You can also ignore all packages with @SocketSecurity ignore-all. To ignore an alert for all future pull requests, use Socket's Dashboard to change the triage state of this alert.

View full report

@shankars99
shankars99 force-pushed the feat/ovault-evm branch 3 times, most recently from a821e27 to b8258f1 Compare July 20, 2025 19:32
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol
Comment thread examples/ovault-evm/contracts/MyOVault.sol Outdated
Comment thread packages/ovault-evm/contracts/OVault.sol Outdated
Comment thread packages/ovault-evm/contracts/OVaultComposer.sol Outdated
@shankars99
shankars99 force-pushed the feat/ovault-evm branch 2 times, most recently from de69735 to d898f24 Compare July 25, 2025 20:46
@shankars99 shankars99 added pending_audit ready to review in a state where CI passes and the PR is quite upto date with main and you need reviews do not merge and removed do not merge labels Jul 25, 2025
@St0rmBr3w

Copy link
Copy Markdown
Contributor

@shankars99 can we remove the pending audit label?

Comment thread examples/ovault-evm/contracts/MyOVault.sol Outdated
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol Outdated
@shankars99

Copy link
Copy Markdown
Collaborator Author

@shankars99 can we remove the pending audit label?

It's ongoing, we're waiting on the second audit. Once it's back I'll take it off and we can merge

@yota-toyama-lz yota-toyama-lz left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just finished looking at some example files. As I'm a newbie, some of them are more like questions. But if you can answer them, I would appreciate that!

Comment thread examples/ovault-evm/script/ExecutorCompose302.s.sol Outdated
Comment thread examples/ovault-evm/script/ExecutorCompose302.s.sol Outdated
Comment thread packages/ovault-evm/.gitignore Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated
Comment thread examples/ovault-evm/script/SendScript.s.sol Outdated

@yota-toyama-lz yota-toyama-lz left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I looked at the main contract codes. So I'm submitting partial reviews on them. Some of them are already answered by @TRileySchwarz as they are resolved.

Again, I'm a blockchain newbie. So if anything doesn't make any sense, let me know!

Comment thread packages/ovault-evm/contracts/interfaces/IVaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/interfaces/IVaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/interfaces/IVaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol Outdated
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol
Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol Outdated

@yota-toyama-lz yota-toyama-lz left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I put another small comment.

Comment thread packages/ovault-evm/contracts/VaultComposerSync.sol
@shankars99 shankars99 changed the title feat: OVaults feat: Synchronous Vault Composers Aug 7, 2025
@socket-security

socket-security Bot commented Aug 8, 2025

Copy link
Copy Markdown

@shankars99
shankars99 requested review from a team August 8, 2025 02:29
EWCunha
EWCunha previously approved these changes Aug 8, 2025
shankars99 and others added 15 commits August 9, 2025 00:58
Signed-off-by: shankar <shankar@layerzerolabs.org>

feat: ovault composer (#1583)

Signed-off-by: shankar <shankar@layerzerolabs.org>

rename: ovault-composer-evm to ovault-evm (#1587)

Signed-off-by: shankar <shankar@layerzerolabs.org>

ovault examples (#1588)

Signed-off-by: shankar <shankar@layerzerolabs.org>

ovault example changes (#1590)

Signed-off-by: shankar <shankar@layerzerolabs.org>

ovault cleanup #1 (#1594)

Signed-off-by: shankar <shankar@layerzerolabs.org>

audit patches + improvement (#1600)

Signed-off-by: shankar <shankar@layerzerolabs.org>

Ovault/improvements (#1603)

Signed-off-by: shankar <shankar@layerzerolabs.org>

example to match package

Signed-off-by: shankar <shankar@layerzerolabs.org>

virtual on _executeOVaultAction

Signed-off-by: shankar <shankar@layerzerolabs.org>

Ovault/source is hub (#1606)

Signed-off-by: shankar <shankar@layerzerolabs.org>

fix: deposit actions (#1610)

Signed-off-by: shankar <shankar@layerzerolabs.org>

ovault - standardize event emitted during entry of failed state in lzCompose  (#1611)

Signed-off-by: shankar <shankar@layerzerolabs.org>

update to match package

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-5: skip removeDust() on slippage check when dstEid=hub

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-9: token.safeTransfer(..args) instead of transfer

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-4: refuse msg.value on proxySend() when dstEid is the hub

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-12: remove duplicated safeERC20 import and library usage

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-13: initialize() for upgradeable

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-14: remove unused interface errors

Signed-off-by: shankar <shankar@layerzerolabs.org>

to match packages

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-11: remove duplication in retry()

Signed-off-by: shankar <shankar@layerzerolabs.org>

copy-pasta ERC4626 caution/warning from OpenZepplin on donation attack

Signed-off-by: shankar <shankar@layerzerolabs.org>

issue-11: remove duplication in constructor - IOFT.decimalConversionRate()

Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Co-authored-by: Blockchain Warlock <39101443+TRileySchwarz@users.noreply.github.com>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Co-authored-by: Shankar Subramanian <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Signed-off-by: shankar <shankar@layerzerolabs.org>
Co-authored-by: Blockchain Warlock <39101443+TRileySchwarz@users.noreply.github.com>
Co-authored-by: Krak <krak@layerzerolabs.org>
@shankars99
shankars99 requested review from a team and TRileySchwarz and removed request for a team August 9, 2025 01:00

@St0rmBr3w St0rmBr3w left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@shankars99
shankars99 merged commit 500c25c into main Aug 9, 2025
16 of 18 checks passed
@shankars99
shankars99 deleted the feat/ovault-evm branch August 9, 2025 01:25
mattsse pushed a commit to mattsse/devtools that referenced this pull request Aug 12, 2025
Signed-off-by: shankar <shankar@layerzerolabs.org>
Co-authored-by: Blockchain Warlock <39101443+TRileySchwarz@users.noreply.github.com>
Co-authored-by: Matthew Krak <krak@layerzerolabs.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready to review in a state where CI passes and the PR is quite upto date with main and you need reviews

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants