Reentrancy guard on external-calling functions
Polymarket's assessment for RD-F-014 — scored yellow on the v1.7.0 rubric. The evidence below is the curator's reasoning for this score.
Evidence summary #
CTF Exchange V1 (0x4bFb41d5...): nonReentrant guards present on fillOrder and matchOrders. CTF Exchange V2: reentrancy guard was removed per design — operator-only access model eliminates reentrancy vectors. The design rationale is sound but the absence of nonReentrant in V2 on ERC-1155 callback paths is a departure that warrants yellow.
Sources #
- URLCTF Exchange V2 — reentrancy guard removed by designSearch result confirming reentrancy guard removed in V2 per operator-only designretrieved 2026-04-29
- CTF Exchange V1 — reentrancy guards confirmedctf-exchange V1 CTFExchange.sol — nonReentrant on fillOrder, matchOrdersretrieved 2026-04-29
Methodology #
Determine whether all state-mutating functions that perform external calls carry `nonReentrant` or an equivalent reentrancy guard.
See the full factor methodology and distribution across all protocols →
rubric_version v1.7.0 protocol polymarket factor RD-F-014 score yellow collected_at 2026-04-29 16:25:39