View Issue Details

IDProjectCategoryView StatusLast Update
0009758Talerwallet (WebExtension)public2025-10-31 19:49
ReporterChristian Grothoff Assigned Tosebasjm Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritytextReproducibilityN/A
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product Versiongit (master) 
Target Version1.1Fixed in Version1.1 
Summary0009758: tried to add TOPS exchange to WebExtension and failed
DescriptionWell, technically the TOPS exchange was already in the list (with a balance of 0) and I just tried to 'withdraw'.
I get the following error with subject 'Wallet operation "addExchange" failed':
{
  "context": [],
  "cause": {
    "details": {
      "code": 7032,
      "when": {
        "t_ms": 1744980630020
      },
      "hint": "Error (WALLET_EXCHANGE_UNAVAILABLE)",
      "exchangeBaseUrl": "https://exchange.taler-ops.ch/"
    }
  }
}

Note that the TOPS exchange was running normally at the time.
Tagsux

Required notifications

Address or linkRemarkAdded byNotifiedActions

The plan

IDSummaryStatusAssigned ToEstimated effort (hours)
0008526parsing taler:// and payto:// should also get errors closedsebasjm
This issue (hours)
Its children (hours)0
Together (hours)0
Nothing is missing: the plan can be finished.

Relationships

parent of 0008526 closedsebasjm parsing taler:// and payto:// should also get errors 

Activities

Florian Dold

2025-04-19 15:57

manager   ~0024614

From your wallet DB, the exchange entry is in the following (bad!) state:

      "exchangeUpdateStatus": "unavailable-update",
      "exchangeEntryStatus": "used",
      "unavailableReason": {
        "code": 7038,
        "hint": "Error (WALLET_EXCHANGE_ENTRY_UPDATE_CONFLICT)",
        "detail": "master public key changed"
      }

To fix this, you'd need to purge the exchange. Or wallet-core needs to learn to deal with this more nicely, which is on the roadmap, but post-1.0.

I've improved error reporting to also include the above error details in the addExchange error and not just in the exchange entry.

Christian Grothoff

2025-04-19 17:16

manager   ~0024618

Purge worked, now I got another fun one for you. Look at the error message...
 (and yes, should be withdraw-exchange, then it works, but still...)
taler.png (44,374 bytes)   
taler.png (44,374 bytes)   

Christian Grothoff

2025-04-19 17:18

manager   ~0024619

I suggest that *if* the URL starts with taler:// but you do not recognize the action, write 'unsupported Taler-action "$ACTION"'
where $ACTION is the text between 'taler://' and the next '/'.

sebasjm

2025-10-01 21:49

developer   ~0026080

9207a4835..57ab7532f

Issue History

Date ModifiedUsernameFieldChange
2025-04-18 12:52Christian GrothoffNew Issue
2025-04-18 12:52Christian GrothoffStatusnew => assigned
2025-04-18 12:52Christian GrothoffAssigned To => Florian Dold
2025-04-18 12:53Christian GrothoffAssigned ToFlorian Dold => sebasjm
2025-04-19 15:57Florian DoldNote Added: 0024614
2025-04-19 15:58Florian DoldAssigned Tosebasjm => Christian Grothoff
2025-04-19 15:58Florian DoldStatusassigned => feedback
2025-04-19 17:16Christian GrothoffNote Added: 0024618
2025-04-19 17:16Christian GrothoffFile Added: taler.png
2025-04-19 17:16Christian GrothoffAssigned ToChristian Grothoff => sebasjm
2025-04-19 17:18Christian GrothoffNote Added: 0024619
2025-04-19 17:18Christian GrothoffStatusfeedback => assigned
2025-04-19 17:18Christian GrothoffTarget Version1.0 => post-1.0
2025-04-19 17:18Christian GrothoffTag Attached: ux
2025-04-23 22:28Christian GrothoffAssigned Tosebasjm =>
2025-04-23 22:28Christian GrothoffStatusassigned => implementing
2025-08-04 23:15Christian GrothoffSeverityblock => text
2025-08-04 23:15Christian GrothoffTarget Versionpost-1.0 => 1.1
2025-08-25 12:36sebasjmRelationship addedparent of 0008526
2025-09-27 18:10Christian GrothoffAssigned To => sebasjm
2025-09-27 18:10Christian GrothoffStatusimplementing => assigned
2025-10-01 21:50sebasjmNote Added: 0026080
2025-10-01 21:50sebasjmStatusassigned => informing
2025-10-01 21:50sebasjmResolutionopen => fixed
2025-10-18 22:51Christian GrothoffFixed in Version => 1.1
2025-10-31 19:49Christian GrothoffStatusinforming => closed