URI: 
       tsubmarine_swaps: describe event-flow for both swap direction in docstr - electrum - Electrum Bitcoin wallet
  HTML git clone https://git.parazyd.org/electrum
   DIR Log
   DIR Files
   DIR Refs
   DIR Submodules
       ---
   DIR commit 08f70420e348adb9b3a0e297c7fdd9380a1161d7
   DIR parent 21e46fb14796076afca148fcd6cc8ada11a7d17a
  HTML Author: SomberNight <somber.night@protonmail.com>
       Date:   Thu, 22 Oct 2020 17:22:35 +0200
       
       submarine_swaps: describe event-flow for both swap direction in docstr
       
       So that I don't have to figure out every time.
       
       Diffstat:
         M electrum/submarine_swaps.py         |      18 ++++++++++++++++--
       
       1 file changed, 16 insertions(+), 2 deletions(-)
       ---
   DIR diff --git a/electrum/submarine_swaps.py b/electrum/submarine_swaps.py
       t@@ -218,7 +218,13 @@ class SwapManager(Logger):
        
            async def normal_swap(self, lightning_amount: int, expected_onchain_amount: int,
                                  password, *, tx: PartialTransaction = None) -> str:
       -        """send on-chain BTC, receive on Lightning"""
       +        """send on-chain BTC, receive on Lightning
       +
       +        - User generates an LN invoice with RHASH, and knows preimage.
       +        - User creates on-chain output locked to RHASH.
       +        - Server pays LN invoice. User reveals preimage.
       +        - Server spends the on-chain output using preimage.
       +        """
                assert self.network
                assert self.lnwatcher
                privkey = os.urandom(32)
       t@@ -296,7 +302,15 @@ class SwapManager(Logger):
                return tx.txid()
        
            async def reverse_swap(self, amount_sat: int, expected_amount: int) -> bool:
       -        """send on Lightning, receive on-chain"""
       +        """send on Lightning, receive on-chain
       +
       +        - User generates preimage, RHASH. Sends RHASH to server.
       +        - Server creates an LN invoice for RHASH.
       +        - User pays LN invoice - except server needs to hold the HTLC as preimage is unknown.
       +        - Server creates on-chain output locked to RHASH.
       +        - User spends on-chain output, revealing preimage.
       +        - Server fulfills HTLC using preimage.
       +        """
                assert self.network
                assert self.lnwatcher
                privkey = os.urandom(32)