You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Per-callback bytecode isolation: risk analysis now runs on each callback's own isolated code path — from its dispatcher JUMPDEST to its terminator — instead of scanning the whole contract. Eliminates false positives where one callback's SSTORE/CALL flagged unrelated callbacks.
Real dispatcher jumpdest capture: the dispatcher parser now understands PUSH4 selector → EQ → PUSH2 dest → JUMPI and records the actual handler entry PC (previously hardcoded to 0, which made isolation impossible).
Unit tests for dispatcher parsing and segment isolation on synthetic bytecode.
Fixes
Fixed index-vs-PC confusion in segment extraction (bytecode PCs were being used as instruction indices).
Fixed premature segment termination on internal JUMPDESTs (conditional branches no longer cut analysis short).
Notes
Static analysis remains point-in-time only. Upgradeable hooks (EIP-1967) can change implementation between scan and interaction.