View Issue Details

IDProjectCategoryView StatusLast Update
0010757Talerexchangepublic2025-12-15 19:16
ReporterFlorian Dold Assigned ToFlorian Dold  
PriorityurgentSeveritymajorReproducibilityhave not tried
Status resolvedResolutionfixed 
Product Versiongit (master) 
Target Version1.3Fixed in Version1.3 
Summary0010757: exchange does not return attributes set by AML officer decision (test: kyc-decision-attr)
DescriptionA regression happened on the following test:

$ taler-harness run-integrationtests kyc-decision-attr

The exchange (ef94c79fca31b) returns an empty list of attributes after the AML officer has set an attribute via an AML decision.
TagsNo tags attached.

Activities

Christian Grothoff

2025-12-11 10:10

manager   ~0026871

Seems that the AML decision of the test lacks the "mandatory" attribute "FORM_ID", which then causes the latest rendering logic to skip the attributes.

Christian Grothoff

2025-12-11 10:11

manager   ~0026872

So question:
1) is FORM_ID mandatory? If so, the test should be fixed to supply it, and the exchange to *enforce* FORM_ID to be present upon submission.
2) if not, we can return the attributes in JSON without it, but then we cannot return them in a PDF.

I think (1) is the correct fix.

Florian Dold

2025-12-11 16:36

manager   ~0026879

I agree that (1) is correct.

Christian Grothoff

2025-12-14 14:30

manager   ~0026965

e0062e59..294a0898 clarifies that the FORM_ID is mandatory if an AML decision includes attributes.

Christian Grothoff

2025-12-14 15:03

manager   ~0026966

I've modifed taler-docs to specify FORM_ID as required for all attributes (on GET and POST).

Christian Grothoff

2025-12-14 15:10

manager   ~0026967

d34edb354..1d17a50c4 now *enforces* that the FORM_ID is always present in all attributes.

Christian Grothoff

2025-12-14 15:12

manager   ~0026968

kyc-decision-attr now fails (as expected) with
""
FATAL: test failed with exception AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:

400 !== 204
""
This is because the test does NOT submit the now mandatory FORM_ID in the decision. The test should be changed
to (1) expect 400 on this POST, and (2) then submit the attributes with a proper FORM_ID.

Christian Grothoff

2025-12-14 15:16

manager   ~0026969

kyc-fail-recover-simple fails for a related reason: FORM_ID is missing when POSTing to kyc-upload, so you're getting 400 instead of the expected 500 status now.

Florian Dold

2025-12-15 18:24

manager   ~0026993

Test passes now, as it specifies the FORM_ID in the POST decision request.

Issue History

Date Modified Username Field Change
2025-12-10 18:52 Florian Dold New Issue
2025-12-10 18:52 Florian Dold Status new => assigned
2025-12-10 18:52 Florian Dold Assigned To => Christian Grothoff
2025-12-11 10:10 Christian Grothoff Note Added: 0026871
2025-12-11 10:11 Christian Grothoff Note Added: 0026872
2025-12-11 10:11 Christian Grothoff Assigned To Christian Grothoff => Florian Dold
2025-12-11 10:11 Christian Grothoff Status assigned => feedback
2025-12-11 16:36 Florian Dold Note Added: 0026879
2025-12-11 16:37 Florian Dold Assigned To Florian Dold => Christian Grothoff
2025-12-14 14:30 Christian Grothoff Note Added: 0026965
2025-12-14 15:03 Christian Grothoff Note Added: 0026966
2025-12-14 15:10 Christian Grothoff Note Added: 0026967
2025-12-14 15:12 Christian Grothoff Note Added: 0026968
2025-12-14 15:12 Christian Grothoff Assigned To Christian Grothoff => Florian Dold
2025-12-14 15:12 Christian Grothoff Status feedback => assigned
2025-12-14 15:16 Christian Grothoff Note Added: 0026969
2025-12-15 18:24 Florian Dold Status assigned => resolved
2025-12-15 18:24 Florian Dold Resolution open => fixed
2025-12-15 18:24 Florian Dold Note Added: 0026993
2025-12-15 19:16 Christian Grothoff Product Version => git (master)
2025-12-15 19:16 Christian Grothoff Fixed in Version => 1.3
2025-12-15 19:16 Christian Grothoff Target Version 1.4 => 1.3