~singpolyma/sgx-jmp

ref: 045da39f25b74034e7bba44cb5f1db48a935ba84 sgx-jmp/lib/web_register_manager.rb -rw-r--r-- 661 bytes
Hotfix: arguments in wrong order
Merge branch 'finish-btc'

* finish-btc:
  No more legacy session for BTC
  Do not lose WebRegisterManager on retart
Do not lose WebRegisterManager on retart

Store web registrations in redis.  Set an expiry so they don't grow in RAM
forever as they previously would have without a restart.
Merge branch 'command-object'

* command-object:
  ErrorToSend => FinalStanza
  Since Command#finish causes an error, a then off the end won't work
  Refactor commands to have Command and Command::Execution objects
ErrorToSend => FinalStanza
Refactor commands to have Command and Command::Execution objects

Brings the common elements of all commands together, and threads the most useful
state (such as ability to reply) through automatically using the new EMPromise
fiber trampoline.
Explicitly wrap errors we want to send
Merge branch 'tel-search-temp'

* tel-search-temp:
  No tel picker yet, so just go to the webpage
No tel picker yet, so just go to the webpage

Direct users to the homepage if they haven't selected a tel yet.  Not what we
want eventually, but better than crashing.
Merge branch 'register-command-first-pass'

* register-command-first-pass:
  Add sourcehut CI
  Add Rakefile to run all tests
  Initial registration flow for Bitcoin
  Registrations that start on the web will have a tel selected already
  Helpers for doing Electrum RPC
  Add helper to fetch current BTC sell prices
  Allow skipping tests without being caught in pry
Initial registration flow for Bitcoin

This is the Bitcoin "happy path" where there is already a tel and a customer_id.
Gets all the way to generating a BTC address for payment and quoting an amount.
Stubs out flows for credit card and activation code as well, but does not
implement those flows.

TBD: after bitcoin payment comes in and jmp-pay activates the account, we should
come back here to actually buy the number, select a new one if no longer
available, etc.
Registrations that start on the web will have a tel selected already

So, manage any already-known tel selections and allow registration to use them
right away.  In the future this will fall back to letting the user search for a
tel over XMPP, but that is not implemented here.