View Issue Details

IDProjectCategoryView StatusLast Update
0010612Talermerchant backendpublic2026-02-04 09:29
ReporterFlorian Dold Assigned Toavalos  
PrioritynormalSeveritymajorReproducibilityhave not tried
Status assignedResolutionopen 
Product Version1.0 
Target Version1.6 
Summary0010612: token family reported as expired, but should still be valid
DescriptionWe created a token family with a validity about a year in the future.

However, after about a month, the backend complained that the token family expired.

Maybe the backend doesn't properly re-generate the keys for a token family once one key has expired?
Tagsdebt, vivy

Relationships

has duplicate 0010549 closedChristian Grothoff problem with token family key generation? 
child of 0009057 confirmedavalos support subscription and discount tokens [meta] 

Activities

Christian Grothoff

2026-01-26 06:53

manager   ~0027361

POST /private/orders does contain the logic to create missing keys for output token families on-demand.
While the code is complex, it *looks* correct.

Christian Grothoff

2026-01-28 15:05

manager   ~0027412

I added a test (test_merchant_tokenfamilies.sh, not in make check yet!) including time-travel to check token family keys were created also past the first expiration interval. That works fine. However, when trying to pay, the wallet throws back a strange parse error, even though everything looks fine in wireshare. Ivan (or Florian): please investigate and see if this is a wallet-core issue or something in the merchant backend.
test_merchant_tokenfamilies.err (1,859 bytes)   
2026-01-28T13:59:25.834Z shepherd.ts INFO active tasks from DB: {
  "taskIds": [
    "purchase:GYRBNAW45H04W4FD2PMJ9JT9VH2ZY2R6WTRR828XVEWJ04M94ZM0",
    "exchange-update:http%3A%2F%2Flocalhost%3A8081%2F",
    "exchange-auto-refresh:http%3A%2F%2Flocalhost%3A8081%2F",
    "exchange-update:https%3A%2F%2Fexchange.demo.taler.net%2F",
    "exchange-auto-refresh:https%3A%2F%2Fexchange.demo.taler.net%2F",
    "validate-denoms:"
  ]
}
2026-01-28T13:59:25.888Z exchanges.ts INFO not updating exchange in status "initial"
2026-01-28T13:59:26.292Z wallet.ts INFO finished wallet core request preparePayForUri with error: {
  "code": 7020,
  "when": {
    "t_ms": 1769609366218
  },
  "hint": "validation for well-formedness failed"
}
An error occurred while running handle-uri
_TalerError: validation for well-formedness failed
    at _TalerError.fromUncheckedDetail (/home/grothoff/lib/taler-wallet-cli/node_modules/taler-wallet-cli/dist/taler-wallet-cli-bundled.cjs:8435:12)
    at Object.call (/home/grothoff/lib/taler-wallet-cli/node_modules/taler-wallet-cli/dist/taler-wallet-cli-bundled.cjs:61285:28)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
    at async doPay (/home/grothoff/lib/taler-wallet-cli/node_modules/taler-wallet-cli/dist/taler-wallet-cli-bundled.cjs:63540:18)
    at async /home/grothoff/lib/taler-wallet-cli/node_modules/taler-wallet-cli/dist/taler-wallet-cli-bundled.cjs:64154:9
    at async withWallet (/home/grothoff/lib/taler-wallet-cli/node_modules/taler-wallet-cli/dist/taler-wallet-cli-bundled.cjs:63774:20)
    at async CommandGroup.myAction (/home/grothoff/lib/taler-wallet-cli/node_modules/taler-wallet-cli/dist/taler-wallet-cli-bundled.cjs:64141:3) {
  errorDetail: {
    code: 7020,
    when: { t_ms: 1769609366218 },
    hint: 'validation for well-formedness failed'
  },
  cause: undefined
}

Issue History

Date Modified Username Field Change
2025-11-14 17:54 Florian Dold New Issue
2025-11-15 15:59 Christian Grothoff Severity minor => major
2025-11-15 15:59 Christian Grothoff Status new => confirmed
2025-11-15 15:59 Christian Grothoff Product Version => 1.0
2025-11-15 15:59 Christian Grothoff Target Version => 1.6
2025-12-19 20:13 Christian Grothoff Relationship added child of 0009057
2026-01-25 12:30 Christian Grothoff Assigned To => Christian Grothoff
2026-01-25 12:30 Christian Grothoff Status confirmed => assigned
2026-01-26 06:23 Christian Grothoff Relationship added has duplicate 0010549
2026-01-26 06:53 Christian Grothoff Note Added: 0027361
2026-01-28 15:05 Christian Grothoff Note Added: 0027412
2026-01-28 15:05 Christian Grothoff File Added: test_merchant_tokenfamilies.err
2026-01-28 15:06 Christian Grothoff Assigned To Christian Grothoff => avalos
2026-02-04 09:29 Christian Grothoff Tag Attached: vivy
2026-02-04 09:29 Christian Grothoff Tag Attached: debt