Skip to content

fix(seismic-web3): resolve overloaded ABI functions - #296

Open
Kewe63 wants to merge 1 commit into
SeismicSystems:mainfrom
Kewe63:fix/295-overloaded-abi
Open

Kewe63 wants to merge 1 commit into
SeismicSystems:mainfrom
Kewe63:fix/295-overloaded-abi

Conversation

@Kewe63

@Kewe63 Kewe63 commented Sep 7, 2026

Copy link
Copy Markdown

Fixes #295

Summary

  • resolve overloaded Python contract functions from their supplied positional arguments
  • perform overload checks against remapped ABI inputs while preserving the original Seismic signature for selector construction
  • carry the selected overload through smart routing and output decoding
  • reject encoding-ambiguous overloads with MismatchedABI and support canonical-signature disambiguation
  • document overload resolution and the signature-qualified escape hatch

Testing

  • make ci — 295 passed; Ruff format/lint and ty check passed
  • uv run --isolated --python 3.10 pytest tests/test_abi.py tests/test_public_contract.py -q — 43 passed
  • uv run --isolated --python 3.11 pytest tests/test_abi.py tests/test_public_contract.py -q — 43 passed
  • uv run --isolated --python 3.12 pytest tests/test_abi.py tests/test_public_contract.py -q — 43 passed

The public regression fails on the pre-fix implementation with EncodingTypeError before provider dispatch. No live node or integration test was needed for this local ABI-resolution path; repository CI will run the node-backed integration jobs.

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.

seismic-web3: contract wrappers cannot resolve overloaded ABI functions

1 participant