benjiprojects1404 Get a review like this

Security review · 2 October 2026

Reef, Nodal, Handshake and $COOKED

Every live contract behind these four projects was read line by line, run through automated analysis, tested with attacks, and matched against its published source on chain. No critical or high-severity issues were found.

11live contracts reviewed
10 of 11matched to source on chain
64tests, all passing
0critical or high findings
This is an AI-assisted review, not an independent audit. It was carried out with AI tools under the developer's direction, by the same developer who built these projects. It can't promise there are no bugs. All four projects stay in beta until an independent audit is done.

What was checked

"Matched on chain" means the code at the address is exactly what the published source compiles to, ignoring only the compiler's metadata stamp and values fixed at deployment.

ProjectContractAddressOn chain
ReefFactory0x9603042044b6B1A1637c508F731ba01219142239Matched
ReefRouter0xbd6fbA41Ab84292163A599510a12d6Bf8B7CCc76Matched
ReefWBDAG0x62ba5c4F067989a7f6644488C875bEa69Bfa1FBAMatched
ReefTWAP price oracle0xa461aAe6Ba4bDb68192D2a53e60640053a35FF7bMatched
AllAdmin multisig (2-of-2)0x4E2401bFD24c66166fABF9Cc5cD5B6B2c5c860fcMatched
NodalNodalRouter0xA06f8a856896aA1836f04F758C1E5Ac5dbe24672Matched
NodalReef adapter0x4b60D344eDA7E3D859739B5AbC1176d756E22d56Matched
HandshakeOTC escrow0xD907701A2D96f7D0E7596b02737C9F36446cf5CAMatched
$COOKEDBonding curve0xD8a25883dd2576cB7eE7803e23f0309F56bAbA2BMatched
$COOKEDToken0xd95C548B144682f4EF49728944505D8506861B1BMatched
NOCAPLP lock0x5520cC4E80E86E99c5A6A748C506d80f0d274bB1Settings match

The LP lock's functions and settings match its source, but its bytecode didn't rebuild exactly from the file. On 2 October it held 99.99% of the NOCAP/BDAG pool's LP tokens, locked until 25 March 2027.

Findings

Medium: a real risk under specific conditions. Low: no way to steal funds, but value can be lost or stuck in an edge case. Note: worth knowing.

IDContractSeverityFindingStatus
M-1Admin multisigMediumA removed owner's earlier approvals still count, so a pending transaction could pass with fewer current owners than required.No exposure today: a 2-of-2 can't remove an owner and nothing is pending. Fixed version ready for the move to 2-of-3.
L-1HandshakeLowIf the fee wallet couldn't receive BDAG, fills would fail. Cancels still work.The fee wallet is a plain wallet.
L-2HandshakeLowAsking for a token with a transfer tax pays the maker less than asked.Warning in the Handshake FAQ.
L-3HandshakeLowA token that blocks or pauses the escrow freezes its offers until it unblocks.Warning in the Handshake FAQ.
L-4Reef routerLowTokens with a transfer tax can be bought but not sold through Reef.Explained in the Reef docs.
L-5NodalRouterLowThe owner can point a liquidity source at any contract; users are protected by their minimum-output check.Accepted. The app always sets a minimum, and the owner is the multisig.
L-6Admin multisigLowA transaction whose inner call failed stays executable by anyone until revoked.Policy: revoke any failed transaction straight away.
O-1TWAP oracleNoteReturns 0 before its first update and doesn't report how old its average is.Nothing relies on it on chain.
N-1HandshakeNoteOffers never expire, so a forgotten offer can fill at an old price.Cancel offers you no longer want.

Reef's contracts are Uniswap V2 ported to Solidity 0.8 with the names changed; the logic was compared line by line with the original. Nobody, including the developer, can pause Reef, freeze a pool or move funds out of one. On Handshake, the owner has no function that touches a live offer's funds.

How it was done

  1. Every contract read line by line; Reef compared with Uniswap V2's published code.
  2. Slither, the standard automated analyser, run on every contract with the deployed compiler settings, and each flag checked by hand.
  3. Tests written for anything that looked wrong, so findings are shown to be real, not guessed. 64 tests pass, covering normal use, attacks and random sequences of trades.
  4. Each address's code read from chain on 2 October 2026 and compared with what the published source compiles to.

Not covered: the $REEF token and presale contracts, the NOCAP token, the websites (except where they set a swap's minimum output), the BlockDAG chain itself, and anything deployed after 2 October 2026.