In this track: Execution traces and low-level calls
advanced · 4 MIN READ
Static context restrictions
Read-only execution rules extend across nested execution.
LET’S PICTURE IT
A no-edit inspection cannot bypass its restrictions by asking another desk to make the edit.
SEE IT FOR YOURSELF
A valid counter call, step by stepStep 1 / 4
This example begins with count zero and a request to call increment(). No real contract is deployed.
This example begins with count zero and a request to call increment(). No real contract is deployed.Execution follows the code’s input and permission rules. A website button is not the access-control mechanism.The function reads zero, calculates zero plus one, and writes one to persistent storage.The accepted state contains count one. Later reads can inspect it. Events are emitted only if the code implements them.
Animated local teaching model. No wallet, RPC or live blockchain data. Some labels and hashes are abbreviated for readability.
Start with the runtime restriction
A frame entered through STATICCALL executes in static context. Certain effects, including storage writes and logs, are prohibited under that context.
Propagate through nested calls
Calling another address does not automatically remove the restriction. The nested execution must still respect the static rules inherited from its context.
Allow temporary computation
Static execution can use stack and memory to compute results. Read-only restrictions are not a ban on all temporary working-state changes.
Avoid a trust shortcut
A static call can fail, be expensive or return arbitrary bytes. Read-only execution is an effect restriction, not a security review or a truthful-data certificate.
Follow the execution
Static frame:
stack and memory computation: allowed
persistent storage write: prohibited
LOG emission: prohibited
misleading output: still possible
A local conceptual trace with explicit assumptions; this is not a trace of a live transaction.
QUICK CHECK · NO PRESSURE
Can static execution use temporary memory?
Temporary memory computation is distinct from prohibited effects.