chia-docs icon indicating copy to clipboard operation
chia-docs copied to clipboard

Documentation for Transaction_DictMemos requested

Open KryptomineCH opened this issue 10 months ago • 4 comments

I am in the process of reading out all transactions in order to build portfolio reports outside of the chia client.

I have gotten quite far but as of right now, I am struggling reverse engineering which transactions are for what and how to identify them.

For instance:

  • creating an offer
  • cancelling that offer
  • completing that offer
  • someone else completes that offer

Therefore I would kindly request documentation of the Transaction_DictMemos returned by WalletNode.GetTransactions

### Tasks
- [ ] https://github.com/Chia-Network/chia-docs/issues/358

KryptomineCH avatar Aug 10 '23 08:08 KryptomineCH

I note that the name is unique so cant be used as Identifier. I may use additions or removals which may be complicated, eg in multi offers

KryptomineCH avatar Aug 10 '23 08:08 KryptomineCH

another unclear example: 1. transaction, (initial cat transfer to my cat wallet)

  • 1 xch worth of cat beeing set to my wallet.
  • the transaction has a name of 0x9122ac688ef8ae7f2f9e3e2c7547cf31401ad85bb4225dfa30ea46a50236391b
  • an addition of 1 xch value with a coin id of 0x4af4d59c0af4b9915a81766bdd47d01f80f63ccdd6c486edc519d3a7df8651ff

image

so far so good, everything as expected. Transaction 2 comes with confusion

2. transaction, sending 779.4 cat to another wallet

  • the transaction contains the addition of a coin with value 999999220600 (which is the expected change to my wallet)
  • no coin with value 779.4 is beeing created?
  • The Removals do NOT contain a coin with value 1 xch. instead, they contain a coin with the value of 999999220600 (same as addition)
  • the removed coin has the parent coin info 0x9122ac688ef8ae7f2f9e3e2c7547cf31401ad85bb4225dfa30ea46a50236391b, which is the 1. transactions name. Not the added coin from transaction 1 with id 0x4af4d59c0af4b9915a81766bdd47d01f80f63ccdd6c486edc519d3a7df8651ff
  • TransactionType is INCOMING, eventhough I sent cat

image

Issues:

  • It is unclear to me why the removal value of transaction 2 does not match created coins value of transaction 1
  • It is unclear to me why the removal of transaction 2 consumes the transaction id of transaction 1 and not its addition
  • It is unclear to me why this transaction Type is INCOMING, when I sent 779.4 Mojos.

It would be much appreciated if detailed documentation was or is available where I can read through the exact transaction/coining process.

KryptomineCH avatar Aug 10 '23 09:08 KryptomineCH

Hey @KryptomineCH , I will be working on reorganizing and updating the docs site over the coming weeks and will look into the inclusion of TransactionType information.

In the meantime, I believe the second message you posted (about the cat transactions and what is displayed in the gui) is a bug. Would you be able/willing to open an issue on the gui repo? (https://github.com/Chia-Network/chia-blockchain-gui/issues/new?assignees=&labels=bug&projects=&template=bug_report.yaml&title=%5BBug%5D+)

Once that ticket is created I will pass it along to our front end devs to review :+1:

BrandtH22 avatar Nov 09 '23 22:11 BrandtH22

Hello @BrandtH22,

The Issues I described were related to the RPC requestst, I think the gui shows everything alright. However, investigation on my side is still ongoing, I have no concrete cause yet.

Regarding the Documentation, I did further research on my side and gathered the following infos, which might be helpful to you:

  • You can find the transaction types in the wallet connect documentation: https://docs.chia.net/walletconnect-commands?_highlight=type#transactiontype

furthermore, there are some frindings from my side, with some specifics (better clarify them still) which I think should be made clear in the documentations of transactions: The transaction history is not deterministic due to heuristics we use to counter privacy features of the blockchain. This means, a couple of details cannot be fetched fully:

  • The transaction IDs can and will change if you resync the wallet
  • Transactions of assets other than xch (cat, nft, ...) which include a fee will cause a second fee-transaction in the xch currency wallet (wallet 1)
  • Offers are split into multiple transactions on the corresponding wallets
  • Transactions of one Offer do not share the same id`s. To match them up, it is best to keep the offer files
  • The transaction time is a rough estimate. When an offer is accepted, the individual transactions of one offer can/will have slightly differing transaction times
  • For your offers which were accepted by a 3rd Party , the incoming coins are beeing marked as incoming transaction, not as incoming trade
  • When cancelling offers, the cancellation Transactions are beeing shown as transaction, not as trade

For accurate records, you should keep a local record of transactions (TXs) and the Offer files made.

KryptomineCH avatar Nov 10 '23 16:11 KryptomineCH

All transaction notes have been added in #559 , let us know if additional information should be included

BrandtH22 avatar May 15 '24 21:05 BrandtH22