Skip to content

feat(soroban-footprint-diff): compare simulation footprint access modes offline - #494

Merged
egekoca merged 3 commits into
RevenantLabs:mainfrom
Caneryy:feat/soroban-footprint-diff
Sep 30, 2026
Merged

egekoca merged 3 commits into
RevenantLabs:mainfrom
Caneryy:feat/soroban-footprint-diff

Conversation

@Caneryy

@Caneryy Caneryy commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Adds an offline Soroban Footprint Difference Inspector that compares two pasted simulation-result JSON payloads.

  • Validates simulation JSON shape before decoding keys
  • Diffs additions, removals and read-only ↔ read-write mode changes
  • Treats the same key in both read sets as an access-mode conflict
  • Shows optional resource/fee fields only when present, labeled as simulation output
  • Caps paste size and never persists payloads

Files

Entire slice under features/soroban-footprint-diff/ (35 files, networks: [], offline: true).

Out of scope

  • No re-running simulation
  • No transaction submission
  • No changes outside this feature folder

Test plan

  • npm run verify:features -- soroban-footprint-diff
  • npm test -- --run features/soroban-footprint-diff

Closes #472

@drips-wave

drips-wave Bot commented Sep 29, 2026

Copy link
Copy Markdown

@Caneryy 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

egekoca and others added 2 commits September 30, 2026 17:54
contract() on a contractData LedgerKey returns an ScAddress union
(account or contract), not raw bytes; calling .toString("hex")
directly on it doesn't type-check and wasn't decoding anything
meaningful. Branch on the address kind and take the actual bytes
(contractId() or accountId().ed25519()) before hex-encoding.
@egekoca
egekoca merged commit a36170d into RevenantLabs:main Sep 30, 2026
1 check passed
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.

[Soroban] Soroban Footprint Difference Inspector

2 participants