From ee878c5379b40fc0c547ac297308f33f2bdef8d7 Mon Sep 17 00:00:00 2001 From: Ricardo Guilherme Schmidt <3esmit@gmail.com> Date: Sat, 18 Jul 2026 02:06:57 -0300 Subject: [PATCH] fix(wallet): configure new wallets for active network --- apps/amm/config/networks.json | 1 + apps/amm/src/ActiveNetwork.cpp | 1 + apps/amm/src/ActiveNetwork.h | 1 + apps/amm/src/AmmUiBackend.cpp | 1 + apps/amm/tests/cpp/ActiveNetworkTest.cpp | 5 ++++- 5 files changed, 8 insertions(+), 1 deletion(-) diff --git a/apps/amm/config/networks.json b/apps/amm/config/networks.json index 75e03eb..beb90f8 100644 --- a/apps/amm/config/networks.json +++ b/apps/amm/config/networks.json @@ -1,6 +1,7 @@ { "testnet": { "checkpointHash": "0d25d71fca70d7008a892f6b3f768a4c66badbcd64e67d79ca595b92f1db544a", + "sequencerAddress": "https://testnet.lez.logos.co/", "ammProgramId": "77eeaa23668ad2675fb768cd7ecb1893387be464b9a51f16756006c1d307db07", "tokenDefinitionIds": [ "7b464ff9dd0d3bc07f7e2e0b0667ccd066d85ad12be4c79fc55687a863910aa6", diff --git a/apps/amm/src/ActiveNetwork.cpp b/apps/amm/src/ActiveNetwork.cpp index 6397357..f23997a 100644 --- a/apps/amm/src/ActiveNetwork.cpp +++ b/apps/amm/src/ActiveNetwork.cpp @@ -63,6 +63,7 @@ bool ActiveNetwork::load() m_expectedIdentity = entry.value(QStringLiteral("checkpointHash")).toString(); } + m_network.sequencerAddress = entry.value(QStringLiteral("sequencerAddress")).toString(); m_network.ammProgramId = entry.value(QStringLiteral("ammProgramId")).toString(); if (!isValidIdentity(m_expectedIdentity) || !isLowerHex(m_network.ammProgramId, 64)) { diff --git a/apps/amm/src/ActiveNetwork.h b/apps/amm/src/ActiveNetwork.h index c0ed875..51ff958 100644 --- a/apps/amm/src/ActiveNetwork.h +++ b/apps/amm/src/ActiveNetwork.h @@ -7,6 +7,7 @@ struct ActiveNetworkSnapshot { QString id; QString status; QString fingerprint; + QString sequencerAddress; QString ammProgramId; QStringList tokenIds; }; diff --git a/apps/amm/src/AmmUiBackend.cpp b/apps/amm/src/AmmUiBackend.cpp index d073478..ea16009 100644 --- a/apps/amm/src/AmmUiBackend.cpp +++ b/apps/amm/src/AmmUiBackend.cpp @@ -84,6 +84,7 @@ AmmUiBackend::AmmUiBackend(LogosAPI* logosAPI, QObject* parent) connect(m_identityRetryTimer, &QTimer::timeout, this, &AmmUiBackend::probeNetworkIdentity); m_network.load(); + m_walletController->setDefaultSequencerAddress(m_network.snapshot().sequencerAddress); connect(m_walletController.get(), &WalletController::stateChanged, this, &AmmUiBackend::syncWalletState); diff --git a/apps/amm/tests/cpp/ActiveNetworkTest.cpp b/apps/amm/tests/cpp/ActiveNetworkTest.cpp index 6374aae..344a5b2 100644 --- a/apps/amm/tests/cpp/ActiveNetworkTest.cpp +++ b/apps/amm/tests/cpp/ActiveNetworkTest.cpp @@ -19,12 +19,14 @@ int main() const QString identity(64, QLatin1Char('a')); const QString programId(64, QLatin1Char('b')); const QString tokenId(64, QLatin1Char('c')); + const QString sequencerAddress = QStringLiteral("https://sequencer.example/"); QTemporaryFile config; if (!config.open()) return 1; config.write(QJsonDocument(QJsonObject { { QStringLiteral("channelId"), identity }, + { QStringLiteral("sequencerAddress"), sequencerAddress }, { QStringLiteral("ammProgramId"), programId }, { QStringLiteral("tokenDefinitionIds"), QJsonArray { tokenId } }, }).toJson(QJsonDocument::Compact)); @@ -74,7 +76,8 @@ int main() "devnet fingerprint should use channel identity")) return 1; if (!expect(snapshot.ammProgramId == programId - && snapshot.tokenIds == QStringList { tokenId }, + && snapshot.tokenIds == QStringList { tokenId } + && snapshot.sequencerAddress == sequencerAddress, "network snapshot should preserve configured program and tokens")) return 1;