
Boolean · Acts onchain
Writes a boolean flag to the socket's global storage under a key. The value persists across transactions in socket-scoped storage shared by every plug the socket runs, and any later plug can read it back with the read flag action. Reach for it to record state across executions: mark that a one-time setup has run, that a position was opened, or that a threshold was crossed, so a later run can branch on it instead of repeating work.
Borrow Rate Exit Guard (WETH/USDC Loop)



1·Read global flag
Reads the boolean flag exited_weth/usdc_loop from the socket's global storage so the run knows whether this loop has already been closed.
2·Predicate
Requires that flag to equal false, halting the entire plug if the loop was already exited so nothing runs against a closed position.
3·Get asset data
Fetches Aave reserve data for USDC at 0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48 in the market at 0x2f39d218133afab8f2b819b1066c7e434ad94e9e, pulling live rates and token addresses.
4·Compare two values
Testing whether the USDC reserve figure in slot 2.1.4 is greater than or equal to 0.055, this returns true when the borrow rate has reached the exit threshold.
5·Predicate
Opening a conditional that runs when the comparison in slot 3.0 is true, the branch fires only when the borrow rate is at or above the threshold.
6·Get token balance
Looks up the token balance for the token named in slot 2.1.10 held by 0x484428507A212cA56D71baa27Ca6089a6dB63a88, giving the outstanding USDC debt.
7·Set
Stores that debt figure into the named variable vUSDC_debt_balance so the repay step can reference it.
8·Compare two values
Comparing the vUSDC debt from step 6 against 0, this returns true when the debt position is not empty.
9·Predicate
Gating on the stored comparison in slot 7.0, the branch runs only when it equals true, so a debt actually exists.
10·Set global flag
Writes the flag from slot 0.0 to true, marking the loop as exited inside this branch.
11·Get asset data
Pulls Aave reserve data for WETH at 0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2, with the market wired from slot 2.1 so it matches the USDC reserve's market.
12·Get token balance
Reading the token balance for the token named in slot 10.1.8 held by the address wired from slot 5.1, this gives the aWETH supply position.
13·Set
Assigns that aWETH figure to the named variable aWETH_supply_balance for the withdraw step.
14·Repay
Repays the USDC debt from slot 6.0 to the market from slot 2.1, using the USDC debt token from step 2.
15·Withdraw
Withdraws the aWETH balance from slot 12.0 as WETH collateral from the market wired from slot 2.1, pulling the supplied collateral back to the socket.
16·End block
Closes the conditional branch opened in step 9.
17·End block
Closes the conditional branch opened in step 5.
On other protocols · 1