You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
At this moment we follow pending transaction set. We need to account also for confirmed transactions. In order to do it we need to extend the wallet state by the list of transaction. Caution should be put here as this extension (in contrast to pending transaction set) is not covered in the wallet spec. There may be the need to extend the wallet spec because of that. Moreover, the keeping tract of known transactions should not affect already established invariances and laws following from wallet spec.
Decision
We will add known transactions to the wallet state.
Acceptance Criteria
The known transaction list must be added to wallet state
The extension must not break anything from the wallet spec
Known transaction should be investigated for possible nontrivial laws and invariances with possible wallet spec extension.
Development Plan
Look in to how wallet state is updated with applyBlock
I have decided to add a field to Wallet rather than to the Wallet state parameter.
We have extended our primitive model to now keep track of discovered transactions during block applications. These transactions are then returned as outputs rather than being stored in the wallet state (as they can grow out-of-bounds) and stored separately from the wallet state itself.
We have manually compared the results of restoring an existing known wallet from mainnet in Yoroi and in our current backend (I can share the mnemonic if interested to compare and tests). This wallet is rather useful as it contains both incoming and outgoing transactions, as well as transactions with no change. So it allows us to test various edge-cases of the discovery process.
Alongside that, we've also extended our automated test-suite and, in particular, our test data in Tests for tracking known transactions #148 such that we would generate better "fake" blockchain with both incoming and outgoing transactions.
The text was updated successfully, but these errors were encountered:
Context
At this moment we follow pending transaction set. We need to account also for confirmed transactions. In order to do it we need to extend the wallet state by the list of transaction. Caution should be put here as this extension (in contrast to pending transaction set) is not covered in the wallet spec. There may be the need to extend the wallet spec because of that. Moreover, the keeping tract of known transactions should not affect already established invariances and laws following from wallet spec.
Decision
We will add known transactions to the wallet state.
Acceptance Criteria
must
be added to wallet statemust not
break anything from the wallet specshould
be investigated for possible nontrivial laws and invariances with possible wallet spec extension.Development Plan
applyBlock
Wallet
rather than to the Wallet state parameter.PR
master
master
master
master
QA
We have extended our primitive model to now keep track of discovered transactions during block applications. These transactions are then returned as outputs rather than being stored in the wallet state (as they can grow out-of-bounds) and stored separately from the wallet state itself.
We have manually compared the results of restoring an existing known wallet from mainnet in Yoroi and in our current backend (I can share the mnemonic if interested to compare and tests). This wallet is rather useful as it contains both incoming and outgoing transactions, as well as transactions with no change. So it allows us to test various edge-cases of the discovery process.
Alongside that, we've also extended our automated test-suite and, in particular, our test data in Tests for tracking known transactions #148 such that we would generate better "fake" blockchain with both incoming and outgoing transactions.
The text was updated successfully, but these errors were encountered: