Skip to content

Clean up the structure of round state.bin #384

@poszu

Description

@poszu

The round state file contains many fields that are not required anymore:

type persistedRoundState struct {
	SecurityParam uint8
	Members       [][]byte // Deprecated
	Statement     []byte
	ParkedNodes   [][]byte // Deprecated
	NumLeaves     uint64
	NIP           *shared.MerkleProof
}

To remove:

  • Members
  • ParkedNodes

Questionable fields:

  • NIP: The round data (including the state) is removed shortly after finishing,
  • SecurityParam: It's currently hardcoded in the PoET binary anyway, and it can be decided when the proof is created

Also, the serialization format could be changed to a human-readable format like JSON for:

  • easier maintenance (fixing hard failures),
  • easier structure changing without the need for extra migration code if not necessary.

💡 Migration will be required to make sure that already deployed poets can upgrade easily.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    📋 Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions