Repository navigation
Add anchor-based fiat on-ramp/off-ramp for vault deposits and redemptions - #357
Merged
techisigu merged 7 commits intoOct 24, 2026
Merged
Conversation
… for Vault Deposi Closes Zenith-options#265
…les for Vault Dep Closes Zenith-options#266
…ptions Chain and Closes Zenith-options#267
… Communication Ch Closes Zenith-options#268
|
@josunday002 Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
- .env.local.example: merged [markers] — model resolved the conflict markers - src/env.ts: merged [markers] — model resolved the conflict markers - src/lib/api/vaults.ts: merged [markers] — model resolved the conflict markers Co-authored-by: Simple Agent <agent@simple.dev>
- src/lib/api/vaults.ts: merged [markers] — model resolved the conflict markers Co-authored-by: Simple Agent <agent@simple.dev>
- src/lib/api/vaults.ts: merged [markers] — model resolved the conflict markers Co-authored-by: Simple Agent <agent@simple.dev>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add anchor-based fiat on-ramp/off-ramp for vault deposits and redemptions
What was solved
#265 — Integrate Fiat On-Ramp and Off-Ramp Providers for Vault Deposits and Redemptions
Add anchor-based SEP-24 (and follow-on SEP-6) fiat on-ramp/off-ramp for vault deposits and redemptions: a server-side BFF proxy to the anchor, a separate anchor-transaction state machine decoupled from vault state, quote/preview before commit, progressive-enhancement entry points ("Fund from bank" / "Cash out") hidden when no anchor is configured, per-network anchor config in env, and user-facing copy in messages/.
Addressed:
#266 — Implement Recurring Auto-Deposit (DCA) Schedules for Vault Depositors
Add server-persisted recurring auto-deposit (DCA) schedules for vault depositors: create/edit/pause/resume/cancel, executed by a durable scheduler job that reuses the existing manual vault deposit path, with idempotency per (schedule_id, scheduled_slot), pre-authorized allowance/trustline with plain-language scope/expiry, and non-silent failure surfacing with remediation for missed executions (closed epoch, cap reached, insufficient balance, expired allowance).
Addressed:
#267 — Surface Vault-Written Options Supply in the Options Chain and Vol Surface
Add vault-written options supply visibility to the options chain and vol surface: fetch an aggregated supply summary keyed by (underlying, expiry, strike) from the backend, join it client-side into existing chain rows, annotate per-contract vault OI and share of total OI, add a highlight filter/toggle with a legend, surface strike/expiry-level aggregation in the vol surface context without disturbing existing keyboard/text-alt behavior, and degrade gracefully (no placeholder zeros) when the supply source is unavailable or the vault flag is off.
Addressed:
#268 — Build a Public Vault Status Page and Incident Communication Channel
Add a public, separately hostable vault status surface plus an in-app incident banner on /vaults. The status page derives component health (API, indexer, keeper/epoch automation, oracle feeds, Soroban RPC, per-vault epoch/queue state) from real health signals with staleness handling, supports append-only incident records with timestamped updates and severity levels, and exposes a public feed URL via src/env.ts. The /vaults banner reflects active incidents, links to the status page, and self-suppresses on resolve with a stale-cache guard. Content must be publicly readable without leaking admin URLs, operator identities, or stack traces.
Addressed:
Changes
src/lib/api/vaults.ts(modify)src/env.ts(modify).env.local.example(modify)e2e/mockBackend.ts(modify)Approach
Issues
Closes #265
Closes #266
Closes #267
Closes #268