View Issue Details

IDProjectCategoryView StatusLast Update
0005191Talerbank (demonstrator)public2018-04-15 20:34
ReporterChristian GrothoffAssigned ToMarcello Stanisci 
PriorityurgentSeverityfeatureReproducibilityN/A
Status closedResolutionfixed 
Platformi7OSDebian GNU/LinuxOS Versionsqueeze
Product VersionSVN HEAD 
Target Version0.5Fixed in Version0.5 
Summary0005191: Python bank needs to implement /reject API (and related updates)
DescriptionI just pushed 95077e8..a6202bb (to api.git). The change(s) make a few minor modifications to /admin/add/incoming (in particular, wtid is now 'subject' and can be an arbitrary string) and /history (direction is mandatory, cancel+/- become possible directions) and adds the new /reject API.

These changes are currently being implemented on the exchange side to support the new wirewatch utility properly, and to cancel wire transfers (via /reject) with invalid wire transfer subjects. I will "soon" push a version of the exchange that includes testcases for this new API and that will *require* the bank to implement it so that the exchange continues to work!

Please make the necessary (likely minor) modifications to /admin/add/incoming and /history (and extend the database schema with a 'cancelled' flag for transactions), and add the new /reject handler.
TagsNo tags attached.

Relationships

related to 0005172 closedChristian Grothoff Eliminate /admin/add/incoming 
related to 0005077 closedChristian Grothoff wirewatch should wire back transfers with invalid wtid 
related to 0005200 closedChristian Grothoff re-enable bank-lib /reject test cases once the bank implements it 

Activities

Marcello Stanisci

2017-12-07 17:46

manager   ~0012634

From this description, it is not clear how the sender gets their money back; is it the bank that wires money back to the sender as a /reject's side effect?

If yes, I guess both sender and receiver will see the second wire transfer in their history.

For example, after a cancellation is accomplished, does a sender see something like the following,
in their history?

j: 1KUDOS to Exchange (cancelled)
..
..
j+k: 1KUDOS from Exchange


Anyways, do we really need this, instead of the Exchange simply wiring back money when it does not like something?

Christian Grothoff

2017-12-07 18:13

manager   ~0012635

In the visible history (not /history), the original transfer from Alice to the Exchange may show (possibly optional, but for the first iteration it's probably easier to always show it and not add a complicated option to hide it), but with a line through it (strike out) to show that it was voided. As the transaction is nullified, it means it should no longer have any impact on either balance.

See
https://en.wikipedia.org/wiki/Strikethrough
for how to do this in HTML3/4/5 compatible ways (using both <strike> and CSS).

Marcello Stanisci

2017-12-11 15:02

manager   ~0012664

Last edited: 2017-12-11 15:02

View 2 revisions

recap: main logic is done; /history response still needs to admit the new 'cancel+/-' flag, and CSS strike trick is also missing.

Marcello Stanisci

2017-12-13 17:01

manager   ~0012673

Implementing CSS strikethrough in 77b7a1d. This commit concludes this issue. There is a "strike me" link beside any history entry in a user's profile page where one can test this feature; to be soon removed.

Issue History

Date Modified Username Field Change
2017-12-06 12:46 Christian Grothoff New Issue
2017-12-06 12:46 Christian Grothoff Status new => assigned
2017-12-06 12:46 Christian Grothoff Assigned To => Marcello Stanisci
2017-12-06 12:47 Christian Grothoff Relationship added related to 0005172
2017-12-06 12:47 Christian Grothoff Relationship added related to 0005077
2017-12-07 17:46 Marcello Stanisci Note Added: 0012634
2017-12-07 18:13 Christian Grothoff Note Added: 0012635
2017-12-09 11:15 Christian Grothoff Relationship added related to 0005200
2017-12-11 15:02 Marcello Stanisci Note Added: 0012664
2017-12-11 15:02 Marcello Stanisci Note Edited: 0012664 View Revisions
2017-12-13 17:01 Marcello Stanisci Status assigned => resolved
2017-12-13 17:01 Marcello Stanisci Resolution open => fixed
2017-12-13 17:01 Marcello Stanisci Note Added: 0012673
2017-12-13 17:13 Christian Grothoff Fixed in Version => 0.5
2018-04-15 20:34 Christian Grothoff Status resolved => closed