commit f77489afa3e96b15ee9f3032f775aadda7594fe2
parent 6effcf5aeef4d19f71e6e1cf5c736f0fa49c36c8
Author: Özgür Kesim <oec@codeblau.de>
Date: Tue, 27 Oct 2026 14:17:28 +0100
harness: wallet-dbless also refreshes with the v32 protocol (#11862)
Diffstat:
1 file changed, 26 insertions(+), 1 deletion(-)
diff --git a/packages/taler-harness/src/integrationtests/test-wallet-dbless.ts b/packages/taler-harness/src/integrationtests/test-wallet-dbless.ts
@@ -74,7 +74,7 @@ export async function runWalletDblessTest(t: GlobalTestState) {
});
await topupReserveWithBank({
- amount: "TESTKUDOS:10" as AmountString,
+ amount: "TESTKUDOS:12" as AmountString,
http,
reservePub: reserveKeyPair.pub,
corebankApiBaseUrl: bank.corebankApiBaseUrl,
@@ -163,6 +163,31 @@ export async function runWalletDblessTest(t: GlobalTestState) {
],
protocolVersion: 27,
});
+
+ // Since protocol v45 the refresh commitment covers the transfer public
+ // keys; the exchange must still accept the commitment without them from
+ // wallets that melt with the v32 protocol (#11862).
+ const v32Coin = await withdrawCoin({
+ http,
+ cryptoApi,
+ reserveKeyPair: {
+ reservePriv: reserveKeyPair.priv,
+ reservePub: reserveKeyPair.pub,
+ },
+ denom: findDenomOrThrow(exchangeInfo, "TESTKUDOS:1" as AmountString),
+ exchangeBaseUrl: exchange.baseUrl,
+ });
+
+ await refreshCoin({
+ oldCoin: v32Coin,
+ cryptoApi,
+ http,
+ newDenoms: [
+ findDenomOrThrow(exchangeInfo, "TESTKUDOS:0.1" as AmountString),
+ findDenomOrThrow(exchangeInfo, "TESTKUDOS:0.1" as AmountString),
+ ],
+ protocolVersion: 32,
+ });
} catch (e) {
if (e instanceof TalerError) {
console.log(e);