View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0006414||Taler||auditor||public||2020-06-24 13:45||2021-08-24 16:23|
|Reporter||oec||Assigned To||Christian Grothoff|
|Product Version||git (master)|
|Target Version||0.8||Fixed in Version||0.8|
|Summary||0006414: No checks for refunds table implemented|
|Description||There is no implementation for checks of the refunds table. (There are however some checks related to refunds in aggregation and coins)|
I suggest to add a timestamp to the refunds table and add a check that a refund happened before a `refund_deadline` passed.
|Tags||No tags attached.|
Adding such a timestamp would not be very meaningful, as either side can easily lie (or disagree) about it. I also think you are misunderstanding the 'refund_deadline' semantic. The 'refund_deadline' is NOT the last time when a refund may happen, but the EARLIEST time by which the exchange may wire the funds. Refunds are allowed until the time when the exchange wires the funds to the merchant.
The checks for refunds are included in the coin consistency check (if coins are refunded, their balance goes back up _allowing_ further refreshes against those coins), and of course in the aggregate wire transfer calculations (how much we should wire to the merchant).
So what _else_ would you want to check that is meaningful?
||see my note on 6413, what about verifying that a signature for a refund comes from a merchant whose merchant_pub has been used in a deposit before?|
It must be the "right" merchant_pub, not just seen in "a deposit before", but seen in THE deposit for that coin.
This IS checked in taler-helper-auditor-coins.c::refund_cb().
||62d5aae1..ef0eb9e5 improves the 'system' manual, documenting for each auditor helper what checks it performs (at a moderate level of detail).|
||I believe the new documentation makes it obvious why the refunds table does not have its own helper.|
|2020-06-24 13:45||oec||New Issue|
|2020-06-24 13:45||oec||Status||new => assigned|
|2020-06-24 13:45||oec||Assigned To||=> Christian Grothoff|
|2020-06-24 13:49||Christian Grothoff||Note Added: 0016352|
|2020-06-24 13:49||Christian Grothoff||Status||assigned => feedback|
|2020-06-24 13:58||Christian Grothoff||Severity||major => text|
|2020-06-25 10:59||oec||Note Added: 0016363|
|2020-06-25 10:59||oec||Status||feedback => assigned|
|2020-06-25 11:01||Christian Grothoff||Note Added: 0016364|
|2020-06-25 23:48||Christian Grothoff||Product Version||=> git (master)|
|2020-06-25 23:48||Christian Grothoff||Target Version||=> 0.8|
|2020-07-14 21:17||Christian Grothoff||Note Added: 0016449|
|2020-07-14 21:18||Christian Grothoff||Status||assigned => resolved|
|2020-07-14 21:18||Christian Grothoff||Resolution||open => fixed|
|2020-07-14 21:18||Christian Grothoff||Fixed in Version||=> 0.8|
|2020-07-14 21:18||Christian Grothoff||Note Added: 0016450|
|2021-08-24 16:23||Christian Grothoff||Status||resolved => closed|