For the hub in particular we will require methods for:
tagging a collection of cells in a column for future update
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
tagging rows for potential future row insertion
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.
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.