Determine the full lifecycle of an invalid transaction in Pocket and how it relates to other transactions.
861 revealed inconsistencies in how we treat invalid transactions in the block application flow.
Origin Document
The team discussed this in detail during protocol hour on 06/20/2023 (notion notes here and audio recording here).
The notes (which are rough and have not been organized) and recording (which would need to be transcribed) can be used as a starting point for how to approach this.
Goals
Document invalid transaction handling
Determine network actions and consequences for invalid transactions
Deliverable
[ ] Documentation updates for the transaction lifecycle
[ ] Necessary code updates to support the invalid transaction handling decisions
[ ] Prepare an ADR documenting the decision above
[ ] Identify & document attack vectors covered and those that should be taken into consideration in the future
Non-goals / Non-deliverables
Should not change any atomicity guarantees for transactions
General issue deliverables
[ ] Update the appropriate CHANGELOG(s)
[ ] Update any relevant local/global README(s)
[ ] Update relevant source code tree explanations
[ ] Add or update any relevant or supporting mermaid diagrams
Testing Methodology
[ ] make test_e2e
[ ] make develop_test
[ ] All tests: make test_all
[ ] LocalNet: verify a LocalNet is still functioning correctly by following the instructions at docs/development/README.md
[ ] k8s LocalNet: verify a k8s LocalNet is still functioning correctly by following the instructions here
Objective
Determine the full lifecycle of an invalid transaction in Pocket and how it relates to other transactions.
861 revealed inconsistencies in how we treat invalid transactions in the block application flow.
Origin Document
The team discussed this in detail during protocol hour on 06/20/2023 (notion notes here and audio recording here).
The notes (which are rough and have not been organized) and recording (which would need to be transcribed) can be used as a starting point for how to approach this.
Goals
Deliverable
Non-goals / Non-deliverables
General issue deliverables
Testing Methodology
make test_e2e
make develop_test
make test_all
LocalNet
is still functioning correctly by following the instructions at docs/development/README.mdk8s LocalNet
is still functioning correctly by following the instructions hereCreator: @dylanlott Co-owner: @Olshansk