<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>taler-typescript-core, branch HEAD</title>
<subtitle>Wallet core logic and WebUIs for various components
</subtitle>
<entry>
<id>4d75a0c5f43bf68ed1b7bb3b7847b38fc5329abb</id>
<published>2026-10-12T22:26:38Z</published>
<updated>2026-10-12T22:26:38Z</updated>
<title>add starting point for POST /withdraw-reveal (age-restricted withdrawal)</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/4d75a0c5f43bf68ed1b7bb3b7847b38fc5329abb.html" />
<author>
<name>Christian Grothoff</name>
<email>christian@grothoff.org</email>
</author>
<content>commit 4d75a0c5f43bf68ed1b7bb3b7847b38fc5329abb
parent b7ebb1e567c59da6dc9a5baa74e48a8b52abb39b
Author: Christian Grothoff &lt;christian@grothoff.org&gt;
Date:   Tue, 13 Oct 2026 00:26:38 +0200

add starting point for POST /withdraw-reveal (age-restricted withdrawal)

</content>
</entry>
<entry>
<id>b7ebb1e567c59da6dc9a5baa74e48a8b52abb39b</id>
<published>2026-10-12T22:24:51Z</published>
<updated>2026-10-12T22:24:51Z</updated>
<title>fix oauth2 tests now that http:// is not allowed by default</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/b7ebb1e567c59da6dc9a5baa74e48a8b52abb39b.html" />
<author>
<name>Christian Grothoff</name>
<email>christian@grothoff.org</email>
</author>
<content>commit b7ebb1e567c59da6dc9a5baa74e48a8b52abb39b
parent 94ca0630d53f32cdd3da4464091e6becf769c5ed
Author: Christian Grothoff &lt;christian@grothoff.org&gt;
Date:   Tue, 13 Oct 2026 00:24:51 +0200

fix oauth2 tests now that http:// is not allowed by default

</content>
</entry>
<entry>
<id>94ca0630d53f32cdd3da4464091e6becf769c5ed</id>
<published>2026-10-10T19:41:53Z</published>
<updated>2026-10-10T19:42:06Z</updated>
<title>always use /token authorization, support strict v19 mode of the merchant</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/94ca0630d53f32cdd3da4464091e6becf769c5ed.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 94ca0630d53f32cdd3da4464091e6becf769c5ed
parent 5661413726424d507c3dc8413d81ec35426cefc5
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sat, 10 Oct 2026 21:41:53 +0200

always use /token authorization, support strict v19 mode of the merchant

</content>
</entry>
<entry>
<id>5661413726424d507c3dc8413d81ec35426cefc5</id>
<published>2026-10-08T13:58:11Z</published>
<updated>2026-10-08T14:07:53Z</updated>
<title>wallet-core: report proposal claim retry errors to transaction waits</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/5661413726424d507c3dc8413d81ec35426cefc5.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 5661413726424d507c3dc8413d81ec35426cefc5
parent 32846ca06070f8a3548a9fac60122eb7ca588864
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu,  8 Oct 2026 15:58:11 +0200

wallet-core: report proposal claim retry errors to transaction waits

Expose the stored retry error before contract terms have been downloaded.
This lets waitTransactionState emit request-progress-error with the retry
counter and delay while a payment is in claim-proposal.

</content>
</entry>
<entry>
<id>32846ca06070f8a3548a9fac60122eb7ca588864</id>
<published>2026-09-28T19:35:07Z</published>
<updated>2026-09-28T19:45:38Z</updated>
<title>harness: retry Firefox heading lookups after navigation</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/32846ca06070f8a3548a9fac60122eb7ca588864.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 32846ca06070f8a3548a9fac60122eb7ca588864
parent 6943d692a549fa4a14684292be84393616bf2e0b
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 28 Sep 2026 21:35:07 +0200

harness: retry Firefox heading lookups after navigation

Firefox may replace heading elements between lookup and reading their
text during checkout navigation. Retry stale element references within
the existing wait deadline, while propagating other WebDriver errors.

</content>
</entry>
<entry>
<id>6943d692a549fa4a14684292be84393616bf2e0b</id>
<published>2026-09-28T15:40:04Z</published>
<updated>2026-09-28T15:42:50Z</updated>
<title>wallet-core: restore short peer-pull payment URIs</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/6943d692a549fa4a14684292be84393616bf2e0b.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 6943d692a549fa4a14684292be84393616bf2e0b
parent 45a0bbb0118051f70b95f6b8d49fd934c0eda2d1
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 28 Sep 2026 17:40:04 +0200

wallet-core: restore short peer-pull payment URIs

The `GET /purses/$PURSE_PUB/merge` request currently doesn&#39;t return the
target amount for invoices, and this can cause confusion when the amount
differs from the contract terms.

This commit reverts a (slightly misguided) attempt to fix this by
including signed information about the amount in the peer-pull URI.

Issue: https://bugs.taler.net/n/11828

</content>
</entry>
<entry>
<id>45a0bbb0118051f70b95f6b8d49fd934c0eda2d1</id>
<published>2026-09-24T10:46:53Z</published>
<updated>2026-09-24T10:52:11Z</updated>
<title>wallet-core: coalesce duplicate balance notifications</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/45a0bbb0118051f70b95f6b8d49fd934c0eda2d1.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 45a0bbb0118051f70b95f6b8d49fd934c0eda2d1
parent 053bedf6a2460b1a75ecc680a85f6229c128991f
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 24 Sep 2026 12:46:53 +0200

wallet-core: coalesce duplicate balance notifications

Merge balance invalidations for the same transaction when publishing a
database commit, retaining public visibility and all state events.

Notify for changed renewal reports and restored checking results instead
of cache generation or scheduling changes alone.

</content>
</entry>
<entry>
<id>053bedf6a2460b1a75ecc680a85f6229c128991f</id>
<published>2026-09-24T10:46:34Z</published>
<updated>2026-09-24T10:52:10Z</updated>
<title>wallet-core: check for refunds after the monitoring deadline</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/053bedf6a2460b1a75ecc680a85f6229c128991f.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 053bedf6a2460b1a75ecc680a85f6229c128991f
parent 9a5461eff67ed94c1e9beab060d38bc52e6652f6
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 24 Sep 2026 12:46:34 +0200

wallet-core: check for refunds after the monitoring deadline

Query the merchant after an expired auto-refund window before marking
payment monitoring complete. This lets a resumed wallet discover refunds
granted while it was offline and keeps failed checks retryable.

Limit long polls to the remaining window and avoid a balance invalidation
for the finalizing-to-done transition itself.

</content>
</entry>
<entry>
<id>9a5461eff67ed94c1e9beab060d38bc52e6652f6</id>
<published>2026-09-23T22:25:02Z</published>
<updated>2026-09-24T09:40:04Z</updated>
<title>harness: check that a forged challenger error redirect cannot fail KYC</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/9a5461eff67ed94c1e9beab060d38bc52e6652f6.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 9a5461eff67ed94c1e9beab060d38bc52e6652f6
parent 44988c85c2fe24478bdc5b48f13dba18137f4f47
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 24 Sep 2026 00:25:02 +0200

harness: check that a forged challenger error redirect cannot fail KYC

test-kyc-challenger now uses the state the exchange issued, as the exchange
rejects the bare account hash.

Issue: https://bugs.taler.net/n/11740

</content>
</entry>
<entry>
<id>44988c85c2fe24478bdc5b48f13dba18137f4f47</id>
<published>2026-09-23T12:49:46Z</published>
<updated>2026-09-24T09:40:04Z</updated>
<title>harness: test that a failed challenger validation fails the KYC process</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/44988c85c2fe24478bdc5b48f13dba18137f4f47.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 44988c85c2fe24478bdc5b48f13dba18137f4f47
parent ba837abbed323aac4e35930caae38f2af2840ea0
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 14:49:46 +0200

harness: test that a failed challenger validation fails the KYC process

Issue: https://bugs.taler.net/n/11740

</content>
</entry>
<entry>
<id>ba837abbed323aac4e35930caae38f2af2840ea0</id>
<published>2026-09-23T12:49:46Z</published>
<updated>2026-09-24T09:40:04Z</updated>
<title>challenger web UI: send the user back to the client once verification failed</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/ba837abbed323aac4e35930caae38f2af2840ea0.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit ba837abbed323aac4e35930caae38f2af2840ea0
parent 5c394478b2806aeaf109c0b0903e9fd3ba7c68fa
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 14:49:46 +0200

challenger web UI: send the user back to the client once verification failed

The client only learns about the failure through the error redirect
challenger hands out, so follow it instead of stranding the user.

Issue: https://bugs.taler.net/n/11740

</content>
</entry>
<entry>
<id>5c394478b2806aeaf109c0b0903e9fd3ba7c68fa</id>
<published>2026-09-23T12:49:38Z</published>
<updated>2026-09-24T09:40:03Z</updated>
<title>util: handle challenger&#39;s 410 for a permanently failed validation</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/5c394478b2806aeaf109c0b0903e9fd3ba7c68fa.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 5c394478b2806aeaf109c0b0903e9fd3ba7c68fa
parent df872794aaee66742b5c5a526de16078a316b7f6
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 14:49:38 +0200

util: handle challenger&#39;s 410 for a permanently failed validation

Challenger v10 reports a validation the user can no longer pass as 410
with the error redirect to the client, which used to be an unknown
failure.

Issue: https://bugs.taler.net/n/11740

</content>
</entry>
<entry>
<id>df872794aaee66742b5c5a526de16078a316b7f6</id>
<published>2026-09-23T12:49:38Z</published>
<updated>2026-09-24T09:40:03Z</updated>
<title>util: update error codes from GANA</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/df872794aaee66742b5c5a526de16078a316b7f6.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit df872794aaee66742b5c5a526de16078a316b7f6
parent 5b9a13a82f2469d750f3cb0019e22c3ff56f834d
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 14:49:38 +0200

util: update error codes from GANA

Adds CHALLENGER_VALIDATION_FAILED; also brings in the recoup and
permanent wallet transaction failure codes GANA gained since the last
update.

Issue: https://bugs.taler.net/n/11740

</content>
</entry>
<entry>
<id>5b9a13a82f2469d750f3cb0019e22c3ff56f834d</id>
<published>2026-09-23T15:48:12Z</published>
<updated>2026-09-23T15:51:01Z</updated>
<title>merchant web UI: translate bank monitoring settings</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/5b9a13a82f2469d750f3cb0019e22c3ff56f834d.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 5b9a13a82f2469d750f3cb0019e22c3ff56f834d
parent 5aa3535557b9e50f4f65afb4bcecb583cbb3ec2f
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 17:48:12 +0200

merchant web UI: translate bank monitoring settings

Add German, Swiss German, French and Italian translations for the bank
monitoring dialog and advanced account settings disclosure.

Issue: https://bugs.taler.net/n/11813

</content>
</entry>
<entry>
<id>5aa3535557b9e50f4f65afb4bcecb583cbb3ec2f</id>
<published>2026-09-23T15:48:00Z</published>
<updated>2026-09-23T15:51:01Z</updated>
<title>merchant web UI: restore bank monitoring in advanced account settings</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/5aa3535557b9e50f4f65afb4bcecb583cbb3ec2f.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 5aa3535557b9e50f4f65afb4bcecb583cbb3ec2f
parent 89fde9bf667a23159f29483350333a4520bf5637
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 17:48:00 +0200

merchant web UI: restore bank monitoring in advanced account settings

Load and update bank history URLs and authentication from the payout
account menu. Hide monitoring behind a collapsed Advanced settings
disclosure, preserve existing credentials and wire metadata, and expose
load and save failures without losing edits.

Issue: https://bugs.taler.net/n/11813

</content>
</entry>
<entry>
<id>89fde9bf667a23159f29483350333a4520bf5637</id>
<published>2026-09-23T15:47:47Z</published>
<updated>2026-09-23T15:51:00Z</updated>
<title>taler-harness: reproduce settlement before all deposit checks</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/89fde9bf667a23159f29483350333a4520bf5637.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 89fde9bf667a23159f29483350333a4520bf5637
parent 6fe8ee28957cb1232d5c1b2c8e898013f38ae790
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed, 23 Sep 2026 17:47:47 +0200

taler-harness: reproduce settlement before all deposit checks

Exercise two orders sharing an aggregated payout while one deposit check
is delayed. Require both orders to appear settled before opening their
details, and require one settlement webhook per order.

Issue: https://bugs.taler.net/n/11813

</content>
</entry>
<entry>
<id>6fe8ee28957cb1232d5c1b2c8e898013f38ae790</id>
<published>2026-09-22T20:28:30Z</published>
<updated>2026-09-22T20:30:20Z</updated>
<title>wallet API: accept state specifications in bailStates</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/6fe8ee28957cb1232d5c1b2c8e898013f38ae790.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 6fe8ee28957cb1232d5c1b2c8e898013f38ae790
parent e97557f198bc8a3fd7585537149ac7a013c26b5c
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Tue, 22 Sep 2026 22:28:30 +0200

wallet API: accept state specifications in bailStates

</content>
</entry>
<entry>
<id>e97557f198bc8a3fd7585537149ac7a013c26b5c</id>
<published>2026-09-21T10:37:18Z</published>
<updated>2026-09-21T10:45:32Z</updated>
<title>wallet-webui: clear peer choices when the last scope disappears</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/e97557f198bc8a3fd7585537149ac7a013c26b5c.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit e97557f198bc8a3fd7585537149ac7a013c26b5c
parent 031463f7dadd4687981052f116fa1d6bfb55bcd3
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 21 Sep 2026 12:37:18 +0200

wallet-webui: clear peer choices when the last scope disappears

Keep the last scope response only while fresh data is unavailable. Treat
an empty response as authoritative so an open send or request form stops
offering a removed exchange. Preserve that empty state until a subsequent
response supplies usable scopes.

Issue: https://bugs.taler.net/n/11808

</content>
</entry>
<entry>
<id>031463f7dadd4687981052f116fa1d6bfb55bcd3</id>
<published>2026-09-21T10:34:39Z</published>
<updated>2026-09-21T10:45:31Z</updated>
<title>wallet-webui: refresh balances after ordinary exchange removal</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/031463f7dadd4687981052f116fa1d6bfb55bcd3.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 031463f7dadd4687981052f116fa1d6bfb55bcd3
parent 2bf1b48cd7f628de0eb189354d73c153e3a9788f
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 21 Sep 2026 12:34:39 +0200

wallet-webui: refresh balances after ordinary exchange removal

Revalidate balances and transactions after either exchange deletion mode.
A zero-balance exchange can still contribute a currency choice, so its
removal must refresh those queries even without an exchange notification.

Issue: https://bugs.taler.net/n/11808

</content>
</entry>
<entry>
<id>2bf1b48cd7f628de0eb189354d73c153e3a9788f</id>
<published>2026-09-19T23:04:54Z</published>
<updated>2026-09-19T23:10:37Z</updated>
<title>wallet-webui: restore browser checkout without extra prompts</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/2bf1b48cd7f628de0eb189354d73c153e3a9788f.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 2bf1b48cd7f628de0eb189354d73c153e3a9788f
parent 81644e3d24ff350636955ef1f518c0f50ba05278
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 20 Sep 2026 01:04:54 +0200

wallet-webui: restore browser checkout without extra prompts

Issue: https://bugs.taler.net/n/11809

</content>
</entry>
<entry>
<id>81644e3d24ff350636955ef1f518c0f50ba05278</id>
<published>2026-09-19T22:27:51Z</published>
<updated>2026-09-19T22:33:44Z</updated>
<title>wallet-cli: show abort and failure reasons in one-line history</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/81644e3d24ff350636955ef1f518c0f50ba05278.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 81644e3d24ff350636955ef1f518c0f50ba05278
parent 7ea4ae8015e945c66e82f57d3834196fd2d215b7
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 20 Sep 2026 00:27:51 +0200

wallet-cli: show abort and failure reasons in one-line history

</content>
</entry>
<entry>
<id>7ea4ae8015e945c66e82f57d3834196fd2d215b7</id>
<published>2026-09-19T22:27:50Z</published>
<updated>2026-09-19T22:33:44Z</updated>
<title>wallet-core: preserve transaction abort and failure reasons</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/7ea4ae8015e945c66e82f57d3834196fd2d215b7.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 7ea4ae8015e945c66e82f57d3834196fd2d215b7
parent f2ef2d571bc75485941199fd33293ee53288b3b7
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 20 Sep 2026 00:27:50 +0200

wallet-core: preserve transaction abort and failure reasons

Store permanent bank, merchant, peer payment and coin recovery failures
on transaction records so history retains their underlying causes.
Record explicit user abort and abandon reasons and preserve per-coin
refund, refresh and recoup details across database conversion.

Leave historical records without reasons unchanged.

</content>
</entry>
<entry>
<id>f2ef2d571bc75485941199fd33293ee53288b3b7</id>
<published>2026-09-19T22:27:50Z</published>
<updated>2026-09-19T22:33:44Z</updated>
<title>taler-util: define permanent transaction failure reasons</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/f2ef2d571bc75485941199fd33293ee53288b3b7.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit f2ef2d571bc75485941199fd33293ee53288b3b7
parent ea74482200c5c837f27d8b582709d66ae33207bb
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 20 Sep 2026 00:27:50 +0200

taler-util: define permanent transaction failure reasons

</content>
</entry>
<entry>
<id>ea74482200c5c837f27d8b582709d66ae33207bb</id>
<published>2026-09-19T21:53:56Z</published>
<updated>2026-09-19T21:56:01Z</updated>
<title>wallet-core: report merchant base URL in payment transactions</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/ea74482200c5c837f27d8b582709d66ae33207bb.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit ea74482200c5c837f27d8b582709d66ae33207bb
parent 4f0545fde02ebe46bc7e770dc3f85b3c420e76ed
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sat, 19 Sep 2026 23:53:56 +0200

wallet-core: report merchant base URL in payment transactions

</content>
</entry>
<entry>
<id>4f0545fde02ebe46bc7e770dc3f85b3c420e76ed</id>
<published>2026-09-13T23:42:38Z</published>
<updated>2026-09-13T23:44:11Z</updated>
<title>taler-harness: accept deposits that have already settled</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/4f0545fde02ebe46bc7e770dc3f85b3c420e76ed.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 4f0545fde02ebe46bc7e770dc3f85b3c420e76ed
parent 54c522bf8fd6096a13dde7178e29c1ef97a6caf1
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:38 +0200

taler-harness: accept deposits that have already settled

Allow successful completion when settlement finishes before Maestro
observes the finalizing state. Keep the final completion and bank
balance assertions.

</content>
</entry>
<entry>
<id>54c522bf8fd6096a13dde7178e29c1ef97a6caf1</id>
<published>2026-09-13T23:42:38Z</published>
<updated>2026-09-13T23:44:10Z</updated>
<title>taler-harness: follow the MFA token reveal screen</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/54c522bf8fd6096a13dde7178e29c1ef97a6caf1.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 54c522bf8fd6096a13dde7178e29c1ef97a6caf1
parent 761ddac6d84f66406e97e68961f74649d1e81623
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:38 +0200

taler-harness: follow the MFA token reveal screen

Read the issued token from the reveal screen and acknowledge saving it
before returning to the access list. Require the token to stay out of
the URL.

</content>
</entry>
<entry>
<id>761ddac6d84f66406e97e68961f74649d1e81623</id>
<published>2026-09-13T23:42:38Z</published>
<updated>2026-09-13T23:44:10Z</updated>
<title>taler-harness: use the recovery wallet service socket</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/761ddac6d84f66406e97e68961f74649d1e81623.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 761ddac6d84f66406e97e68961f74649d1e81623
parent 8a4ed54af33ba424ef1c25a3a03b8d1047f423c1
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:38 +0200

taler-harness: use the recovery wallet service socket

</content>
</entry>
<entry>
<id>8a4ed54af33ba424ef1c25a3a03b8d1047f423c1</id>
<published>2026-09-13T23:42:38Z</published>
<updated>2026-09-13T23:44:10Z</updated>
<title>taler-harness: check the Challenger completion redirect locally</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/8a4ed54af33ba424ef1c25a3a03b8d1047f423c1.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 8a4ed54af33ba424ef1c25a3a03b8d1047f423c1
parent 435f9925dcbe3578ff631b3b4f95c7ef57231d72
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:38 +0200

taler-harness: check the Challenger completion redirect locally

Inspect the exchange response without following its external
completion URL.

</content>
</entry>
<entry>
<id>435f9925dcbe3578ff631b3b4f95c7ef57231d72</id>
<published>2026-09-13T23:42:38Z</published>
<updated>2026-09-13T23:44:10Z</updated>
<title>taler-harness: start cherry-picking clocks at UTC midnight</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/435f9925dcbe3578ff631b3b4f95c7ef57231d72.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 435f9925dcbe3578ff631b3b4f95c7ef57231d72
parent 4e3645e6de61b26c888bbc59e4a1c716d83c8fc7
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:38 +0200

taler-harness: start cherry-picking clocks at UTC midnight

Keep the later three-hour wallet advance away from the new
denomination generation&#39;s withdrawal deadline.

</content>
</entry>
<entry>
<id>4e3645e6de61b26c888bbc59e4a1c716d83c8fc7</id>
<published>2026-09-13T23:42:38Z</published>
<updated>2026-09-13T23:44:10Z</updated>
<title>taler-harness: wait for socket release in worker cleanup checks</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/4e3645e6de61b26c888bbc59e4a1c716d83c8fc7.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 4e3645e6de61b26c888bbc59e4a1c716d83c8fc7
parent efb714f76eca75dfb7ad1b5f0e27d2d87b481440
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:38 +0200

taler-harness: wait for socket release in worker cleanup checks

Keep port reuse bounded by the existing cleanup deadline after the
worker and service processes have exited.

</content>
</entry>
<entry>
<id>efb714f76eca75dfb7ad1b5f0e27d2d87b481440</id>
<published>2026-09-13T23:42:10Z</published>
<updated>2026-09-13T23:44:09Z</updated>
<title>wallet-core: preserve denomination age masks during refresh</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/efb714f76eca75dfb7ad1b5f0e27d2d87b481440.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit efb714f76eca75dfb7ad1b5f0e27d2d87b481440
parent fc237ea7c02f209440a0935f6cd2ce6aa44deee3
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon, 14 Sep 2026 01:42:10 +0200

wallet-core: preserve denomination age masks during refresh

Select a compatible member of each denomination family and use the same
age-mask constraint for refresh cost estimates. Families can contain both
restricted and unrestricted denominations.

</content>
</entry>
<entry>
<id>fc237ea7c02f209440a0935f6cd2ce6aa44deee3</id>
<published>2026-09-13T21:22:42Z</published>
<updated>2026-09-13T21:26:04Z</updated>
<title>taler-harness: add Android KYC and transaction action scenarios</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/fc237ea7c02f209440a0935f6cd2ce6aa44deee3.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit fc237ea7c02f209440a0935f6cd2ce6aa44deee3
parent bc8d12e92cd78611cccd4b45c2aa1b70fe1d390b
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 23:22:42 +0200

taler-harness: add Android KYC and transaction action scenarios

Keep KYC completion and transaction actions in separate scenario modules,
with shared service fixtures and reusable Maestro flows. Cover withdrawal,
P2P and deposit KYC, bank-account authentication, aborts, suspension,
resumption and deletion in the opt-in Android suite.

Use real bank transfers for deposit authentication and read the transfer
reference from the displayed wallet instructions.

</content>
</entry>
<entry>
<id>bc8d12e92cd78611cccd4b45c2aa1b70fe1d390b</id>
<published>2026-09-13T21:22:22Z</published>
<updated>2026-09-13T21:26:04Z</updated>
<title>wallet-core: allow cancelling proposed payments</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/bc8d12e92cd78611cccd4b45c2aa1b70fe1d390b.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit bc8d12e92cd78611cccd4b45c2aa1b70fe1d390b
parent 88408599cc4afd10defcfbd990d2bc729b2fa7e0
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 23:22:22 +0200

wallet-core: allow cancelling proposed payments

Advertise Abort while a payment proposal awaits confirmation. This lets
the transaction API reach the existing proposal-refused transition.

</content>
</entry>
<entry>
<id>88408599cc4afd10defcfbd990d2bc729b2fa7e0</id>
<published>2026-09-13T21:22:11Z</published>
<updated>2026-09-13T21:26:04Z</updated>
<title>wallet-core: resubmit deposits after account authentication</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/88408599cc4afd10defcfbd990d2bc729b2fa7e0.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 88408599cc4afd10defcfbd990d2bc729b2fa7e0
parent 847b9f8f63162d98f57f90a0c92d42b10b0f40af
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 23:22:11 +0200

wallet-core: resubmit deposits after account authentication

Retry the deposit once account authentication succeeds so the exchange
can accept it or start any remaining identity checks.

</content>
</entry>
<entry>
<id>847b9f8f63162d98f57f90a0c92d42b10b0f40af</id>
<published>2026-09-13T21:22:04Z</published>
<updated>2026-09-13T21:26:03Z</updated>
<title>wallet-core: use KYC subjects for authentication transfers</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/847b9f8f63162d98f57f90a0c92d42b10b0f40af.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 847b9f8f63162d98f57f90a0c92d42b10b0f40af
parent 828d290d7b04971c0db9a129069921ece0865025
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 23:22:04 +0200

wallet-core: use KYC subjects for authentication transfers

Mark direct authentication transfers with the Taler KYC subject prefix.
The reserve transfer prefix leaves the bank account unauthenticated.

</content>
</entry>
<entry>
<id>828d290d7b04971c0db9a129069921ece0865025</id>
<published>2026-09-13T18:54:09Z</published>
<updated>2026-09-13T19:09:23Z</updated>
<title>taler-harness: add Android wallet UI scenarios</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/828d290d7b04971c0db9a129069921ece0865025.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 828d290d7b04971c0db9a129069921ece0865025
parent c3fffe82bdf240a15b4576f3392cc27ca2794466
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 20:54:09 +0200

taler-harness: add Android wallet UI scenarios

Drive the nightly wallet with Maestro against local bank, exchange,
and merchant services. Cover withdrawals, payments, fixed and editable
templates, deposits, payment services, and bank accounts.

Install the flows alongside the harness and read the wallet APK from
TALER_HARNESS_WALLET_APK. Keep the wallet-android suite disabled unless
explicitly selected, and settle deposits with exchange time travel.

</content>
</entry>
<entry>
<id>c3fffe82bdf240a15b4576f3392cc27ca2794466</id>
<published>2026-09-13T18:52:03Z</published>
<updated>2026-09-13T19:09:23Z</updated>
<title>taler-harness: allow suites to be disabled by default</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/c3fffe82bdf240a15b4576f3392cc27ca2794466.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit c3fffe82bdf240a15b4576f3392cc27ca2794466
parent ad824ad9162076c6b1894bee4ecba05debd78d6b
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 20:52:03 +0200

taler-harness: allow suites to be disabled by default

Require explicit --suites selection for suites with additional setup.
Keep this independent of test name patterns and --experimental, and
show the disabled state when listing integration tests.

</content>
</entry>
<entry>
<id>ad824ad9162076c6b1894bee4ecba05debd78d6b</id>
<published>2026-09-13T15:47:35Z</published>
<updated>2026-09-13T15:49:28Z</updated>
<title>taler-harness: cover wallet payment choices and template parameters</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/ad824ad9162076c6b1894bee4ecba05debd78d6b.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit ad824ad9162076c6b1894bee4ecba05debd78d6b
parent 675545ef924a385c4fd829b242d26b8b7877e602
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:47:35 +0200

taler-harness: cover wallet payment choices and template parameters

Exercise switching between payable choices, directly paying fixed
templates, and validating and replacing editable template defaults.
Check the resulting parameters and selected choice at the merchant.

Use accessible controls and fixture data, scope field assertions to
payment inputs, and wait for state changes without assuming exact fees.

</content>
</entry>
<entry>
<id>675545ef924a385c4fd829b242d26b8b7877e602</id>
<published>2026-09-13T15:39:18Z</published>
<updated>2026-09-13T15:49:28Z</updated>
<title>taler-harness: update wallet browser assertions for revised labels</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/675545ef924a385c4fd829b242d26b8b7877e602.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 675545ef924a385c4fd829b242d26b8b7877e602
parent 05c31207d3e8277c8559be6cfdb2da15f8718640
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:39:18 +0200

taler-harness: update wallet browser assertions for revised labels

Expect the current peer-payment headings and bank confirmation states.
Select the visible Change button explicitly when the review back button
has the same accessible name.

</content>
</entry>
<entry>
<id>05c31207d3e8277c8559be6cfdb2da15f8718640</id>
<published>2026-09-13T15:16:28Z</published>
<updated>2026-09-13T15:19:14Z</updated>
<title>wallet web UI: include translator notes in message catalogs</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/05c31207d3e8277c8559be6cfdb2da15f8718640.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 05c31207d3e8277c8559be6cfdb2da15f8718640
parent bf45f9633deb51aeb5ff813e42501d6a804403e8
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:16:28 +0200

wallet web UI: include translator notes in message catalogs

Regenerate extracted source comments and references for the payment,
settings, recovery and demo messages without changing translations.

</content>
</entry>
<entry>
<id>bf45f9633deb51aeb5ff813e42501d6a804403e8</id>
<published>2026-09-13T15:16:19Z</published>
<updated>2026-09-13T15:19:14Z</updated>
<title>wallet web UI: explain demo and story labels to translators</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/bf45f9633deb51aeb5ff813e42501d6a804403e8.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit bf45f9633deb51aeb5ff813e42501d6a804403e8
parent 5b8d82b462d878087b8fbac4beabb0d813723015
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:16:19 +0200

wallet web UI: explain demo and story labels to translators

Describe fictional payment scenarios, component examples and developer
story labels in source comments.

</content>
</entry>
<entry>
<id>5b8d82b462d878087b8fbac4beabb0d813723015</id>
<published>2026-09-13T15:15:48Z</published>
<updated>2026-09-13T15:19:14Z</updated>
<title>wallet web UI: explain settings and recovery terms to translators</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/5b8d82b462d878087b8fbac4beabb0d813723015.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 5b8d82b462d878087b8fbac4beabb0d813723015
parent e0f8d1a576aa1489ba62cc3ed17f5ea3e6b2e0e6
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:15:48 +0200

wallet web UI: explain settings and recovery terms to translators

Add source notes for account management, exchange information, donation
receipts, wallet recovery and browser storage terminology.

</content>
</entry>
<entry>
<id>e0f8d1a576aa1489ba62cc3ed17f5ea3e6b2e0e6</id>
<published>2026-09-13T15:15:39Z</published>
<updated>2026-09-13T15:19:13Z</updated>
<title>wallet web UI: add translator context to financial screens</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/e0f8d1a576aa1489ba62cc3ed17f5ea3e6b2e0e6.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit e0f8d1a576aa1489ba62cc3ed17f5ea3e6b2e0e6
parent 1f8b707ecb19cb858d8618f62efa73e45a77cf91
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:15:39 +0200

wallet web UI: add translator context to financial screens

Explain ambiguous balance, payment, withdrawal and transaction labels
where they are displayed, including fees and the direction of transfers.

</content>
</entry>
<entry>
<id>1f8b707ecb19cb858d8618f62efa73e45a77cf91</id>
<published>2026-09-13T15:15:33Z</published>
<updated>2026-09-13T15:19:13Z</updated>
<title>wallet web UI: explain model and status messages to translators</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/1f8b707ecb19cb858d8618f62efa73e45a77cf91.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 1f8b707ecb19cb858d8618f62efa73e45a77cf91
parent 56e75d3fe6e23f71ab5c2ebd85d04d74a318f959
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:15:33 +0200

wallet web UI: explain model and status messages to translators

Document money direction, exchange services, payment scopes, transaction
states and browser storage terms alongside their source messages.

</content>
</entry>
<entry>
<id>56e75d3fe6e23f71ab5c2ebd85d04d74a318f959</id>
<published>2026-09-13T15:14:47Z</published>
<updated>2026-09-13T15:19:13Z</updated>
<title>wallet web UI: translate the revised payment terminology</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/56e75d3fe6e23f71ab5c2ebd85d04d74a318f959.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 56e75d3fe6e23f71ab5c2ebd85d04d74a318f959
parent 5addd9e394a4f818f88687d3552817ab9de2ce9a
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:14:47 +0200

wallet web UI: translate the revised payment terminology

Update German, Swiss German, French and Italian for the revised labels.
Use consistent German terms for balances, payment requests and bank
transfer references.

</content>
</entry>
<entry>
<id>5addd9e394a4f818f88687d3552817ab9de2ce9a</id>
<published>2026-09-13T15:14:31Z</published>
<updated>2026-09-13T15:19:13Z</updated>
<title>wallet web UI: clarify payment directions and financial labels</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/5addd9e394a4f818f88687d3552817ab9de2ce9a.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 5addd9e394a4f818f88687d3552817ab9de2ce9a
parent 3f0c08da0046b252f2da7e1b0891c58f5c8b04f5
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:14:31 +0200

wallet web UI: clarify payment directions and financial labels

Use Payment request for peer-pull links and distinguish wallet costs
from transfer amounts. Describe bank confirmations, payment references,
renewal, recovery and browser storage protection consistently.

</content>
</entry>
<entry>
<id>3f0c08da0046b252f2da7e1b0891c58f5c8b04f5</id>
<published>2026-09-13T15:10:18Z</published>
<updated>2026-09-13T15:19:12Z</updated>
<title>pogen: preserve translator comments in extracted messages</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/3f0c08da0046b252f2da7e1b0891c58f5c8b04f5.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 3f0c08da0046b252f2da7e1b0891c58f5c8b04f5
parent 52eb98d4e71971d5f6b4fb82d90f0ea19d18322d
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 17:10:18 +0200

pogen: preserve translator comments in extracted messages

Extract translator notes from parsed token boundaries so JSX comments
survive template interpolations. Preserve multiline notes and comments
on plural forms, and avoid attaching a note to the following message.

</content>
</entry>
<entry>
<id>52eb98d4e71971d5f6b4fb82d90f0ea19d18322d</id>
<published>2026-09-13T14:16:59Z</published>
<updated>2026-09-13T14:22:40Z</updated>
<title>taler-util: reject dot-segment API identifiers</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/52eb98d4e71971d5f6b4fb82d90f0ea19d18322d.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 52eb98d4e71971d5f6b4fb82d90f0ea19d18322d
parent 9718a3bfddc58eacbcaf2af3aa8fc05c255004ce
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 16:16:59 +0200

taler-util: reject dot-segment API identifiers

Reject exact dot and double-dot identifiers before constructing an API
request URL. URL parsers normalize these segments even when percent-
encoded, so escaping alone cannot keep them within the intended resource
path.

</content>
</entry>
<entry>
<id>9718a3bfddc58eacbcaf2af3aa8fc05c255004ce</id>
<published>2026-09-13T14:16:50Z</published>
<updated>2026-09-13T14:22:40Z</updated>
<title>taler-util: enforce TLS throughout redirect chains</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/9718a3bfddc58eacbcaf2af3aa8fc05c255004ce.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 9718a3bfddc58eacbcaf2af3aa8fc05c255004ce
parent 24470cd87c2cbb1c1c49c7500363e8f05d41e675
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 16:16:50 +0200

taler-util: enforce TLS throughout redirect chains

Follow redirects in the shared HTTP layer when TLS is required, checking
each destination before making another request. Preserve redirect method
and body semantics, remove credentials on origin changes, and apply one
deadline and cancellation token to the entire chain.

</content>
</entry>
<entry>
<id>24470cd87c2cbb1c1c49c7500363e8f05d41e675</id>
<published>2026-09-13T14:16:42Z</published>
<updated>2026-09-13T14:22:40Z</updated>
<title>idb-bridge: roll back failed record writes</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/24470cd87c2cbb1c1c49c7500363e8f05d41e675.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 24470cd87c2cbb1c1c49c7500363e8f05d41e675
parent 74724178d53be1b41e768772e3de8c6ad56cdc78
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 16:16:42 +0200

idb-bridge: roll back failed record writes

Wrap object, index and key-generator updates in a request savepoint so a
canceled uniqueness error cannot leave a partial write behind. Abort the
whole transaction if the savepoint rollback fails, even if the
application cancels the request error. Preserve the key generator on
cursor updates.

</content>
</entry>
<entry>
<id>74724178d53be1b41e768772e3de8c6ad56cdc78</id>
<published>2026-09-13T14:16:35Z</published>
<updated>2026-09-13T14:22:40Z</updated>
<title>idb-bridge: respect open lower bounds in range deletes</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/74724178d53be1b41e768772e3de8c6ad56cdc78.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 74724178d53be1b41e768772e3de8c6ad56cdc78
parent eda73e896e354f1ce8a0dea9b4a6e04d6c810704
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 16:16:35 +0200

idb-bridge: respect open lower bounds in range deletes

Start range deletion after an open lower bound so the boundary record is
retained, matching the existing handling of open upper bounds.

</content>
</entry>
<entry>
<id>eda73e896e354f1ce8a0dea9b4a6e04d6c810704</id>
<published>2026-09-13T14:16:27Z</published>
<updated>2026-09-13T14:22:39Z</updated>
<title>wallet-core: export SQLite data from one snapshot</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/eda73e896e354f1ce8a0dea9b4a6e04d6c810704.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit eda73e896e354f1ce8a0dea9b4a6e04d6c810704
parent dec00d5919deb70850649dbe3e323aae8951e87e
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 16:16:27 +0200

wallet-core: export SQLite data from one snapshot

Read all export tables inside a database transaction so concurrent
writers on other connections cannot produce a mixed snapshot. Use the
existing transaction runner to release the transaction after export
failures.

</content>
</entry>
<entry>
<id>dec00d5919deb70850649dbe3e323aae8951e87e</id>
<published>2026-09-13T14:16:09Z</published>
<updated>2026-09-13T14:22:39Z</updated>
<title>wallet-core: reject invalid merchant contract signatures</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/dec00d5919deb70850649dbe3e323aae8951e87e.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit dec00d5919deb70850649dbe3e323aae8951e87e
parent b3b87417f1e1bf42fa2aad4b93167764a470f265
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 16:16:09 +0200

wallet-core: reject invalid merchant contract signatures

Check the validity field returned by signature verification instead of
treating the result object itself as a boolean. Invalid signatures must
fail the claim before contract terms are stored.

</content>
</entry>
<entry>
<id>b3b87417f1e1bf42fa2aad4b93167764a470f265</id>
<published>2026-09-13T10:06:28Z</published>
<updated>2026-09-13T10:59:50Z</updated>
<title>challenger web UI: fix dark mode issues</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/b3b87417f1e1bf42fa2aad4b93167764a470f265.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit b3b87417f1e1bf42fa2aad4b93167764a470f265
parent a0258f14439129bec53ed718ffe1d9082117afcb
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun, 13 Sep 2026 12:06:28 +0200

challenger web UI: fix dark mode issues

</content>
</entry>
<entry>
<id>a0258f14439129bec53ed718ffe1d9082117afcb</id>
<published>2026-09-11T19:34:34Z</published>
<updated>2026-09-11T19:40:24Z</updated>
<title>merchant web UI: retain pending template IDs across token renewal</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/a0258f14439129bec53ed718ffe1d9082117afcb.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit a0258f14439129bec53ed718ffe1d9082117afcb
parent 50e616282b487c59ff56417f33559eceef3e4fab
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 21:34:34 +0200

merchant web UI: retain pending template IDs across token renewal

Scope pending template creation to the login generation, account, and
backend instead of the current token. Exclude renewed credentials from
the creation request key so an unchanged retry reuses the ID whose
response was lost and authenticates with the fresh token.

Continue discarding pending attempts on a new login, account change,
or backend change.

Issue: https://bugs.taler.net/n/10620

</content>
</entry>
<entry>
<id>50e616282b487c59ff56417f33559eceef3e4fab</id>
<published>2026-09-11T19:08:50Z</published>
<updated>2026-09-11T19:40:23Z</updated>
<title>merchant web UI: translate template ID collision errors</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/50e616282b487c59ff56417f33559eceef3e4fab.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 50e616282b487c59ff56417f33559eceef3e4fab
parent a02c4ac697261be248b5891e3aed7dc171dde7be
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 21:08:50 +0200

merchant web UI: translate template ID collision errors

Translate the occupied template ID message into German, Swiss German,
French, and Italian. Regenerate the runtime catalogs and update source
references for the template form and its ID helpers.

Issue: https://bugs.taler.net/n/10620

</content>
</entry>
<entry>
<id>a02c4ac697261be248b5891e3aed7dc171dde7be</id>
<published>2026-09-11T19:08:39Z</published>
<updated>2026-09-11T19:40:23Z</updated>
<title>merchant web UI: show available template IDs and manual conflicts</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/a02c4ac697261be248b5891e3aed7dc171dde7be.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit a02c4ac697261be248b5891e3aed7dc171dde7be
parent 8eb0b7febe6eb248941b5d0493516782afbcc421
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 21:08:39 +0200

merchant web UI: show available template IDs and manual conflicts

Pass automatic and manual ID modes through the creation form and save
the ID returned by the creation operation. Refresh suggestions as names
or existing templates change while preserving IDs entered explicitly.

Reveal and focus the ID field when a manual ID is occupied. Prevent
overlapping submissions while creation and collision retries run.

Issue: https://bugs.taler.net/n/10620

</content>
</entry>
<entry>
<id>8eb0b7febe6eb248941b5d0493516782afbcc421</id>
<published>2026-09-11T19:08:27Z</published>
<updated>2026-09-11T19:40:23Z</updated>
<title>merchant web UI: allocate unused template IDs</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/8eb0b7febe6eb248941b5d0493516782afbcc421.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 8eb0b7febe6eb248941b5d0493516782afbcc421
parent 67ef622ed4e7fae56930a065c1230294c07ec272
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 21:08:27 +0200

merchant web UI: allocate unused template IDs

Look up existing template IDs before creating a template and choose the
first free numeric suffix for automatic IDs. Retry only confirmed ID
conflicts, with a limit of ten POST attempts.

Keep the attempted ID after an uncertain response so an unchanged retry
does not create another template. Reject occupied manual IDs, return the
allocated ID, and preserve successful writes when list refresh fails.

Issue: https://bugs.taler.net/n/10620

</content>
</entry>
<entry>
<id>67ef622ed4e7fae56930a065c1230294c07ec272</id>
<published>2026-09-11T18:28:14Z</published>
<updated>2026-09-11T18:33:49Z</updated>
<title>wallet-webui: translate withdrawal limit messages</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/67ef622ed4e7fae56930a065c1230294c07ec272.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 67ef622ed4e7fae56930a065c1230294c07ec272
parent 8bcb68fd7ade1bb17a4b46b06ed9f7846512ff4b
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 20:28:14 +0200

wallet-webui: translate withdrawal limit messages

Add German, Swiss German, French, and Italian translations for cumulative
KYC warnings, hard withdrawal limits, and unavailable limit checks.
Regenerate the template, source references, and runtime string catalog.

Issue: https://bugs.taler.net/n/10489

</content>
</entry>
<entry>
<id>8bcb68fd7ade1bb17a4b46b06ed9f7846512ff4b</id>
<published>2026-09-11T18:27:59Z</published>
<updated>2026-09-11T18:33:49Z</updated>
<title>wallet-webui: show cumulative withdrawal limit warnings</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/8bcb68fd7ade1bb17a4b46b06ed9f7846512ff4b.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 8bcb68fd7ade1bb17a4b46b06ed9f7846512ff4b
parent 37019e79814239d3468bf6c928a6a25fd4d831ff
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 20:27:59 +0200

wallet-webui: show cumulative withdrawal limit warnings

Keep the prepared bank transaction ID when recalculating an amount or age
restriction so wallet-core can check the sender account.

Show cumulative KYC warnings, disable confirmation for known hard limits,
and keep unavailable checks informational. Preserve existing balance
warnings and compatibility with older wallet-core responses.

Issue: https://bugs.taler.net/n/10489

</content>
</entry>
<entry>
<id>37019e79814239d3468bf6c928a6a25fd4d831ff</id>
<published>2026-09-11T18:27:40Z</published>
<updated>2026-09-11T18:33:49Z</updated>
<title>taler-harness: cover cumulative withdrawal KYC previews</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/37019e79814239d3468bf6c928a6a25fd4d831ff.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 37019e79814239d3468bf6c928a6a25fd4d831ff
parent 74490cf8943d716ccffd2a9db0d204ab0aa4b5aa
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 20:27:40 +0200

taler-harness: cover cumulative withdrawal KYC previews

Exercise two withdrawals of 100 against a daily withdrawal limit of 150.
Spend the first withdrawal and restart a persistent wallet before checking
the second preview, with variants for SQLite and IndexedDB.

Cover repeated previews, a smaller amount, sender isolation, the eventual
KYC requirement, and updated account rules after an AML decision.

Issue: https://bugs.taler.net/n/10489

</content>
</entry>
<entry>
<id>74490cf8943d716ccffd2a9db0d204ab0aa4b5aa</id>
<published>2026-09-11T18:27:21Z</published>
<updated>2026-09-11T18:33:48Z</updated>
<title>wallet-core: preview cumulative withdrawal KYC limits</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/74490cf8943d716ccffd2a9db0d204ab0aa4b5aa.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 74490cf8943d716ccffd2a9db0d204ab0aa4b5aa
parent 22c1e668054402cdf126b21b2d1981fa91ac9c4f
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 20:27:21 +0200

wallet-core: preview cumulative withdrawal KYC limits

Accept the prepared bank withdrawal ID to identify the sender account.
Fetch current account rules with a previously funded reserve and compare
each withdrawal timeframe against completed withdrawals in this wallet.

Expose soft, hard, and unknown outcomes without changing withdrawal state,
and retain the existing balance and zero-limit warnings.

Issue: https://bugs.taler.net/n/10489

</content>
</entry>
<entry>
<id>22c1e668054402cdf126b21b2d1981fa91ac9c4f</id>
<published>2026-09-11T14:50:32Z</published>
<updated>2026-09-11T16:39:20Z</updated>
<title>taler-harness: clean up worker process groups after failures</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/22c1e668054402cdf126b21b2d1981fa91ac9c4f.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 22c1e668054402cdf126b21b2d1981fa91ac9c4f
parent d2192da12ca9a34ec78458420f3d35fd0d39e875
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 16:50:32 +0200

taler-harness: clean up worker process groups after failures

Let the parent runner terminate worker process groups after failures and
interruptions, escalating from SIGTERM to SIGKILL when needed.

Issue: https://bugs.taler.net/n/9814

</content>
</entry>
<entry>
<id>d2192da12ca9a34ec78458420f3d35fd0d39e875</id>
<published>2026-09-11T12:54:33Z</published>
<updated>2026-09-11T12:55:25Z</updated>
<title>merchant-webui: reveal machine access tokens after MFA</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/d2192da12ca9a34ec78458420f3d35fd0d39e875.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit d2192da12ca9a34ec78458420f3d35fd0d39e875
parent 2bbf1822cfd725d9360161d233e8cdf105ed9940
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 14:54:33 +0200

merchant-webui: reveal machine access tokens after MFA

Keep newly issued machine access tokens in application memory across
second-factor verification and return to the copy dialog. Remove the
token from the redirect URL and clear it when the creation flow or
initiating session ends.

</content>
</entry>
<entry>
<id>2bbf1822cfd725d9360161d233e8cdf105ed9940</id>
<published>2026-09-11T07:50:51Z</published>
<updated>2026-09-11T07:50:51Z</updated>
<title>taler-harness: stop KYC refresh during notification assertions</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/2bbf1822cfd725d9360161d233e8cdf105ed9940.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 2bbf1822cfd725d9360161d233e8cdf105ed9940
parent f8f5fac48f12ad4c9844f062a143e5fb7aa92539
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 09:50:51 +0200

taler-harness: stop KYC refresh during notification assertions

Keep the checker from replacing the synthetic KYC status while the
notification report is rendered. Report generation requests a refresh,
so setting the next poll time alone does not prevent a second alert.

</content>
</entry>
<entry>
<id>f8f5fac48f12ad4c9844f062a143e5fb7aa92539</id>
<published>2026-09-11T07:50:51Z</published>
<updated>2026-09-11T07:50:51Z</updated>
<title>exchange-aml-webui: clear the previous error when retrying unlock</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/f8f5fac48f12ad4c9844f062a143e5fb7aa92539.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit f8f5fac48f12ad4c9844f062a143e5fb7aa92539
parent 7a88f274dd3016a86e789d0a4fb45d7aa886ed37
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 09:50:51 +0200

exchange-aml-webui: clear the previous error when retrying unlock

Clear the old unlock error before starting a new attempt. A successful
unlock unmounts the form before operation completion callbacks run, so
clearing notifications in the success callback left a stale error on
the unlocked dashboard.

</content>
</entry>
<entry>
<id>7a88f274dd3016a86e789d0a4fb45d7aa886ed37</id>
<published>2026-09-11T07:50:51Z</published>
<updated>2026-09-11T07:50:51Z</updated>
<title>taler-harness: keep wallet socket paths short</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/7a88f274dd3016a86e789d0a4fb45d7aa886ed37.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 7a88f274dd3016a86e789d0a4fb45d7aa886ed37
parent 4cf569b1a2524df92abda79d195c48dd76c252f9
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 09:50:51 +0200

taler-harness: keep wallet socket paths short

Allocate wallet sockets in a short temporary directory so long test
names and log roots cannot exceed the Unix socket path limit. Give each
wallet its own path and remove the socket directory during shutdown.

</content>
</entry>
<entry>
<id>4cf569b1a2524df92abda79d195c48dd76c252f9</id>
<published>2026-09-11T07:50:51Z</published>
<updated>2026-09-11T07:50:51Z</updated>
<title>wallet-core: record the reason for an aborted peer payment</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/4cf569b1a2524df92abda79d195c48dd76c252f9.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 4cf569b1a2524df92abda79d195c48dd76c252f9
parent 9d4391204590bb1e3e523e5f684b99c4347a1759
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Fri, 11 Sep 2026 09:50:51 +0200

wallet-core: record the reason for an aborted peer payment

When reconciliation aborts payment because its purse is already gone,
record the same purse-gone reason as the direct abort path. This keeps
the reason available when the wallet reports the final transaction.

</content>
</entry>
<entry>
<id>9d4391204590bb1e3e523e5f684b99c4347a1759</id>
<published>2026-09-10T21:58:08Z</published>
<updated>2026-09-10T22:01:16Z</updated>
<title>taler-harness: unify Stagefright merchant scenarios</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/9d4391204590bb1e3e523e5f684b99c4347a1759.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 9d4391204590bb1e3e523e5f684b99c4347a1759
parent ab69051900cd338f6c5943bb8c5927f934512292
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 23:58:08 +0200

taler-harness: unify Stagefright merchant scenarios

Replace merchant-webui and merchant-mytops with stagefright merchant.
Select repo, deployed, or custom UI independently of onboarding or full
coverage, defaulting to the repo UI and full coverage.

Share registration and MFA handling, require checkout assets in repo
mode, and defer wallet setup until full coverage is selected. Update
scenario selectors and clean up resources when setup fails.

</content>
</entry>
<entry>
<id>ab69051900cd338f6c5943bb8c5927f934512292</id>
<published>2026-09-10T19:53:50Z</published>
<updated>2026-09-10T19:57:41Z</updated>
<title>merchant web UI: translate configurable token lifetime settings</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/ab69051900cd338f6c5943bb8c5927f934512292.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit ab69051900cd338f6c5943bb8c5927f934512292
parent 7b491fb2da4304c5d3335df93d10e8cef000cb46
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 21:53:50 +0200

merchant web UI: translate configurable token lifetime settings

</content>
</entry>
<entry>
<id>7b491fb2da4304c5d3335df93d10e8cef000cb46</id>
<published>2026-09-10T19:53:30Z</published>
<updated>2026-09-10T19:57:41Z</updated>
<title>merchant web UI: configure login token lifetime, default to forever</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/7b491fb2da4304c5d3335df93d10e8cef000cb46.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 7b491fb2da4304c5d3335df93d10e8cef000cb46
parent e9a0a5339a292f130909329b1caaf5c4a1a2c706
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 21:53:30 +0200

merchant web UI: configure login token lifetime, default to forever

Accept duration strings and protocol durations in webui-config.json.
Use the configured lifetime for sign-in, account creation, and renewal,
while retaining local developer overrides and finite renewal scheduling.

Encode unlimited self-provisioning validity as unsigned milliseconds.

</content>
</entry>
<entry>
<id>e9a0a5339a292f130909329b1caaf5c4a1a2c706</id>
<published>2026-09-10T13:21:28Z</published>
<updated>2026-09-10T13:27:30Z</updated>
<title>merchant web UI: translate template OTP device selection</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/e9a0a5339a292f130909329b1caaf5c4a1a2c706.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit e9a0a5339a292f130909329b1caaf5c4a1a2c706
parent e1b15434b132cf02a3d1321e7830fc3d0818ab6e
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 15:21:28 +0200

merchant web UI: translate template OTP device selection

</content>
</entry>
<entry>
<id>e1b15434b132cf02a3d1321e7830fc3d0818ab6e</id>
<published>2026-09-10T13:21:14Z</published>
<updated>2026-09-10T13:27:30Z</updated>
<title>merchant web UI: restore template OTP device selection</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/e1b15434b132cf02a3d1321e7830fc3d0818ab6e.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit e1b15434b132cf02a3d1321e7830fc3d0818ab6e
parent 58edf272f56a3474a9ff6e7f0ba2aadb38ccffcb
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 15:21:14 +0200

merchant web UI: restore template OTP device selection

Offer the shared searchable device selector under advanced options for
new and existing templates. Preserve assignments when device loading
fails, and allow merchants to replace or clear the selected device.

Filter shared choices as the user types and handle empty search results
without submitting the form. Resolve currency configuration arriving
after the form opens and keep amount currency changes in sync.

</content>
</entry>
<entry>
<id>58edf272f56a3474a9ff6e7f0ba2aadb38ccffcb</id>
<published>2026-09-10T13:20:56Z</published>
<updated>2026-09-10T13:27:29Z</updated>
<title>web UIs: use Preact 10.29.8 throughout the workspace</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/58edf272f56a3474a9ff6e7f0ba2aadb38ccffcb.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 58edf272f56a3474a9ff6e7f0ba2aadb38ccffcb
parent a28d38bb5d742f153f1655b909d5d58bff686913
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 15:20:56 +0200

web UIs: use Preact 10.29.8 throughout the workspace

Pin every Preact dependency to the same stable release so applications
and shared components use one runtime. Update component return types,
element attributes, state setter types, and DOM setup for compatibility.

</content>
</entry>
<entry>
<id>a28d38bb5d742f153f1655b909d5d58bff686913</id>
<published>2026-09-10T09:17:17Z</published>
<updated>2026-09-10T09:18:59Z</updated>
<title>wallet-core: avoid redundant notifications</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/a28d38bb5d742f153f1655b909d5d58bff686913.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit a28d38bb5d742f153f1655b909d5d58bff686913
parent 87250c4f4ec55a639cb8058c4f249f5d14ac83ec
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 11:17:17 +0200

wallet-core: avoid redundant notifications

</content>
</entry>
<entry>
<id>87250c4f4ec55a639cb8058c4f249f5d14ac83ec</id>
<published>2026-09-09T23:31:56Z</published>
<updated>2026-09-09T23:38:01Z</updated>
<title>taler-harness: cover coin recovery against a running exchange</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/87250c4f4ec55a639cb8058c4f249f5d14ac83ec.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 87250c4f4ec55a639cb8058c4f249f5d14ac83ec
parent 44890ef04a86e5eae08b6f30dcedbb7371e14e29
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 01:31:56 +0200

taler-harness: cover coin recovery against a running exchange

Exercise recovery after another wallet refreshes shared coins,
including recursive melts, residual balances, and both refresh protocol
versions. Include RSA and CS denominations, age restrictions, an original
CS blinding seed, unfinished reveals, and CLI progress output.

</content>
</entry>
<entry>
<id>44890ef04a86e5eae08b6f30dcedbb7371e14e29</id>
<published>2026-09-09T23:31:54Z</published>
<updated>2026-09-09T23:38:01Z</updated>
<title>wallet-cli: add recover-coins with a refreshing progress display</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/44890ef04a86e5eae08b6f30dcedbb7371e14e29.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 44890ef04a86e5eae08b6f30dcedbb7371e14e29
parent c727431c67ff83792f9147a425b3d84e1a2e6152
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 01:31:54 +0200

wallet-cli: add recover-coins with a refreshing progress display

Expose advanced recover-coins for one exchange, with --all-coins to
include spent roots and --progress or -P to display recovery progress.

Render a throttled single line on terminals and start/end messages when
redirected, keeping the JSON result on stdout.

</content>
</entry>
<entry>
<id>c727431c67ff83792f9147a425b3d84e1a2e6152</id>
<published>2026-09-09T23:31:52Z</published>
<updated>2026-09-09T23:38:01Z</updated>
<title>wallet-core: recover coins through recursive refresh replay</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/c727431c67ff83792f9147a425b3d84e1a2e6152.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit c727431c67ff83792f9147a425b3d84e1a2e6152
parent b565f5670ab7e1330fcbb2c0286b63362f05d373
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 01:31:52 +0200

wallet-core: recover coins through recursive refresh replay

Add testingRecoverCoins for one exchange, starting with fresh coins
by default and resuming unfinished recovery. Authenticate histories,
reconstruct matching v27 or v32 refresh commitments, and verify recovered
coin signatures before importing outputs.

Follow further melts recursively, refresh residual balances, preserve
local coin allocation and suspension, and report recovered balances and
issues. Emit progress through completion, failure or cancellation.

</content>
</entry>
<entry>
<id>b565f5670ab7e1330fcbb2c0286b63362f05d373</id>
<published>2026-09-09T23:31:48Z</published>
<updated>2026-09-09T23:38:01Z</updated>
<title>wallet-core: share refresh derivation and pin melt indices</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/b565f5670ab7e1330fcbb2c0286b63362f05d373.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit b565f5670ab7e1330fcbb2c0286b63362f05d373
parent 667f5fec1c36dc23d494e3dc86f335529a6ce272
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 01:31:48 +0200

wallet-core: share refresh derivation and pin melt indices

Expose deterministic refresh derivation and use a stored CS blinding
seed when reconstructing an existing refresh.

Share melt confirmation authentication between normal refresh and
recovery. Persist the first authenticated no-reveal index before any
batch disclosure and reject conflicting indices on retries.

</content>
</entry>
<entry>
<id>667f5fec1c36dc23d494e3dc86f335529a6ce272</id>
<published>2026-09-09T23:31:46Z</published>
<updated>2026-09-09T23:38:01Z</updated>
<title>wallet-core: add durable storage for coin recovery</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/667f5fec1c36dc23d494e3dc86f335529a6ce272.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 667f5fec1c36dc23d494e3dc86f335529a6ce272
parent 1faea487783c82362af5e87631c4cf28b73dd27e
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 01:31:46 +0200

wallet-core: add durable storage for coin recovery

Store recovery worklists per exchange and authenticated melt indices
per exchange and commitment in dedicated IndexedDB and SQLite stores.
Preserve them through database export, import and backend conversion.

Allow refresh sessions to retain an original CS blinding seed supplied
by another wallet.

</content>
</entry>
<entry>
<id>1faea487783c82362af5e87631c4cf28b73dd27e</id>
<published>2026-09-09T23:31:38Z</published>
<updated>2026-09-09T23:38:00Z</updated>
<title>taler-util: describe coin recovery requests and progress</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/1faea487783c82362af5e87631c4cf28b73dd27e.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 1faea487783c82362af5e87631c4cf28b73dd27e
parent 23e092a4473f0ae532b075b2f1f4c5c5bba169bb
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Thu, 10 Sep 2026 01:31:38 +0200

taler-util: describe coin recovery requests and progress

Decode the ordered output denominations in MELT history and the
current reveal endpoint field. Define the recovery request, result and
progress notification types, and handle progress in the browser cache
notification dispatch.

</content>
</entry>
<entry>
<id>23e092a4473f0ae532b075b2f1f4c5c5bba169bb</id>
<published>2026-09-09T11:23:29Z</published>
<updated>2026-09-09T13:50:00Z</updated>
<title>wallet-core: diagnose coin histories for an exchange</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/23e092a4473f0ae532b075b2f1f4c5c5bba169bb.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 23e092a4473f0ae532b075b2f1f4c5c5bba169bb
parent d67bbf3e71054e267cfb3a0eb4c81cb2bfc42cb6
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed,  9 Sep 2026 13:23:29 +0200

wallet-core: diagnose coin histories for an exchange

</content>
</entry>
<entry>
<id>d67bbf3e71054e267cfb3a0eb4c81cb2bfc42cb6</id>
<published>2026-09-09T12:40:21Z</published>
<updated>2026-09-09T12:43:14Z</updated>
<title>wallet-core: add progressToken to waitTransactionState</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/d67bbf3e71054e267cfb3a0eb4c81cb2bfc42cb6.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit d67bbf3e71054e267cfb3a0eb4c81cb2bfc42cb6
parent 4a1ecd2b95f478e545097f986664245aaae82a21
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed,  9 Sep 2026 14:40:21 +0200

wallet-core: add progressToken to waitTransactionState

Also, waitTransactionState is now an alias to
testingWaitTransactionState.

</content>
</entry>
<entry>
<id>4a1ecd2b95f478e545097f986664245aaae82a21</id>
<published>2026-09-09T10:27:06Z</published>
<updated>2026-09-09T10:33:03Z</updated>
<title>wallet-cli: add readonly networking mode</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/4a1ecd2b95f478e545097f986664245aaae82a21.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 4a1ecd2b95f478e545097f986664245aaae82a21
parent 2e0a6ec7fa3f2e0c1eafbb634b6b70244d5bca8a
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Wed,  9 Sep 2026 12:27:06 +0200

wallet-cli: add readonly networking mode

Allow explicitly reviewed protocol queries with
TALER_WALLET_OFFLINE=readonly while retaining full blocking with 1.

</content>
</entry>
<entry>
<id>2e0a6ec7fa3f2e0c1eafbb634b6b70244d5bca8a</id>
<published>2026-09-08T20:11:42Z</published>
<updated>2026-09-08T20:32:17Z</updated>
<title>CI packaging: derive versions from the highest SemVer tag</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/2e0a6ec7fa3f2e0c1eafbb634b6b70244d5bca8a.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 2e0a6ec7fa3f2e0c1eafbb634b6b70244d5bca8a
parent 3cdb4d4b12346f25bad7ff1d7ae2c8b2b895a825
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Tue,  8 Sep 2026 22:11:42 +0200

CI packaging: derive versions from the highest SemVer tag

Select stable and dev.K tags across the full repository, ignoring build
metadata. Use next-patch -0.N and dev.K.N snapshot versions with
matching Debian ordering, and determine exact releases by commit
identity.

Fetch tags for the scheduled commit without limiting history. Stop
packaging when version generation fails or returns an empty version.

</content>
</entry>
<entry>
<id>3cdb4d4b12346f25bad7ff1d7ae2c8b2b895a825</id>
<published>2026-09-08T19:15:37Z</published>
<updated>2026-09-08T19:17:51Z</updated>
<title>CI packaging: build all Debian web UI packages</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/3cdb4d4b12346f25bad7ff1d7ae2c8b2b895a825.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 3cdb4d4b12346f25bad7ff1d7ae2c8b2b895a825
parent 50e73dede4268cf1d121f591308cf2628a109286
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Tue,  8 Sep 2026 21:15:37 +0200

CI packaging: build all Debian web UI packages

Add the merchant, auditor, exchange AML, exchange KYC and challenger
web UI jobs. Share their packaging script with the bank web UI job
and require all eight Debian packages before uploading a revision.

</content>
</entry>
<entry>
<id>50e73dede4268cf1d121f591308cf2628a109286</id>
<published>2026-09-07T16:52:44Z</published>
<updated>2026-09-07T17:14:47Z</updated>
<title>CI packaging: publish the LibEuFin bank WebUI</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/50e73dede4268cf1d121f591308cf2628a109286.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 50e73dede4268cf1d121f591308cf2628a109286
parent 3225ed5f44208cb084a962bfa43d1a6093fe4785
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 18:52:44 +0200

CI packaging: publish the LibEuFin bank WebUI

Build libeufin-bank-webui before deploying the TypeScript packages so
nightly libeufin-bank installations can resolve its dependency.

Use the wallet CLI version and shared artifact directory. Stop the
pipeline when WebUI packaging fails to avoid publishing an incomplete
package set.

</content>
</entry>
<entry>
<id>3225ed5f44208cb084a962bfa43d1a6093fe4785</id>
<published>2026-09-07T15:33:05Z</published>
<updated>2026-09-07T15:36:44Z</updated>
<title>CI packaging: preserve the full Git checkout</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/3225ed5f44208cb084a962bfa43d1a6093fe4785.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 3225ed5f44208cb084a962bfa43d1a6093fe4785
parent 01cc312b83210b1eaaa606d7f4c94e6ebc3a2275
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 17:33:05 +0200

CI packaging: preserve the full Git checkout

Remove the fetch depth limit from wallet CLI and harness packaging so
these stages keep the full history cached by Buildbot.

</content>
</entry>
<entry>
<id>01cc312b83210b1eaaa606d7f4c94e6ebc3a2275</id>
<published>2026-09-07T13:20:13Z</published>
<updated>2026-09-07T15:18:43Z</updated>
<title>bank web UI: select the visit language from the URL</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/01cc312b83210b1eaaa606d7f4c94e6ebc3a2275.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 01cc312b83210b1eaaa606d7f4c94e6ebc3a2275
parent 74e46857a714c345691d303a7ebfafca3b29cbee
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 15:20:13 +0200

bank web UI: select the visit language from the URL

Apply supported lang query values before saved and browser preferences
without changing the saved language. A manual selection replaces the
visit override and persists normally.

Issue: https://bugs.taler.net/n/7309

</content>
</entry>
<entry>
<id>74e46857a714c345691d303a7ebfafca3b29cbee</id>
<published>2026-09-07T12:25:11Z</published>
<updated>2026-09-07T12:30:18Z</updated>
<title>taler-harness: register the debtor account for KYC authentication</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/74e46857a714c345691d303a7ebfafca3b29cbee.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 74e46857a714c345691d303a7ebfafca3b29cbee
parent abc9a0f9304ef6ef541c3ef13769781474fdf1bb
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 14:25:11 +0200

taler-harness: register the debtor account for KYC authentication

Create the deposit destination before sending the KYC-auth transfer.
Libeufin requires its debtor account to exist, whereas Fakebank accepted
the previously fabricated payto URI. Keep this account separate from the
first wallet withdrawal account to preserve the authentication scenario.

</content>
</entry>
<entry>
<id>abc9a0f9304ef6ef541c3ef13769781474fdf1bb</id>
<published>2026-09-07T12:16:24Z</published>
<updated>2026-09-07T12:30:18Z</updated>
<title>taler-harness: share test setup and use current workflow helpers</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/abc9a0f9304ef6ef541c3ef13769781474fdf1bb.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit abc9a0f9304ef6ef541c3ef13769781474fdf1bb
parent b42525e997feeb90e9f80e21020edf00acaa0ea3
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 14:16:24 +0200

taler-harness: share test setup and use current workflow helpers

Use the V3 standard environment for all callers, including fault injection
and wallet database generation. Move withdrawals to V4 and remove the
obsolete environment and withdrawal implementations.

Share repeated bank account, KYC, Donau, payment, peer transfer, browser,
and denomination setup while preserving scenario-specific assertions.

</content>
</entry>
<entry>
<id>b42525e997feeb90e9f80e21020edf00acaa0ea3</id>
<published>2026-09-07T11:48:58Z</published>
<updated>2026-09-07T11:55:14Z</updated>
<title>wallet-core: stop reusing expired digital purchases</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/b42525e997feeb90e9f80e21020edf00acaa0ea3.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit b42525e997feeb90e9f80e21020edf00acaa0ea3
parent c77b2b130866d395b05bd428e09a6316f7d6cf79
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 13:48:58 +0200

wallet-core: stop reusing expired digital purchases

Honor max_pickup_time when selecting prior purchases and reopening
repurchase links. Cap wallet-created Paivana sessions at the remaining
paid access period, and require prior purchases to cover the expiration
bound into externally created sessions.

Issue: https://bugs.taler.net/n/11443

</content>
</entry>
<entry>
<id>c77b2b130866d395b05bd428e09a6316f7d6cf79</id>
<published>2026-09-07T10:37:13Z</published>
<updated>2026-09-07T10:44:27Z</updated>
<title>taler-harness: cover TOPS transaction risk monitoring</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/c77b2b130866d395b05bd428e09a6316f7d6cf79.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit c77b2b130866d395b05bd428e09a6316f7d6cf79
parent 6a358f5b9238fe1cf7ef513922a6b81b2db26901
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 12:37:13 +0200

taler-harness: cover TOPS transaction risk monitoring

Install TOPS, establish a deposit baseline and open an account through
KYC. Advance the exchange clock by two months and exercise deposits
below and above the volume threshold, including repeated deposits after
an investigation starts.

Issue: https://bugs.taler.net/n/9639

</content>
</entry>
<entry>
<id>6a358f5b9238fe1cf7ef513922a6b81b2db26901</id>
<published>2026-09-07T10:36:52Z</published>
<updated>2026-09-07T10:44:27Z</updated>
<title>taler-harness: allow exchange database customizations in dbinit</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/6a358f5b9238fe1cf7ef513922a6b81b2db26901.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 6a358f5b9238fe1cf7ef513922a6b81b2db26901
parent 8c5a66a590db8d11daf69c60d22acd816c0d2b05
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 12:36:52 +0200

taler-harness: allow exchange database customizations in dbinit

Accept an optional customization name and pass it to
taler-exchange-dbinit with separate command arguments.

Issue: https://bugs.taler.net/n/9639

</content>
</entry>
<entry>
<id>8c5a66a590db8d11daf69c60d22acd816c0d2b05</id>
<published>2026-09-07T10:24:32Z</published>
<updated>2026-09-07T10:27:22Z</updated>
<title>wallet-core: restrict token spending to the issuing merchant</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/8c5a66a590db8d11daf69c60d22acd816c0d2b05.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 8c5a66a590db8d11daf69c60d22acd816c0d2b05
parent 7b835351774ff357c2bc08e06f81a8b275d26578
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 12:24:32 +0200

wallet-core: restrict token spending to the issuing merchant

Compare full merchant base URLs with case-insensitive host and instance
names. Ignore token domain lists and reject foreign tokens during
selection and before generating or reusing payment signatures.

Keep legacy API fields for compatibility without allowing them to
override the issuer restriction.

Issue: https://bugs.taler.net/n/11564

</content>
</entry>
<entry>
<id>7b835351774ff357c2bc08e06f81a8b275d26578</id>
<published>2026-09-07T08:59:13Z</published>
<updated>2026-09-07T09:01:54Z</updated>
<title>merchant-webui: translate locked product deletion guidance</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/7b835351774ff357c2bc08e06f81a8b275d26578.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 7b835351774ff357c2bc08e06f81a8b275d26578
parent 98a2aa68298c7500f3860576fffd8a51233d78a8
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 10:59:13 +0200

merchant-webui: translate locked product deletion guidance

Issue: https://bugs.taler.net/n/11405

</content>
</entry>
<entry>
<id>98a2aa68298c7500f3860576fffd8a51233d78a8</id>
<published>2026-09-07T08:59:06Z</published>
<updated>2026-09-07T09:01:53Z</updated>
<title>merchant-webui: explain locked product deletion failures</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/98a2aa68298c7500f3860576fffd8a51233d78a8.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 98a2aa68298c7500f3860576fffd8a51233d78a8
parent 2def7e71ddfe87b816f9c71644b0478078c6796c
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Mon,  7 Sep 2026 10:59:06 +0200

merchant-webui: explain locked product deletion failures

Explain product lock conflicts by error code, including responses without
backend hints. Cover the lock conflict and explicit forced deletion in
the merchant portal harness.

Issue: https://bugs.taler.net/n/11405

</content>
</entry>
<entry>
<id>2def7e71ddfe87b816f9c71644b0478078c6796c</id>
<published>2026-09-06T12:26:05Z</published>
<updated>2026-09-06T12:28:26Z</updated>
<title>typescript-core: derive build versions from Git tags</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/2def7e71ddfe87b816f9c71644b0478078c6796c.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 2def7e71ddfe87b816f9c71644b0478078c6796c
parent d869ee4aa1ce74f3db817f70dc45008f9f1b7423
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun,  6 Sep 2026 14:26:05 +0200

typescript-core: derive build versions from Git tags

Keep package manifests private at version 0.0.0 and resolve component
versions from the shared release tags. Preserve Git build metadata in
source archives and use the tag version for numeric browser manifests.

Remove package-version bump scripts, the NPM publish target, and the
unsupported Qtart CLI build script. Update the release instructions.

</content>
</entry>
<entry>
<id>d869ee4aa1ce74f3db817f70dc45008f9f1b7423</id>
<published>2026-09-06T11:30:58Z</published>
<updated>2026-09-06T11:37:54Z</updated>
<title>wallet-core: default new CLI wallets to native SQLite</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/d869ee4aa1ce74f3db817f70dc45008f9f1b7423.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit d869ee4aa1ce74f3db817f70dc45008f9f1b7423
parent 9c3c488efbb606ae210e529c0dc1388afc695915
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun,  6 Sep 2026 13:30:58 +0200

wallet-core: default new CLI wallets to native SQLite

Also exercise some integration tests with both wallets.

</content>
</entry>
<entry>
<id>9c3c488efbb606ae210e529c0dc1388afc695915</id>
<published>2026-09-06T10:41:06Z</published>
<updated>2026-09-06T10:52:16Z</updated>
<title>harness: exercise current PWA key-change withdrawal gates</title>
<link rel="alternate" type="text/html" href="https://git.gnunet.orgcommit/9c3c488efbb606ae210e529c0dc1388afc695915.html" />
<author>
<name>Florian Dold</name>
<email>dold@taler.net</email>
</author>
<content>commit 9c3c488efbb606ae210e529c0dc1388afc695915
parent 3a3e5a9cac36ab37204a0468f1a42df0f9b4a248
Author: Florian Dold &lt;dold@taler.net&gt;
Date:   Sun,  6 Sep 2026 12:41:06 +0200

harness: exercise current PWA key-change withdrawal gates

Check legacy funds in the balance list and exclude them from peer
payments. Serve a new terms version after replacing the exchange keys
and recognize the current balance page after cancelling withdrawal.

</content>
</entry>
</feed>
