Consensys / corset

4 stars 12 forks source link

Two tracing features #31

Closed OlivierBBB closed 8 months ago

OlivierBBB commented 10 months ago

For the hub in particular we will require methods for:

E.g. filling in CN_WILL_REVERT, CN_SELF_REVERT, CN_GETS_REVERTED, CN_REVERT_STAMP requires knowing wether the context will revert, reverts on its own or inherits a rollback from an ancestor context reverting + the time stamp of the revert

E.g. reversible operations on accounts (such as reading it and thereby changing its warmth, modifying its balance by sending value through a CREATE / CALL type instruction, modifying it by increasing its nonce through a CREATE-type instruction) but also storage through STOREs and SLOADs (warmth). The way they are undone is by inserting a row at the time these operations are logged in the Trace. During execution it is unknown whether this row must be inserted or not.

delehef commented 8 months ago

Solved at the trace generation level.