Skip to content

feat(invariant): use storage layout to fuzz values from state by type  #8116

@grandizzy

Description

@grandizzy

Component

Forge

Describe the feature you would like

Values collected from state change set in invariant runs are added to dictionary and used for subsequent fuzzed inputs. However their type is not identified (as we do for values scraped from function results or event logs) so their relevance is diminished (e.g. not relevant to collect an address value from change set and use it to fuzz uints)
This could be hard to add for complex custom types (for example mappings with structs) but even supporting this for simpler vars could improve testing campaigns outcome (StorageLayout could be leveraged for such).

Additional context

No response

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Completed

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions