← Transient Storage in the Wild
OPEN SOURCE · MIT

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
✉️Email us