Skip to content

Reference Implementation pt 1

David Vorick requested to merge testing into master

This PR contains a bunch of tweaks that get us closer to a full reference implementation. We're pretty close right now.

Stuff that's in here:

  • expand Consensus.md to define everything except for encoding
  • switch hashing to the blake2 algorithm
  • remove orphan handling from the consensus package (fixes #307 (closed))
  • increased test coverage
  • CoveredFields rules are now enforced
  • storage proof transaction rules are now enforced
  • type system now includes siafunds (though nothing is done with them)
  • CreateGenesisState now takes a timestamp, which will make certain test types easier.

For a reference implementation, what remains is:

  • 128bit uints that don't overflow
  • siafund implementation
  • 100 block cooldown on the certain output types
  • testing

I think most of it will be done in the next 3 days.

Merge request reports