Skip to content

fix(contracts): fix #392 event hub emit gas and #395 flash loan reentry tests#482

Merged
Ceejaytech25 merged 2 commits into
ceejaylaboratory:mainfrom
Dopezapha:feature-fix-392-395-smart-contracts
May 31, 2026
Merged

fix(contracts): fix #392 event hub emit gas and #395 flash loan reentry tests#482
Ceejaytech25 merged 2 commits into
ceejaylaboratory:mainfrom
Dopezapha:feature-fix-392-395-smart-contracts

Conversation

@Dopezapha
Copy link
Copy Markdown
Contributor

Closes #395
Closes #392

PR Description

Fixes #392 by optimizing the Event Hub capture path so each captured event is stored by event ID instead of rewriting a growing persistent event log vector on every emit. This keeps the emit/archive write path constant time while preserving existing event query behavior for indexers.

Fixes #395 by adding focused Flash Loan reentrancy coverage with malicious receiver contracts that attempt nested single and batch flash loans during callbacks. The flash loan entry points now also use a temporary-storage reentrancy lock as defense in depth, while the tests assert Soroban rejects same-contract reentry.

Changed

@drips-wave
Copy link
Copy Markdown

drips-wave Bot commented May 29, 2026

@Dopezapha Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@Ceejaytech25
Copy link
Copy Markdown
Contributor

LGTM!

@Ceejaytech25 Ceejaytech25 merged commit 75d776e into ceejaylaboratory:main May 31, 2026
1 check failed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Smart Contracts] Flash Loan: Add reentrancy guard tests [Smart Contracts] Event Hub: Optimize gas usage on emit

2 participants