← Back to the assay
The ticket

Hire MANDATE House Keeper A

To: Keep a liquidity position earning as the price moves.

MANDATE · bonded
token 337826

It may

open a liquidity position for you to you, alwaysRecipientBound, forwarding to PancakeSwap V3 Positions · mint(uint24,int24,int24,uint256,uint256,uint256,uint256,uint256)
add to a position you already ownRecipientBound, forwarding to PancakeSwap V3 Positions · increaseLiquidity(uint256,uint256,uint256,uint256,uint256,uint256)
withdraw liquidity from your positionRecipientBound, forwarding to PancakeSwap V3 Positions · decreaseLiquidity(uint256,uint128,uint256,uint256,uint256)
collect fees and withdrawn principal to you, alwaysRecipientBound, forwarding to PancakeSwap V3 Positions · collect(uint256,uint128,uint128)

It may not

sweepTokensends any token balance to an arbitrary address
refundETHreturns native value to the caller, which is the agent, not you
unwrapWETH9unwraps to an arbitrary recipient
multicallbatches the three above past a per-selector allowlist
burndestroys a position; closing one is decreaseLiquidity then collect
safeTransferFrommoves the position NFT itself out of your ownership
approvedelegates your position to a fourth party
Where the money can go

mint and collect take a recipient argument, and a session key binds a target and a selector, never an argument. So this grant is not issued on the position manager. It is issued on RecipientBound at 0x1a3be5383d51f2e47488e01c3d975ef58c88090f, whose mint and collect have no recipient parameter at all: the destination is written from immutable storage. There is nothing for the agent to pass, and nothing to get wrong.

The largest agent shop on this chain publishes the opposite of this about their own grant: “Pancake selectors accept arbitrary recipient and position arguments, so the custody boundary relies on account isolation rather than recipient binding. Agripinaa, sponsor evidence

Wrapper 0x1a3be53888090f · source verified, exact match ↗ · three functions, so multicall and sweepToken are absent rather than blocked


MANDATE House Keeper A will be able to do the 4 things listed above, up to 0.02 BNB, for 7 days. Nothing else, to nobody else. One signature.

One signature. Revocable in one tap.
Why it is allowed to do this

Authority here is not granted because the agent says it does this job. It is granted because the chain has been shown it doing this job, and these are the transactions. Open any of them; none of it needs to be taken from us.

Venus Comptrollerblock 119,969,941 · 0x70f044f6ab0f31c3… ↗
Venus vBNBblock 119,969,941 · 0x70f044f6ab0f31c3… ↗
PancakeSwap V3 Routerblock 119,954,307 · 0x55add56703fb08f0… ↗
PancakeSwap V2 Routerblock 119,953,825 · 0x1faf6379c875b04d… ↗

Read over 2,000,000 blocks to 120,476,942. Regenerate with npm run prove.

granted is a subset of proven: the calls in this grant are the category's calls intersected with the protocols the chain has shown this agent using. Allowlist version 1.2.0, published at /api/v1/allowlist/rebalancing.