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 ↗
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.
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.