Skip to content

Fix: missing import, multi-sig persistence, Friendbot error handling, and exchange rate - #379

Merged
Mystery-CLI merged 4 commits into
Ethereal-Future:mainfrom
GoodnessJohn:fix/215-217-221-222-bug-fixes
Apr 23, 2026
Merged

Fix: missing import, multi-sig persistence, Friendbot error handling, and exchange rate#379
Mystery-CLI merged 4 commits into
Ethereal-Future:mainfrom
GoodnessJohn:fix/215-217-221-222-bug-fixes

Conversation

@GoodnessJohn

Copy link
Copy Markdown
Contributor

closes #215 — Add missing LanguageSelector import (frontend/src/App.jsx)

was rendered in JSX but never imported, causing a runtime crash. Added:

import { LanguageSelector } from './components/LanguageSelector';

──────────────────────────────────────────────────────────────────────────────────────────────────────────────

closes #217 — Persist pending multi-sig transactions to database (backend/src/services/multiSig.js,
backend/prisma/schema.prisma)

Pending multi-sig transactions were stored in a module-level Map, which is wiped on every server restart,
crash, or when running multiple instances.

  • Added a PendingMultiSigTx Prisma model to schema.prisma
  • Replaced all pendingTransactions.set/get calls in buildMultiSigTransaction, addSignature,
    submitMultiSigTransaction, getPendingTransactions, and getPendingTransaction with prisma.pendingMultiSigTx
    CRUD operations

──────────────────────────────────────────────────────────────────────────────────────────────────────────────

closes #221 — Check Friendbot response status (backend/src/services/stellar.js)

The Friendbot fetch call was fire-and-forget — a non-2xx response (rate limit, account already exists, network
error) was silently swallowed and the account was returned as if it were funded. Now checks response.ok and
throws a descriptive error on failure:

const friendbotRes = await fetch(https://friendbot.stellar.org?addr=${publicKey});
if (!friendbotRes.ok) {
throw new Error(Friendbot funding failed: ${friendbotRes.status} ${friendbotRes.statusText});
}

──────────────────────────────────────────────────────────────────────────────────────────────────────────────

closes #222 — Return 503 when exchange rate is unavailable (backend/src/routes/stellar.js)

When the orderbook had no asks, getRate returned null and the route responded { from, to, rate: null } with
HTTP 200, making it indistinguishable from a valid zero rate. The route handler now returns a 503 with a
descriptive message when rate === null.

@drips-wave

drips-wave Bot commented Apr 23, 2026

Copy link
Copy Markdown

@GoodnessJohn 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! 🚀

Learn more about application limits

@Mystery-CLI
Mystery-CLI merged commit 0af9f63 into Ethereal-Future:main Apr 23, 2026
8 of 29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants