Skip to content
This repository was archived by the owner on Aug 8, 2026. It is now read-only.

Latest commit

 

History

History
95 lines (76 loc) · 5.17 KB

todo.md

File metadata and controls

95 lines (76 loc) · 5.17 KB

NodeShare Implementation Backlog & Task Checklist

This document outlines the sequential implementation order for the NodeShare distributed platform upgrade. If you are using Claude Code or another agentic coding assistant to complete these tasks, follow the instructions and guidelines below to ensure clean integration.


Guidelines for AI-Assisted Implementation

  1. One Task at a Time: Do not attempt to run multiple tasks in parallel. Complete each issue, write and pass tests, and merge the code before moving to the next.
  2. Strict Dependency Order: Do not skip ahead. Tasks are structured such that each step builds on the preceding codebase.
  3. Use the Design Guidelines: Each issue specifies suggested branch names, commit messages, and files to modify. Have the agent follow these naming patterns to keep the commit history clean.
  4. Protobuf Compilation: When modifying proto/nodeshare.proto, compile the changes using make proto immediately and resolve any build errors before proceeding.
  5. Testing Requirements: Instruct the agent to run local unit and integration tests (e.g., using go test ./...) after every implementation chunk to check for regressions.

Milestone 1: Decentralized Peer Discovery & Health Heartbeats

  • [Task 1.1] Integrate Kademlia DHT for Peer Routing
    • Issue Link: #3
    • Focus: Libp2p host setup, Kademlia DHT integration.
  • [Task 1.2] Implement Peer Discovery Loop using DHT Announcements
    • Issue Link: #4
    • Focus: Background advertise and find loops.
  • [Task 1.3] Integrate HashiCorp Memberlist for Heartbeats and Health Mapping
    • Issue Link: #5
    • Focus: Gossip network failure detection.
  • [Task 1.4] Update REPL Connection Commands for DHT-Based Lookup
    • Issue Link: #6
    • Focus: CLI user-experience and address resolution.

Milestone 2: GPU Telemetry & Resource Profiling

  • [Task 2.1] Define System Resource Capacity Schemas in Protobuf
    • Issue Link: #7
    • Focus: Protocol definitions and schema generation.
  • [Task 2.2] Implement GPU Discovery using NVIDIA NVML
    • Issue Link: #8
    • Focus: Host GPU hardware and vRAM query.
  • [Task 2.3] Implement CPU and Memory Capacity Tracker
    • Issue Link: #9
    • Focus: Dynamic host memory and CPU utilization.
  • [Task 2.4] Advertise Resource Capacities in Handshakes and SystemInfo
    • Issue Link: #10
    • Focus: Protocol updates and REPL diagnostics.

Milestone 3: Consensus, Leader Election & Task Queue

  • [Task 3.1] Create Coordinator Subcommand and Daemon
    • Issue Link: #11
    • Focus: Cobra CLI coordinator role.
  • [Task 3.2] Integrate HashiCorp Raft for State Replication
    • Issue Link: #12
    • Focus: Raft consensus and election handler.
  • [Task 3.3] Design Raft-backed Distributed Task Queue
    • Issue Link: #13
    • Focus: Distributed state machine queue.
  • [Task 3.4] Implement Job Matchmaker Scheduling Algorithm
    • Issue Link: #14
    • Focus: Resource and latency-based scheduling.
  • [Task 3.5] Implement Fault Tolerance and Task Rescheduling
    • Issue Link: #15
    • Focus: Heartbeat monitor and automatic rescheduling.

Milestone 4: Secure Sandboxed Workloads (gVisor & Wasmtime)

  • [Task 4.1] Define pluggable Executor Driver Interface
    • Issue Link: #16
    • Focus: Runtime driver abstraction interfaces.
  • [Task 4.2] Implement gVisor Container Sandbox Driver
    • Issue Link: #17
    • Focus: Google runsc secure containers.
  • [Task 4.3] Integrate Wasmtime Go WebAssembly Sandbox Driver
    • Issue Link: #18
    • Focus: In-process WebAssembly runner.

Milestone 5: Distributed Storage & Cache Locality

  • [Task 5.1] Integrate SeaweedFS Client for Distributed Storage
    • Issue Link: #19
    • Focus: Volume mounts and storage.
  • [Task 5.2] Implement Task Volume Mounts in Executors
    • Issue Link: #20
    • Focus: Sandbox bind-mounting configuration.
  • [Task 5.3] Add Data-Locality Scheduling Constraints
    • Issue Link: #21
    • Focus: Cache locality scheduler optimization.