From b89601e8351432de86003f744cc63a0e7932d521 Mon Sep 17 00:00:00 2001 From: Will Ruddick Date: Sat, 29 May 2021 08:14:54 +0000 Subject: [PATCH] simple multi-token env --- spec/022_multi_token_env.md | 75 +++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 spec/022_multi_token_env.md diff --git a/spec/022_multi_token_env.md b/spec/022_multi_token_env.md new file mode 100644 index 0000000..6a8ebb4 --- /dev/null +++ b/spec/022_multi_token_env.md @@ -0,0 +1,75 @@ +# Multi Token Environment + + +* Authors: Will Ruddick (grassecon.org) +* Date: 2021.05.29 +* Version: 1 +* Status: Pre-draft + +## Rationale +Enabeling users to hold and trade multiple tokens- will allows wallet holders to be connected to eachother as well as other tokens such as rewards. + +## Intro +* Today users only hold one token aka Sarafu - created by Grassroots Economics. This means that users can't interact with other tokens at all. +* We want users to create and be able to interact with other CICs and tokens. + +## Multi-Token – User Flow: + +1. A users is given (via trade or token creation) multiple tokens (These tokens must all be registered on Sarafu Network) +2. The user should be able to see these tokens and their balances (if non-zero) in a 'My Sarafu' Menu item (top level) - as many as possible on USSD with the highest balalances at the top. +3. The user should be able to switch which token is their Active Token. This will be used for sending, as well as default balance checks and mini statement. + +## USSD Menu + +1. My Sarafu (top level) + 1. Show tokens + 1. Set Active Token + +### CICADA Mgmt Platform - GUI +1. On the user info page you should be able to set their Active Token - via a drop down +1. You should be able to see balances in all the tokens they have + +## Active Token +1. Each user needs to be assigned a default / Active token - they start with Sarafu by default. + +## Auto Activate Token +1. Users with only one token with non zero balance in their account will default to that as their active token + +## Interfaces - UX + +### Command Line - CLI Set Active Token +1. User ID and Name or ID of the token - ensure it is a valid token + + +### USSD feature phones - Set Active Token +- New user dials ussd session code where she selects My Sarafu -> Set Active Token +- They top X tokens by balances they have in their wallet are shown with an option to select the number of the token they want to choose +- Confirmation message and entry of pin number to Confirm +- Future transactions send from this account will try to send that token + +## Testing + +## Action items + +## Implementation + +### Workflow + +### Variables + +### Interface + + + +## Security +1. + +## Changelog +