gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-docs] branch master updated: work invoicing for DD37


From: gnunet
Subject: [taler-docs] branch master updated: work invoicing for DD37
Date: Sun, 09 Apr 2023 18:33:14 +0200

This is an automated email from the git hooks/post-receive script.

grothoff pushed a commit to branch master
in repository docs.

The following commit(s) were added to refs/heads/master by this push:
     new ba420a8  work invoicing for DD37
ba420a8 is described below

commit ba420a8d2588e56e61832b11496a8a51f08099a8
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Sun Apr 9 18:33:11 2023 +0200

    work invoicing for DD37
---
 Makefile                                           |  4 +-
 .../037-wallet-transactions-lifecycle.rst          | 30 +++++++---
 transaction-common-states.dot                      | 10 +++-
 transaction-pull-credit-states.dot                 | 65 ++++++++++++++++++++++
 transaction-withdrawal-states.dot                  |  4 +-
 5 files changed, 100 insertions(+), 13 deletions(-)

diff --git a/Makefile b/Makefile
index af89ca3..a214435 100644
--- a/Makefile
+++ b/Makefile
@@ -71,6 +71,8 @@ transaction-push-debit-states.png: 
transaction-push-debit-states.dot
        dot -Tpng transaction-push-debit-states.dot > 
transaction-push-debit-states.png
 transaction-push-credit-states.png: transaction-push-credit-states.dot
        dot -Tpng transaction-push-credit-states.dot > 
transaction-push-credit-states.png
+transaction-pull-credit-states.png: transaction-pull-credit-states.dot
+       dot -Tpng transaction-pull-credit-states.dot > 
transaction-pull-credit-states.png
 coin.png: coin.dot
        dot -Tpng coin.dot > coin.png
 deposit.png: deposit.dot
@@ -78,7 +80,7 @@ deposit.png: deposit.dot
 reserve.png: reserve.dot
        dot -Tpng reserve.dot > reserve.png
 
-diagrams: arch-api.png coin.png deposit.png reserve.png 
transaction-common-states.png transaction-withdrawal-states.png 
transaction-payment-states.png transaction-refund-states.png 
transaction-refresh-states.png transaction-tip-states.png 
transaction-deposit-states.png transaction-push-debit-states.png 
transaction-push-credit-states.png
+diagrams: arch-api.png coin.png deposit.png reserve.png 
transaction-common-states.png transaction-withdrawal-states.png 
transaction-payment-states.png transaction-refund-states.png 
transaction-refresh-states.png transaction-tip-states.png 
transaction-deposit-states.png transaction-push-debit-states.png 
transaction-push-credit-states.png transaction-pull-credit-states.png
 
 
 # The html-linked builder does not support caching, so we
diff --git a/design-documents/037-wallet-transactions-lifecycle.rst 
b/design-documents/037-wallet-transactions-lifecycle.rst
index 58fd2c1..2e4f085 100644
--- a/design-documents/037-wallet-transactions-lifecycle.rst
+++ b/design-documents/037-wallet-transactions-lifecycle.rst
@@ -109,6 +109,11 @@ actively abort the transaction (e.g. to avoid losing 
money) and puts it in an
 ``failed`` state. May result in an ultimate loss of funds (beyond fees) to the
 user and thus requires additional consent.
 
+``[action:cancel]``: Like an ``abort``, except that it results in the deletion
+of the transaction state as there is nothing useful to be kept around.  Should
+be used instead of ``delete`` if there was no transaction history state yet
+that could be deleted.
+
 ``[action:delete]``: Deleting a transaction completely deletes the transaction
 from the database.  Depending on the type of transaction, some of the other
 data *resulting* from the transaction might still survive deletion. For
@@ -121,8 +126,9 @@ state. May result in an ultimate loss of funds (beyond 
fees) to the user and
 thus requires additional consent.
 
 
-Whether aborting, deleting or suspending are possible depends on the
-transaction type, and usually only one of the three choices should be offered.
+Whether aborting, cancelling, deleting or suspending are possible depends on
+the transaction type, and usually only one of the four choices should be
+offered.
 
 
 .. image:: ../transaction-common-states.png
@@ -172,7 +178,7 @@ Transaction Type: Withdrawal
 
   * ``[processed-success] => pending(bank-confirming)``
   * ``[processed-error] => deleted``: We show a transient warning.
-  * ``[action:abort] => aborting(bank-to-wallet)``
+  * ``[action:cancel] => aborting(bank-to-wallet)``
 
 * ``pending(bank-confirming)``
 
@@ -190,7 +196,7 @@ Transaction Type: Withdrawal
   * ``[bank-poll-success] => pending(exchange-wait-reserve)``
   * ``[bank-poll-denied] => deleted``: We show a transient message that the 
operation was denied in the bank.
   * ``[exchange-poll-success] => pending(withdrawing-coins)``
-  * ``[action:abort] => aborting(wallet-to-bank)``
+  * ``[action:cancel] => aborting(wallet-to-bank)``
 
 * ``aborting(wallet-to-bank)``
 
@@ -952,10 +958,8 @@ TODO: Also specify variant where account reserve needs to 
be created / funded fi
 * ``pending(purse-create)``
 
   * ``[process-success] => pending(qr-ready)``: The wallet has created the 
purse.
-  * ``[process-failure] => aborted``: The purse creation failed.
-  * ``[action:delete] => deleted``: The user aborted the operation.
-    FIXME(CG): May want to go into ``aborting(delete-purse)`` instead to make
-    sure the purse is not left behind.
+  * ``[process-failure] => deleted``: The purse creation failed. We only show 
a transient error.
+  * ``[action:cancel] => deleted``: The user aborted the operation.
 
 * ``pending(qr-ready)``
 
@@ -998,6 +1002,13 @@ TODO: Also specify variant where account reserve needs to 
be created / funded fi
   * ``[processed-aml] => pending(aml)``
   * ``[action:suspend] => suspended(withdraw)``
 
+* ``suspended(withdraw)``
+
+  The user suspended a withdraw operation.
+
+  * ``[action:resume] => pending(withdraw)``
+  * ``[action:force-delete] => deleted``
+
 * ``pending(kyc)``
 
   The user must supply KYC information before withdrawing can continue.
@@ -1041,6 +1052,9 @@ TODO: Also specify variant where account reserve needs to 
be created / funded fi
 
 * ``deleted``
 
+.. image:: ../transaction-pull-credit-states.png
+  :width: 800
+
 
 Transaction Type: Peer Pull Debit
 ---------------------------------
diff --git a/transaction-common-states.dot b/transaction-common-states.dot
index 3cbee21..170ace7 100644
--- a/transaction-common-states.dot
+++ b/transaction-common-states.dot
@@ -7,6 +7,7 @@ digraph G {
   aborting[label="aborting"];
   failed[label="failed", shape="box"];
   suspended[label="suspended", shape="box"];
+  deleted[label="deleted", shape="box"];
 
   subgraph {
     rank = same; pending;suspended;
@@ -19,10 +20,15 @@ digraph G {
   initial->pending;
   pending->suspended [color="blue",label="suspend"];
   suspended->pending [color="blue",label="resume"];
+  suspended->deleted [color="blue",label="force-delete"];
   pending->done [color="green",label="success"];
-  pending->failed [color="red",label="error"];
+  pending->failed [color="red",label="failure"];
   pending->aborting [color="blue",label="abort"];
   pending->aborted [color="blue",label="abort"];
+  pending->deleted [color="blue",label="cancel"];
   aborting->aborted [color="green",label="success"];
-  aborting->failed [color="red",label="error"];
+  aborting->failed [color="red",label="failure"];
+  failed->deleted [color="blue",label="delete"];
+  aborted->deleted [color="blue",label="delete"];
+  done->deleted [color="blue",label="delete"];
 }
diff --git a/transaction-pull-credit-states.dot 
b/transaction-pull-credit-states.dot
new file mode 100644
index 0000000..82d02ab
--- /dev/null
+++ b/transaction-pull-credit-states.dot
@@ -0,0 +1,65 @@
+digraph G {
+
+  initial[label="", shape="circle"];
+  pending_create[label="pending(purse-create)"];
+  pending_qr[label="pending(qr-ready)", shape="box"];
+  aborting_delete[label="aborting(delete-purse)"];
+  pending_withdraw[label="pending(withdraw)"];
+  suspended_withdraw[label="suspended(withdraw)", shape="box"];
+  pending_kyc[label="pending(kyc)"];
+  suspended_kyc[label="suspended(kyc)", shape="box"];
+  pending_aml[label="pending(aml)"];
+  suspended_aml[label="suspended(aml)", shape="box"];
+
+  aborted[label="aborted", shape="box"];
+  failed[label="failed", shape="box"];
+  done[label="done", shape="box"];
+  deleted[label="deleted", shape="box"];
+
+//  subgraph {
+//    rank = same; pending_withdraw; failed;
+//  }
+
+  initial->pending_create [color="blue", label="form data"];
+
+  pending_create->pending_qr;
+  pending_create->deleted [color="red", label="failure"];
+  pending_create->deleted [color="blue", label="cancel"];
+
+  pending_qr->aborted [label="timeout"];
+  pending_qr->aborting_delete [color="blue", label="abort"];
+  pending_qr->pending_withdraw;
+  pending_qr->aborting_delete [color="red", label="poll-failure"];
+
+  aborting_delete->pending_withdraw [color="red", 
label="failure:already-merged"];
+  aborting_delete->aborted;
+  aborting_delete->aborted [color="red", label="failure:other"];
+  aborting_delete->aborted [color="blue", label="force-abort"];
+
+  aborted->deleted [color="blue", label="delete"];
+
+  pending_withdraw->done;
+  pending_withdraw->failed [color="red", label="failure"];
+  pending_withdraw->pending_kyc [label="kyc-required"];
+  pending_withdraw->pending_aml [label="aml-required"];
+  pending_withdraw->suspended_withdraw [color="blue", label="suspend"];
+
+  suspended_withdraw->pending_withdraw [color="blue", label="resume"];
+  suspended_withdraw->deleted [color="blue", label="force-delete"];
+
+  pending_kyc->suspended_kyc [color="blue", label="suspend"];
+  pending_kyc->pending_withdraw [color="purple", label="poll-success"];
+
+  suspended_kyc->pending_kyc [color="blue", label="resume"];
+  suspended_kyc->deleted [color="blue", label="force-delete"];
+
+  pending_aml->suspended_aml [color="blue", label="suspend"];
+  pending_aml->pending_withdraw [color="purple", label="poll-success"];
+
+  suspended_aml->pending_aml [color="blue", label="resume"];
+  suspended_aml->deleted [color="blue", label="force-delete"];
+
+  failed->deleted [color="blue", label="delete"];
+  done->deleted [color="blue", label="delete"];
+
+}
diff --git a/transaction-withdrawal-states.dot 
b/transaction-withdrawal-states.dot
index 95c8fda..7b59be7 100644
--- a/transaction-withdrawal-states.dot
+++ b/transaction-withdrawal-states.dot
@@ -30,12 +30,12 @@ digraph G {
   initial->pending_brr [color="blue", label="bank integrated withdraw"];
   initial->pending_ewr [color="blue", xlabel="manual withdraw"];
   pending_brr->pending_bc;
-  pending_brr->aborting_w2b [color="blue", label="abort"];
+  pending_brr->aborting_w2b [color="blue", label="cancel"];
   pending_brr->deleted [color="red", label="error"];
 
   pending_bc->pending_ewr [label="bank-poll:\napproved"];
   pending_bc->pending_wc [xlabel="exchange-poll:\nreserve 
ready",style="dotted"];
-  pending_bc->aborting_w2b [color="blue", label="abort"];
+  pending_bc->aborting_w2b [color="blue", label="cancel"];
   pending_bc->deleted [label="bank-poll:\ndenied"];
 
   pending_ewr->pending_wc [label="exchange-poll:\nreserve ready"];

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]