Smart Contract Audit

Auditor: Solidproof | Audit ID: 88b99f3a | Status: the audit covered an earlier version of the voting contract. Its one critical and three high findings were remediated in a later version. The contracts running today were deployed after the audit and have not themselves been audited.

View audit on Solidproof portal →

Contracts running today (deployed after the audit, not themselves audited)

Contract Address
TTS Token (deployed directly, no proxy, not upgradeable) 0x5570eA97d53A53170e973894A9Fa7feb5785d3b9
TTSVotingV3d (Active) 0x783b8cd80b586b723188c93ef94ee1beede617b4
TTSStaking (Proxy) 0x7848cceEb8613375D36BA3f50dD577B4E6BCfc0d
Trophy NFT 0x02DDd0e63DC2A5F66Fdb5a46F5981191959AC9A5

Finding Summary — Voting Contract

ID Severity Title Status
C-1 Critical Vote cap check prevents any vote ✅ Fixed
H-1 High Settlement callback gas limit ✅ Fixed
H-2 High Zero wallet address traps funds ✅ Fixed
H-3 High ERC-20 transfer return unchecked ✅ Fixed (SafeERC20)
M-1 Medium Admin can redirect club share during VRF window ⚠️ Acknowledged
M-2 Medium NFT contract gas-bomb ✅ Fixed (gas cap)
M-3 Medium Round unrecoverable if VRF fails ✅ Fixed (adminResetSettlement)
M-4 Medium Single-step ownership ⚠️ Acknowledged
M-5 Medium CEI pattern in vote() ✅ Accepted (non-exploitable, TTS is standard ERC-20)

Finding Summary — Token Contract

ID Severity Title Status
M-1 Medium Zero-value transfer guard ❌ Not fixed on the live token. The token is not upgradeable, so the fix never took effect: a zero-value transfer between two non-exempt addresses still reverts (re-tested 2026-09-25).
M-2 Medium Centralization / wallet updates ✅ Mitigated (Gnosis Safe 2/2)
M-3 Medium Rounding dust ⚠️ Acknowledged (negligible)

Audit completed by Solidproof. All contracts deployed on Base Mainnet (chainID 8453). View Trust & Security page →