Skip to content

feat(deposit): auto-sweep USDC deposits to USDF on app foreground#738

Merged
bmc08gt merged 6 commits into
code/cashfrom
feat/usdc-deposit-sweep
May 20, 2026
Merged

feat(deposit): auto-sweep USDC deposits to USDF on app foreground#738
bmc08gt merged 6 commits into
code/cashfrom
feat/usdc-deposit-sweep

Conversation

@bmc08gt
Copy link
Copy Markdown
Collaborator

@bmc08gt bmc08gt commented May 19, 2026

No description provided.

@bmc08gt bmc08gt self-assigned this May 19, 2026
@github-actions github-actions Bot added type: feature New functionality area: crypto Solana, keys, encryption, signing area: auth Login, session, access keys, identity area: network gRPC, connectivity, API, exchange rates area: onramp Deposit, purchase, Coinbase, fiat on-ramp area: tokens Token accounts, balances, token info area: intents Intent construction, submission, server-side state and removed type: feature New functionality labels May 19, 2026
@bmc08gt bmc08gt force-pushed the feat/usdc-deposit-sweep branch from a3de0f4 to 8728742 Compare May 20, 2026 00:04
@github-actions github-actions Bot added the type: feature New functionality label May 20, 2026
Base automatically changed from feat/ocp-stateless-swap to code/cash May 20, 2026 00:05
bmc08gt added 5 commits May 19, 2026 20:35
Adds end-to-end USDC → USDF stateless swap triggered on every app
foreground event. When a user receives USDC (e.g. from Coinbase on-ramp),
the app automatically converts it to USDF via the StatelessSwap RPC.

Key changes:
- Add UsdcDepositSweep executor with job-based cancellation guard
- Wire sweep into RealSessionController foreground/background lifecycle
- Build stateless swap transaction (CoinbaseStableSwapper instructions)
- Implement IntentStatelessSwap.transaction() for signing
- Add swapUsdc to TransactionOperations/Repository/Controller
- Add usdcDepositAddress on AccountCluster using standard ATA derivation
- Fix DepositViewModel to show USDC ATA for direct deposit
- Fix DepositFlowScreen feature flag race with key(directDeposit)

Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
@bmc08gt bmc08gt force-pushed the feat/usdc-deposit-sweep branch from 9c2b0eb to 097bccd Compare May 20, 2026 00:36
Signed-off-by: Brandon McAnsh <git@bmcreations.dev>
@bmc08gt bmc08gt merged commit 794d2fa into code/cash May 20, 2026
2 checks passed
@bmc08gt bmc08gt deleted the feat/usdc-deposit-sweep branch May 20, 2026 00:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: auth Login, session, access keys, identity area: crypto Solana, keys, encryption, signing area: intents Intent construction, submission, server-side state area: network gRPC, connectivity, API, exchange rates area: onramp Deposit, purchase, Coinbase, fiat on-ramp area: tokens Token accounts, balances, token info type: feature New functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant