Skip to content
This repository has been archived by the owner on Jun 11, 2024. It is now read-only.

Create protocol-spec json for basic current specification #4087

Closed
6 tasks done
shuse2 opened this issue Aug 15, 2019 · 0 comments
Closed
6 tasks done

Create protocol-spec json for basic current specification #4087

shuse2 opened this issue Aug 15, 2019 · 0 comments
Assignees

Comments

@shuse2
Copy link
Collaborator

shuse2 commented Aug 15, 2019

Description

We want to create a protocol specification generator for block processor for the current protocol. It should cover

  • Basic Transfer acceptance
  • Transfer transaction that is valid independently but as a block invalid.
  • Transfer transaction that is valid independently and as a block, but partially invalid
  • Basic Second signature acceptance
  • Combination of second signature and transfer transactions in a same block
  • Basic delegate registration acceptance
  • Delegate registration for user who already exists
  • Basic Vote acceptance
  • Vote transaction which exceeds maximum allowed
  • Vote transaction which votes for non-delegate
  • Vote transaction which votes for delegate who is voted before.
  • Vote transaction which unvotes for delegate who is not voted before.
  • Basic Multisignature acceptance
  • Combination of multi signature and transfer transactions in a same block

Motivation

We are going though lots of code and protocol changes, and we want to make sure that we did not make the unintended changes to the protocol

Acceptance Criteria

  • All of the json file exists for above patterns

List of Task

  • Create protocol spec JSON files for transfer transaction.
  • Create protocol spec JSON files for second signature transaction.
  • Create protocol spec JSON files for delegate transaction
  • Create protocol spec JSON files for vote transaction
  • Create protocol spec JSON files for multi-signature transaction
  • Create protocol spec JSON files for combination of all transaction types.

Grooming Meeting Notes

  • Discussion about using elements feels wrong for creating data for protocol specs as that’s the current protocol that should create data for further protocol changes. So the other options is to use pure functions we create ourselves that follow the protocol. Much harder, e.g. signing and big endian values / swapping bytes. But in the end it’s just creating signed JSON.
  • We need hashing, signing, keypair generation for sure.
  • Need for a bit further discussions on this as protocol is already documented.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants