Transient-storage misuse detector
A source-level triage tool for dangerous EIP-1153 shapes. It identifies candidates for review; it does not declare a contract vulnerable.
Get the source
The full repo — scanner, harvesting pipeline, and the five ground-truth Solidity fixtures used by its self-test — is public on GitHub under the MIT license. It has no package dependencies.
Run it
git clone https://github.com/notonelikeme-cmd/tstore-research cd tstore-research python3 detector/tstore_scan.py --selftest python3 detector/tstore_scan.py path/to/Contract.sol
The scanner works from Solidity text, including flattened explorer source. Python 3.9+ is sufficient; no compiler, RPC endpoint, or package installation is required.
What it reports
- P4 · highAn uncleared transient slot used in an authorization check.
- P5 · reviewA value passed across callbacks through an uncleared slot.
- P3 · reviewOne slot reused for distinct non-boolean values.
- P1/P2 · reviewUncleared named slots and calls made while a slot is live.
Scope and limits
This version targets inline-assembly tstore/tload patterns and is not path-sensitive. A hit is an investigation lead, not a finding. It does not cover Solidity's higher-level transient variables, and no output should be treated as proof that a contract is sound.
Want this kind of look at your contracts?
This is the depth Nexus Trinity brings to a review — read the code that holds funds, measure it against reality, and prove what's wrong before someone else does.
Request a review