Skip to content

Conversation

@bbyalcinkaya
Copy link
Member

@bbyalcinkaya bbyalcinkaya commented Jan 19, 2026

This PR includes several fixes and missing host function implementations required to run 9lives tests for milestone 7.

Changes

  • Fix argument type list parsing: Corrects parsing of ABI argument type lists when building fuzzing strategies, which previously caused mismatches for functions with composite or repeated argument types.
  • Increase fuzzing deadline and Python recursion depth limit: Relaxes execution limits to better support more complex contracts, preventing premature timeouts and recursion errors during fuzzing.
  • Disable #hasValidInitCode check: Disables a contract bytecode validation that is not applicable to the current Stylus contracts and was blocking valid test cases.
  • Implement missing host functions:
    • msg_sender for accessing the caller address.
    • native_keccak256 for hash computations used in contract logic.
    • transient_load_bytes32 and transient_store_bytes32 for transient storage access.
    • exit_early for tracing.

Motivation
These changes unblock and stabilize the 9lives test suite under the current Skribe execution model and milestone 7 requirements.

Notes

  • Changes are scoped to test compatibility and execution reliability.
  • No functional behavior changes beyond bug fixes, required host support and limits.

bbyalcinkaya and others added 30 commits December 4, 2025 13:15
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.

3 participants