Skip to content

Muster 0.3.2

Choose a tag to compare

@corpetty corpetty released this 21 Oct 14:34
67e6fd5

Muster 0.3.2 adds a shared Monero wallet that a room runs together, and lets the payee choose how many confirmations count as paid. Everything Monero is on stagenet only.

Run it

  • One file: download Muster-0.3.2-Basecamp-0.3.2-linux-x86_64.AppImage, chmod +x it, run it, and click Muster in the sidebar.
  • In an existing Basecamp 0.3.2: install or update Muster from its catalogue (docs/runbooks/install-from-catalogue.md).

New: a Monero multisig the room runs, with each member's own wallet (ADR-020)

  • Each member's own monero-wallet-rpc holds their key and does the multisig, and Muster carries the messages between the wallets. Set it under Settings → Advanced → Monero multisig wallet.
  • Setting it up. In a room, go to Room details → Accounts → Add an account → Monero multisig. Pick who takes part, choose M, and Set up. The others press Join. The room acts from the address only once every member's wallet reports the same one.
  • Spending. Use Send from the multisig. The first M members to approve sign. Each signer's own wallet signs only if its describe_transfer shows exactly the agreed recipients, change and fee cap. The last signer submits, and the spend is final at 10 confirmations.
  • What to know first. Each warning shows in the app:
    • Your own wallet holds the key, outside Basecamp.
    • Monero multisig is experimental upstream: a dishonest member could take the funds.
    • One spend at a time, about 20 minutes each.
    • The wallet will need re-creating after Monero's FCMP++ upgrade.
  • Tested end to end on stagenet: set up, funded, spent and settled with three wallets. Runbook: docs/runbooks/xmr-multisig.md.

New: the payee chooses how many confirmations count as paid

  • Request a payment and Send money on Monero have a new field, Counts as paid at this many confirmations, from 1 to 720 (default 10). A 10 mXMR cable doesn't need 10 confirmations, and the payee carries the reorg risk.
  • The depth is part of what both sides agree to and sign. The payee's own wallet confirms at that depth.

Also

  • Splits: a payment completes in every joined room, not only the one on screen. Settings shows the Bitcoin address your share is paid from. A refused rail choice says why Propose is off.
  • Amounts read in ETH, not wei, on the card, the banner and the provenance line.
  • Each member keeps their own copy of every room, so a room outlives the store's copy.
  • The Monero payee's Connections row says whose node their wallet syncs through.

Network: logos.dev by default, as in 0.3.1. Mixed versions: a request that names a depth other than 10 needs both sides on 0.3.2, because 0.3.1 doesn't know the field. The multisig also needs every member on 0.3.2.