Skip to content

Instantly share code, notes, and snippets.

@keroro520
Last active September 10, 2020 10:07
Show Gist options
  • Save keroro520/2e1871ff016b91c03201d066f015334e to your computer and use it in GitHub Desktop.
Save keroro520/2e1871ff016b91c03201d066f015334e to your computer and use it in GitHub Desktop.
Q3/Q4 OKR

Q3

  • KR1: Improve programmability and readability of integration-test.

    • Extract common behaviors. Our test cases are always complicated, usually because they act complicated steps to construct the testing context or check the status of the things. Extracting those common behaviors is a way to reduce complexity. Our vision is, with fewer codes and documents, that a new programmer takes less effort to read and write test cases.

      • Mining
      • Block construction
      • Transaction construction
      • Chain construction
      • Chain/block/transaction status checking
      • Network protocol, including sending, receiving, checking messages and node's status
      • Improve the message receiving interface of Net controller. More specifically, different peers correspond to different message channels.
      • Net controller holds peer-ids inside.
      • Reduce the usage of redundant constants, like DEFAULT_TX_PROPOSAL_WINDOW
    • Reduce debugging difficulty.

      • Impl event log mechanism
      • Add verbose event logs inside util functions.
      • Distinguish different logs corresponding to different cases.
  • KR2: Staging network as an experimental network

    • Add more key metrics inside ckb node
    • TPSBench experiments more evaluation methods and params. Feedback onto issues.

Q4

  • KR1: Network testing suites

    • Publish testground-sdk-rust
    • Run network testing cases periodically
  • KR2: Add more integration tests to cover new features

    • chain freezer
  • KR3: QA flow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment