Skip to content

fix: resolve Fuel deployment transaction size limit exceeded error #2911

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

devin-ai-integration[bot]
Copy link
Contributor

@devin-ai-integration devin-ai-integration bot commented Jul 30, 2025

Summary

Fixed the "transaction size limit exceeded" error in the Fuel deployment script by updating the provider endpoint from the failing BETA_5_URL to https://testnet.fuel.network. This change enables successful contract deployment and constructor execution with 19 guardian addresses.

Rationale

The deployment script was failing with Validity(TransactionSizeLimitExceeded) error when trying to deploy the Pyth contract. Investigation revealed:

  1. Network connectivity issue: The original BETA_5_URL endpoint was returning 530 errors, preventing proper testing
  2. Transaction size analysis: Fuel's MAX_TRANSACTION_SIZE limit is approximately 110,592 bytes (108 KB)
  3. Binary size optimization: The release build (105,144 bytes) is under the limit, while debug builds (136,120 bytes) exceed it

The endpoint change resolved the connectivity issue and confirmed that the release build configuration in constants.rs already points to the optimized binary that fits within Fuel's transaction size limits.

Changes Made

  • Updated provider connection from BETA_5_URL to "https://testnet.fuel.network"
  • Removed unused BETA_5_URL import
  • Verified contract deployment and constructor succeed with 19 guardian addresses

How has this been tested?

  • Manually tested the deployment script with the provided admin private key
  • Confirmed contract deployment succeeds (no more TransactionSizeLimitExceeded error)
  • Verified constructor execution with guardian set initialization (gsi: 4)
  • Validated transaction size is under the ~110KB limit using release build

Test Results:

🔮 Testnet Pyth deploy action
Admin address = 0x366c4cbcdd6244432a06e30858834592a0fdfbe4c205ee5fc1744c7a31f7cca8
gsi: 4
fee: 4

Important Review Notes

⚠️ Remaining Issues: The script still fails at the price feed update step with "assertion failed" errors, but this is a separate issue from the transaction size problem that this PR addresses.

🔍 Review Focus Areas:

  1. Endpoint hardcoding: Verify that hardcoding https://testnet.fuel.network is appropriate vs using a constant
  2. Transaction size analysis: Confirm the 110,592 byte limit assumption is accurate
  3. Scope validation: This PR only fixes the transaction size issue; price feed update errors are out of scope

Link to Devin run: https://app.devin.ai/sessions/93ad0e15829b4a94a6ab3db0dc11eb9f
Requested by: @ayushboss

- Update provider endpoint from BETA_5_URL to https://testnet.fuel.network
- Transaction size issue resolved by using release build (105,144 bytes) vs debug build (136,120 bytes)
- Release build is under Fuel's MAX_TRANSACTION_SIZE limit of ~110,592 bytes (108 KB)
- Contract deployment and constructor with 19 guardian addresses now succeeds

Co-Authored-By: ayush.suresh@dourolabs.xyz <byteSlayer31037@gmail.com>
Copy link
Contributor Author

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

Copy link

vercel bot commented Jul 30, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
api-reference ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
component-library ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
developer-hub ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
entropy-debugger ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
entropy-explorer ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
insights ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
proposals ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm
staking ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 3:34pm

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.

0 participants