Skip to content

[Persistence] Decide and document invalid transaction handling  #871

@dylanlott

Description

@dylanlott

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

  • 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

Creator: @dylanlott
Co-owner: @Olshansk

Metadata

Metadata

Assignees

Labels

code healthNice to have code improvementdocumentationImprovements or additions to documentationpersistencePersistence specific changes

Type

No type

Projects

Status

Backlog

Relationships

None yet

Development

No branches or pull requests

Issue actions