machi/TODO-shortterm.org
2015-04-14 15:30:24 +09:00

1.5 KiB

To Do list

DONE remove the escript* stuff from machi_util.erl

DONE Add functions to manipulate 1-chain projections

  • Add epoch ID = epoch number + checksum of projection! Done via compare() func.

DONE Change all protocol ops to add epoch ID

DONE Add projection store to each FLU.

DONE What should the API look like? (borrow from chain mgr PoC?)

Yeah, I think that's pretty complete. Steal it now, worry later.

DONE Choose protocol & TCP port. Share with get/put? Separate?

Hrm, I like the idea of having a single TCP port to talk to any single FLU.

To make the protocol "easy" to hack, how about using the same basic method as append/write where there's a variable size blob. But we'll format that blob as a term_to_binary(). Then dispatch to a single func, and pattern match Erlang style in that func.

DONE Do it.

TODO Fix all known bugs with Chain Manager

DONE Fix known bugs

TODO Clean up crufty TODO comments and other obvious cruft

TODO Finish OTP'izing the Chain Manager with FLU & proj store processes

TODO Change all protocol ops to enforce the epoch ID

TODO Add projection wedging logic to each FLU.

  • Add no-wedging state to make testing easier?

TODO Move prototype/chain-manager code to "top" of source tree

TODO Preserve current test code (leave as-is? tiny changes?)

TODO Make chain manager code flexible enough to run "real world" or "sim"

TODO Replace registered name use from FLU write/append dispatcher

TODO Move the FLU server to gen_server behavior?