[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-docs] branch master updated (ba420a8 -> 79b2673)
From: |
gnunet |
Subject: |
[taler-docs] branch master updated (ba420a8 -> 79b2673) |
Date: |
Sun, 09 Apr 2023 19:10:27 +0200 |
This is an automated email from the git hooks/post-receive script.
grothoff pushed a change to branch master
in repository docs.
from ba420a8 work invoicing for DD37
new b40e3af work paying invoices for DD37
new 79b2673 work paying invoices for DD37
The 2 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails. The revisions
listed as "add" were already present in the repository and have only
been added to this reference.
Summary of changes:
Makefile | 4 +-
.../037-wallet-transactions-lifecycle.rst | 66 +++++++++++++++++-----
transaction-pull-debit-states.dot | 54 ++++++++++++++++++
3 files changed, 108 insertions(+), 16 deletions(-)
create mode 100644 transaction-pull-debit-states.dot
diff --git a/Makefile b/Makefile
index a214435..06d0464 100644
--- a/Makefile
+++ b/Makefile
@@ -73,6 +73,8 @@ 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
+transaction-pull-debit-states.png: transaction-pull-debit-states.dot
+ dot -Tpng transaction-pull-debit-states.dot >
transaction-pull-debit-states.png
coin.png: coin.dot
dot -Tpng coin.dot > coin.png
deposit.png: deposit.dot
@@ -80,7 +82,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 transaction-pull-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
transaction-pull-debit-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 2e4f085..bf8831b 100644
--- a/design-documents/037-wallet-transactions-lifecycle.rst
+++ b/design-documents/037-wallet-transactions-lifecycle.rst
@@ -1046,7 +1046,7 @@ TODO: Also specify variant where account reserve needs to
be created / funded fi
* ``done``
- The invoice was successfully paid.
+ The payment for the invoice was successfully received.
* ``[action:delete] => deleted``
@@ -1061,52 +1061,88 @@ Transaction Type: Peer Pull Debit
* ``initial``
- Wallet read the taler:// URI
+ Initial state where we encounter the taler:// URI.
+
+ * ``[trigger] => pending(download)``
+
+* ``pending(download)``
+
+ We are downloading the information about the invoice.
- * ``[action:success] => pending(invoice-downloaded)``
+ * ``[action:suspend] => suspended(download)``
+ * ``[success] => pending(user)``
+* ``suspended(download)``
-* ``pending(invoice-downloaded)``
+ User suspended downloading the information about the invoice.
- We've downloaded information about the pull payment and are waiting
- for the user to confirm.
+ * ``[action:resume] => pending(download)``
+ * ``[action:cancel] => deleted``
+
+``pending(user)``
+
+ We have downloaded information about the pull payment and are waiting for
+ the user to confirm.
- * ``[action:abort] => aborted``: Safe to abort!
* ``[action:confirm-pay] => pending(submit-payment)``
+ * ``[action:cancel] => deleted``
+ * ``[timeout] => aborted``
-* ``pending(submit-payment)``
+* ``pending(deposit)``
The user has confirmed the payment and the wallet tries to deposit
into the provided purse.
- * ``[action:abort] => aborting(refund)``
- * ``[processed-success(auto-refund-enabled)] => pending(refundable)``
+ * ``[action:suspend] => suspended(deposit)``
+ * ``[processed-success(auto-refund-enabled)] => pending(refundable)``.
FIXME(CG): I think we should not support auto-refund.
* ``[processed-success(auto-refund-disabled)] => done``
- * ``[processed-error(expired)] => aborting(refresh)``
+ * ``[failure:timeout] => aborting(refresh)``
* ``[processed-success] => done``
- * ``[action:abort] => aborting(refresh)``
+ * ``[failure:other] => aborting(refund)``
+
+* ``suspended(deposit)``
+
+ User suspended depositing into the purse.
+
+ * ``[action:resume] => pending(deposit)``
+ * ``[action:abort] => aborting_refund``
* ``pending(refundable)``
-The payment succeed but if auto-refund-check is active it will be checking for
refunds
+ The payment succeed but if auto-refund-check is active it will be checking
for refunds.
+ FIXME(CG): I do not think we should support auto-refunds here. Not included
in diagram.
* ``[auto-refund-timeout] => done``
* ``aborting(refund)``
+ Aborts the payment, asking for the already deposited coins to be refunded.
+
* ``[processed-success] => aborted(refunded)``
* ``[processed-failure] => aborting(refresh)``
-
+ * ``[action:force-abort] => aborted``
* ``aborting(refresh)``
- XXX Before refreshing, should we not wait until the purse has expired?
+ Refreshes the coins that were previously deposited into the purse to recover
their value.
* ``[processed-success] => aborted``
* ``[processed-failed] => failed``
* ``done``
+ The invoice was successfully paid.
+
+ * ``[action:delete] => deleted``
+
+* ``deleted``
+
+ All information about the invoice has been deleted.
+
+.. image:: ../transaction-pull-debit-states.png
+ :width: 800
+
+
Alternatives
============
diff --git a/transaction-pull-debit-states.dot
b/transaction-pull-debit-states.dot
new file mode 100644
index 0000000..feec0fa
--- /dev/null
+++ b/transaction-pull-debit-states.dot
@@ -0,0 +1,54 @@
+digraph G {
+
+ initial[label="", shape="circle"];
+ pending_download[label="pending(download)"];
+ suspended_download[label="suspended(download)", shape="box"];
+ pending_user[label="pending(user)", shape="box"];
+
+ pending_deposit[label="pending(deposit)"];
+ suspended_deposit[label="suspended(deposit)", shape="box"];
+ aborting_refund[label="aborting(refund)"];
+ aborting_refresh[label="aborting(refresh)"];
+
+ 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_download [color="blue", label="URI trigger"];
+
+ pending_download->suspended_download [color="blue", label="suspend"];
+ pending_download->pending_user;
+
+ suspended_download->pending_download [color="blue", label="resume"];
+ suspended_download->deleted [color="blue", label="cancel"];
+
+ pending_user->pending_deposit [color="blue", label="confirm-pay"];
+ pending_user->deleted [color="blue", label="cancel"];
+ pending_user->aborted [label="timeout"];
+
+ pending_deposit->done;
+ pending_deposit->aborting_refund [color="red", label="failure"];
+ pending_deposit->suspended_deposit [color="blue", label="suspend"];
+ pending_deposit->aborting_refresh [color="red", label="failure:timeout"];
+
+ suspended_deposit->pending_deposit [color="blue", label="resume"];
+ suspended_deposit->aborting_refund [color="blue", label="abort"];
+
+ aborting_refund->aborting_refresh;
+ aborting_refund->aborting_refresh [color="red", label="failure"];
+ aborting_refund->aborted [color="blue", label="force-abort"];
+
+ aborting_refresh->aborted;
+ aborting_refresh->failed [color="red", label="failure"];
+ aborting_refresh->aborted [color="blue", label="force-abort"];
+
+ aborted->deleted [color="blue", label="delete"];
+ failed->deleted [color="blue", label="delete"];
+ done->deleted [color="blue", label="delete"];
+
+}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-docs] branch master updated (ba420a8 -> 79b2673),
gnunet <=