Skip to content
Open
Overdue by 27 day(s)
Due by June 30, 2025
Last updated Jul 11, 2025
100% complete

The Vision

Improve the robustness and fault-tolerance of the litep2p crate and bring the crate to a higher level of maturity.

The goal is to stabilize the litep2p and use it as the default backend of Substrate-based chains.

The Plan

To achieve this, we'll focus our efforts on:

  • Feature Completeness
    • Implement missing features (validate ping payloads, generate unique random ping payloads, ensure kad records TTL)
  • Robustness
    • Ensure core code logic does not panic upon unexpected/malicious user behaviors, panics, unwraps, undocumented expects, array indexing without length validation etc
    • Fix incorrect functionality and divergences from the libp2p specification
    • Repair bugs and limit the surface of race conditions
  • Maintenance: keep the code simple
    • Avoid code duplicates (transport layer)
    • Coherent APIs and errors
    • Adopt rust clippy and best practices
    • Improve and add documentation
  • Performance Improvements
    • Avoid unnecessary clones
    • Improve the query engine
    • Analyze memory and CPU consumption
  • Testing
    • increase code coverage by unit-testing sensitive components (multiselect / noise, kad etc)
    • improve our integration testing scenarios
    • add fuzzing
    • create a plan for continuous testing and triaging in our test stack and keep track of triage reports

Corresponding tracking issue for more details:

List view

    There are no open issues in this milestone

    Add issues to milestones to help organize your work for a particular release or project. Find and add issues with no milestones in this repo.