Summary
A 1.000000 USDC Base → Polygon Gateway deposit via selat fund --method eco was confirmed after SELAT disclosed an estimated ~1.5% Eco routing fee. The resulting Eco intent encoded a net Gateway target of 0.969873 USDC, a 0.030127 USDC (3.0127%) difference, then expired without fulfillment.
The intent is currently Pending / WaitingForRefund, and the unified Gateway balance remains 0 USDC.
Environment
@selat-ai/selat-cli: 0.15.9
@circle-fin/cli: 0.0.6 (update check reports current)
- Source: Base
- Eco destination: Polygon Gateway
- Input: 1.000000 USDC
- Disclosed estimate: ~1.5% (approximately 0.985000; UI displays 0.98 after cent-flooring)
- Encoded net target: 0.969873 USDC
- Difference: 0.030127 USDC / 3.0127%
Evidence
Root cause in current UX
ECO_ROUTING_FEE_RATE = 0.015 is an estimate based on one observed 2.00 → 1.97 deposit. The code comments correctly note that neither Circle CLI nor the existing skill exposes a pre-deposit quote, but the confirmation flow still permits the transfer without an enforceable maximum fee or minimum net credit.
For small deposits, fixed route costs can make the effective percentage materially higher than the historical estimate.
Requested changes
- Require an exact live quote before an Eco transfer, including input, net Gateway credit, total fee, fee percentage, and quote expiry.
- Enforce a user-approved
maxFee or minNetAmount; abort before transfer if the live route exceeds it.
- If no exact quote is available, refuse the Eco path rather than relying on a historical percentage.
- Track Eco intent state through
Fulfilled or Refunded; do not report the transfer submission as a completed Gateway deposit.
- Surface
WaitingForRefund with the intent hash and prevent accidental re-deposit.
- Add regression coverage for small deposits where flat fees materially change the effective percentage.
This is not yet a settled fee because the intent failed and is awaiting refund. Final user loss can only be reconciled after the refund transaction completes.
Summary
A 1.000000 USDC Base → Polygon Gateway deposit via
selat fund --method ecowas confirmed after SELAT disclosed an estimated ~1.5% Eco routing fee. The resulting Eco intent encoded a net Gateway target of 0.969873 USDC, a 0.030127 USDC (3.0127%) difference, then expired without fulfillment.The intent is currently
Pending / WaitingForRefund, and the unified Gateway balance remains 0 USDC.Environment
@selat-ai/selat-cli: 0.15.9@circle-fin/cli: 0.0.6 (update check reports current)Evidence
0x3103966481e48c3826d681089052884f354fdb3d70ffa060aa7673ad1bbb2d4df9f5ce20-b1c8-54a9-826e-beef479441beRoot cause in current UX
ECO_ROUTING_FEE_RATE = 0.015is an estimate based on one observed 2.00 → 1.97 deposit. The code comments correctly note that neither Circle CLI nor the existing skill exposes a pre-deposit quote, but the confirmation flow still permits the transfer without an enforceable maximum fee or minimum net credit.For small deposits, fixed route costs can make the effective percentage materially higher than the historical estimate.
Requested changes
maxFeeorminNetAmount; abort before transfer if the live route exceeds it.FulfilledorRefunded; do not report the transfer submission as a completed Gateway deposit.WaitingForRefundwith the intent hash and prevent accidental re-deposit.This is not yet a settled fee because the intent failed and is awaiting refund. Final user loss can only be reconciled after the refund transaction completes.