fix: split entry size into different Data and Wasm limits#2163
Merged
marcelosalloum merged 2 commits intoJul 24, 2026
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Splits ContractData and Wasm entry limits and corrects transaction resource calculations.
Changes:
- Adds and fetches the 64 KiB ContractData entry limit.
- Displays separate ContractData and Wasm limits.
- Updates resource calculations and end-to-end coverage.
Reviewed changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
scripts/fetch-network-limits.mjs |
Fetches and generates the ContractData limit. |
src/constants/networkLimits.ts |
Adds generated limits for all networks. |
src/app/(sidebar)/network-limits/page.tsx |
Splits the entry-size display rows. |
src/helpers/getTxResourceBreakdown.ts |
Uses the ContractData limit. |
tests/e2e/networkLimitsPage.test.ts |
Verifies both displayed limits. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
Preview is available here: |
Contributor
|
I will move the fetch limits logic into backend once stellar/laboratory-backend#83 is merged! |
jeesunikim
approved these changes
Jul 24, 2026
The JSDoc still cited the old combined 128 KiB entry-size limit; the code now uses contract_data_entry_size_bytes (65,536 bytes).
|
Preview is available here: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Why
contract_max_size_bytes(128 KiB) labeled as the size limit for all ledger entries, but that setting only caps ContractCode (Wasm) entries. ContractData entries are capped bycontract_data_entry_size_bytesat 64 KiB, which the page didn't show at allVerify
Compare the page against the live mainnet config:
Also, had AI working on test contracts that validated these are indeed the limits on the chain.