One claim intent. Three execution outcomes.
Every contract exposes the exact same claimRewards() function. Free inspection decodes all three without a warning. Paid preflight uses live Tenderly traces and current chain state to decide what the wallet should actually sign.
- Zero-fee inspection
- All three: ALLOW · risk 8
- Secure preflight
- 0.003 USD₮0 per completed x402 call
- Evidence
- Tenderly trace · recorded July 15, 2026
The shared agent intent
The contract and token address change; the requested action does not.
- Action
- claim
- Function
claimRewards()- Minimum output
- 1 token
- Approval policy
- Maximum 0
- Recipient
0xc1faa7AF70C81837873EA79608311BEa310BF03d
The selector is 0x372500ab in every case. Inspection proves that the calldata is a recognized claim call. It cannot prove whether the call will revert or create an undeclared approval; that requires simulation.
What live preflight found
Same calldata shape, evaluated against three deployed contracts and their current state.
PhishingRewardsToken
The claim pays the advertised reward, then silently authorizes the attacker to spend the wallet's entire token balance.
- +1 pTOKEN delivered to the agent wallet
- Unlimited attacker allowance (MAX_UINT256)
- No revert: the dangerous transaction would execute
UNEXPECTED_APPROVAL_CHANGEUNLIMITED_APPROVALAPPROVAL_LIMIT_EXCEEDEDSafeRewardsToken
The contract is benign, but this wallet has already used its one claim. Current state makes the proposed transaction invalid.
- No reward transfer because execution reverts
- No approval or permission changes
- The required minimum output is not delivered
SIMULATION_REVERTEDMINIMUM_OUTPUT_NOT_METRisk 80 on the one-time safe contract does not label its code malicious. It records a blocking execution failure: the call reverts and delivers none of the required output.
RepeatableSafeRewardsToken
The reward is available, the transfer matches intent, and the call creates no hidden authority for another address.
- +1 rsTOKEN delivered to the agent wallet
- No approval or permission changes
- Up to 10 claims per account; 10,000 claims globally
Why the split matters
Decoding answers what was called. Preflight answers whether this wallet should sign it now.
All calls are recognized and contain no obvious calldata-level warning.
Trace evidence exposes hidden permission changes and state-dependent failure.
Only the exact safe, executable claim receives a Safety Receipt.
Agent services and pricing
Agents discover the input schema and price before authorizing payment.
POST /v1/inspectCalldata decoding, selector provenance, and basic advisory findings.
Direct HTTP 200 · no payment · no execution certificatePOST /v1/preflightTenderly trace simulation, intent comparison, wallet policy, enforcement, and Safety Receipt.
x402 · X Layer testnet · USD₮0ALLOW and BLOCK are completed security decisions and use the paid service. Provider failures return a fail-closed service error and are not settled as completed preflights.
Inspect for free. Preflight before signing.
Use the console for the visual flow or call the machine-readable agent services.