Categories
Every model finding carries exactly one of these ten categories. Slither detectors are mapped onto the same list where they fit.
| Category | What it covers |
|---|---|
reentrancy | External calls before state updates, cross-function and read-only reentrancy |
access_control | Missing or wrong permission checks, unprotected initialisers, tx.origin auth |
arithmetic | Overflow in unchecked blocks or old compilers, precision loss, rounding in the wrong direction |
unchecked_call | Ignored return values of call, send and ERC-20 transfers |
front_running | Transaction ordering dependence, missing slippage or deadline checks |
oracle_manipulation | Spot prices from pools, stale or unchecked oracle answers |
flash_loan | Logic that a single-block loan can bend: votes, collateral, share prices |
denial_of_service | Unbounded loops, griefing through reverts, locked funds |
centralization | Owner powers that can drain, pause forever or rewrite the rules |
tokenomics | Mint and fee logic, supply caps, transfer hooks that break expectations |
A Slither detector with no matching category (naming conventions, solc version pragmas, dead code) is listed as other. These rarely cost points.
Matching model and Slither findings
A model finding is confirmed by static analysis when a Slither finding:
- names the same file,
- overlaps its line range within three lines, and
- maps to a compatible category (for example
reentrancy-ethandreentrancy-no-ethtoreentrancy,unchecked-transfertounchecked_call,arbitrary-send-ethtoaccess_control).
Confirmed findings show "AI + Slither" in the report.