0c620ea388
Add delay between detecting PTX and redeeming ITX. Add bid state history to json api. Hide Tx none states in bid state history.
61 lines
2.6 KiB
Plaintext
61 lines
2.6 KiB
Plaintext
xu {
|
|
hscale = "1.2";
|
|
|
|
CB [label=" ", linecolor="transparent"],
|
|
N [label="Network", linecolor="#008800", textbgcolor="#CCFFCC", arclinecolor="#008800"],
|
|
O [label="Offerer", linecolor="#FF0000", textbgcolor="#FFCCCC", arclinecolor="#FF0000"],
|
|
B [label="Bidder", linecolor="#0000FF", textbgcolor="#CCCCFF", arclinecolor="#0000FF"],
|
|
C [label=" ", linecolor="transparent"], C2 [label=" ", linecolor="transparent"];
|
|
O =>> N [label="Sends Offer"];
|
|
N >> B [label="Detects Offer"];
|
|
B =>> O [label="Sends Bid"];
|
|
B abox B [label="Bid Sent"];
|
|
O box O [label="User accepts bid"];
|
|
O =>> N [label="Sends Initiate Tx"],
|
|
C note C2
|
|
[label="Offerer generates secret_value and sends Hash(secret_value) to the Bidder",
|
|
textbgcolor="#FFFFCC"];
|
|
O =>> B [label="Sends BidAccept"],
|
|
C note C2
|
|
[label="ITX can be spent by
|
|
knowledge of the secret_value and the bidder_redeem_key or
|
|
after a timeout by the offerer_refund_key",
|
|
textbgcolor="#FFFFCC"];
|
|
|
|
B abox B [label="Bid Accepted"];
|
|
N >> B [label="Detects Initiate Tx"];
|
|
B abox B [label="ITX Sent", textbgcolor="#4bdbf1"];
|
|
B => B [label="Wait for ITX to confirm"], O => O [label="Wait for ITX to confirm"];
|
|
B abox B [label="Bid Initiated"];
|
|
B abox B [label="ITX Confirmed", textbgcolor="#4bdbf1"];
|
|
B =>> N [label="Sends Participate Tx"],
|
|
C note C2
|
|
[label="PTX can be spent by
|
|
knowledge of the secret_value and the offerer_redeem_key or
|
|
after a timeout by the bidder_refund_key",
|
|
textbgcolor="#FFFFCC"];
|
|
B abox B [label="PTX Sent", textbgcolor="#f1db4b"];
|
|
N >> O [label="Detects Participate Tx"];
|
|
B => B [label="Wait for PTX to confirm"], O => O [label="Wait for PTX to confirm"];
|
|
B abox B [label="PTX Confirmed", textbgcolor="#f1db4b"];
|
|
B abox B [label="Bid Participating"];
|
|
O =>> N [label="Sends Participate Redeem Tx"],
|
|
C note C2
|
|
[label="Reveals secret_value",
|
|
textbgcolor="#FFFFCC"];
|
|
CB alt C [label="success path"] {
|
|
N >> B [label="Detects Participate Redeem Tx"];
|
|
B abox B [label="PTX Redeemed", textbgcolor="#f1db4b"];
|
|
B =>> N [label="Sends Initiate Redeem Tx"];
|
|
B => B [label="Wait for ITX Redeem to confirm"];
|
|
B abox B [label="ITX Redeemed", textbgcolor="#4bdbf1"];
|
|
B abox B [label="Bid Completed"];
|
|
--- [label="fail path"];
|
|
B => B [label="Wait for PTX locktime to expire"];
|
|
B =>> N [label="PTX Refund Tx"];
|
|
B => B [label="Wait for PTX Refund to confirm"];
|
|
B abox B [label="PTX Refunded", textbgcolor="#f1db4b"];
|
|
};
|
|
}
|
|
|