diff --git a/apps/docs/overview/how-it-works.md b/apps/docs/overview/how-it-works.md index 936c90eb..86aeb197 100644 --- a/apps/docs/overview/how-it-works.md +++ b/apps/docs/overview/how-it-works.md @@ -35,7 +35,9 @@ the user's wallet ## Withdraw flow -Symmetric to deposit. The user specifies a share amount (mUSDC), the API builds a `vault.withdraw(caller, shares)` invocation, Freighter signs, and the vault redeems the proportional adapter position and returns USDC. +Symmetric to deposit. The user specifies a share amount (mUSDC), the API builds a `vault.withdraw(caller, shares, min_usdc_out)` invocation, Freighter signs, and the vault redeems the proportional adapter position and returns USDC. + +`min_usdc_out` is a caller-supplied floor, not a fixed protocol parameter. The vault's adapter-share ratio is a shared, mutable value, so a concurrent withdrawal by another depositor can shift it between when the API quoted a payout and when this transaction lands. If the delivered amount would fall below the floor, the transaction reverts with a typed `MinAmountOutNotMet` error instead of silently paying out less than the user was shown. ## Rate selection @@ -62,8 +64,19 @@ usdc_out =