changed 3 years ago
Linked with GitHub

Master Plan - Part 2 - WIP
Key deliverables (e.g. over next 12-24 months)
Follows from Master Plan Part 1

  • CoD WG success
    • Align with making the Compute-over-Data Working Group (CoD WG) successful
    • Meet with key participants in CoD WG to establish useful collaborations
    • Splitting useful parts of Bacalhau into reusable pieces for other projects
    • This will be an ongoing theme throughout all of the future development as well, and collaboration on all of the following topics must be encouraged
  • User success
    • Listen to user feedback as they’re onboarded and develop new features and improvements to make them successful
    • Examples so far: GPU support, support for external HTTP(S) URLs as input data
  • Consensus & verification
    • Keep track of state of jobs as well as verification of jobs
    • Iterate on the verification protocol for deterministic WASM workloads (discussion already underway with Consensus team)
    • Prototype and test an implementation of the verification protocol
  • Smart contract
    • Smart contract implementation of scheduler in FVM
    • Integrating smart contract into Transport and Controller interfaces in Bacalhau
  • Efficiency
    • Work to ensure smart contract implementation can approach efficiency of libp2p based solution
    • Throughput is probably more important than latency for batch jobs
  • Formal verification
    • Formally verifying the Bacalhau smart contract protocol will help ensure correctness and eliminate protocol bugs
    • See: Glow, Dafny, Coq, Why3
  • BFT up to ⅓
    • Support Byzantine Fault Tolerance assuming ⅔ of the participants are honest
  • Nondeterministic execution
    • Per the original prototype, bring back support for verifying nondeterministic workloads (e.g. the docker driver, GPU workloads) via evidence of work
  • Plugin system
    • Support various flavors of evidence provided to support verifiable non-deterministic execution
  • Reputation system
    • Build a reputation system around the judgements being made by the verification protocol
    • This would allow a public dashboard of providers and how trustworthy they are
  • Incentive model
    • Based on the consensus protocol, ensure the incentive model is effective from a game-theoretic perspective, building on the formal verification work
  • Developer experience
    • Continuously improving the UX of the system for users and service providers
  • Hardening evidence of work system
    • Making the nondeterministic execution more robust via more sophisticated signal processing
  • Secrecy
    • Support private data and code
  • Long-running servers
    • Support for long-running servers (e.g. web applications, microservices) as well as data processing use-cases

If you have comments about what you think we should build, please let us know on the Filecoin Slack, #bacalhau channel 😄

Select a repo