Hello Diem Team,
I have some questions about Diem Reference Wallet:
- Is pydiem library open-source? I cannot find the code of this lib.
- In ExecuteQuoteView class (in /backend/webapp/routes/cico.py), you call the cover process API cover_order function before actually executing the order (in execute_convert function). The latter function may throw a exception and fail to execute the order, but at the time the cover process is finished. Is it a security issue?
- The Reference Wallet only support Diem Coin “Coin1” now. But in your convert funds operation, two different currencies are needed, so I cannot test this function. Would you add another Diem currency into the Reference Wallet?
- In transaction table, source_id and destination_id fields are foreign keys to account table, while source_subaddress and destination_subaddress fields are not foreign keys. Why not set them to foreign keys to subaddress.id?
- I found there are two tables transaction and order in the storage. What is the difference (or relationship) between them? From the fields of two tables I guess that transaction is between two wallet users and order is between wallet user accounts and inventory accounts. Is that correct?
- According to Python Documentation, uuid1(), which used as the default generation method of token.id in token table, may compromise privacy since it creates a UUID containing the computer’s network address. In order table, you use uuid4() to generate the order.id. Why do you choose two different UUID generation methods here? And, how to avoid the privacy problem of uuid1()?