Week 38 September 2025
Replace bittorrent in status-go
-
BlockExchange Performance and reliability
- achieved:
- Enhanced peer selection: Implemented multi-factor scoring algorithm considering peer load, exchange recency, success rate, and response time
- Improved load balancing: Distributed block requests across multiple peers in blockPresenceHandler instead of sending all to announcing peer
- Discovery engine optimization: Added peer count limits to prevent unbounded accumulation while maintaining redundancy, with least-active peer removal
- Memory optimization: Reduced default fetch batch size, implemented chunked onBatch processing to prevent memory accumulation, and added buffer reuse to reduce GC allocation churn
- next:
- Continue memory consumption optimizations in block exchange pipeline
- Investigate memory usage patterns in block batching and peer context management
- Profile under concurrent load to identify presure points
- blockers:
- achieved:
-
Identify Swarm Participation Limits (DHT Scaling)
- achieved:
- DHT scaling research document reviewed.
- next:
- Refine the document and address the review comments.
- Research existing DHT simulations and compare results.
- blockers:
- achieved:
-
Implement a Codex library so that clients can use Codex directly from their apps
- achieved:
- Exposed core Codex APIs: version, revision, repo, peerId, spr, debug information.
- Added ability to change log level.
- Implemented peer connection support.
- Exposed the upload feature with two ways:
- Chunks: 4-step flow (init, upload chunk, complete, cancel) with pause/resume support.
- Filepath: 3-step flow (init, upload, cancel).
- next:
- Extend Go wrapper API to allow cancellation of ongoing uploads.
- Implement download feature.
- blockers:
- achieved:
-
- achieved
- documented running running unit tests for status-go: codex-docs-obsidian/pull/19 (direct link to the document: Running Unit Tests for status-go),
- added a small convenience script to start a docker containiner running a waku node that is suitable for some of the unit tests: status-go/pull/6930 (
_assets/scripts/run_waku.sh in
), - coding the actual integration
- next:
- have basic POC finished (without fixing all the relevant tests, but having things in place to confirm that POC is working)
- blockers:
- achieved
Research future work
-
Altruistic Mode
- Document: Proposal for outsourcing local erasure coding (especially interesting together with file bundling). Next: prototype implementation
- Document: Updates to our collection of the research questions/problems related to the altruistic mode.
- Document: Consolidated understanding of Swarm networking and ongoing work with Swarm Incentives.
- Ongoing work in (re-)analysing Arweave, Sia, and Walrus based both on previous research done in the group (students and departed members), and more recent publications as we rebuild our knowledge on related approaches.