Commit Graph
19 Commits
Author SHA1 Message Date
Ben_Kosytorz 57b9b44d8a Add Docker and Nix packaging for the node
server/docker/: multi-stage image (rust:1-slim build, trixie runtime)
with all four binaries plus the pinned yggdrasil 0.5.14 .deb
(sha256-verified, fetched from the official release), a compose
example per household (host network, NET_ADMIN, /dev/net/tun,
init: true), a German-commented node.toml.example (safe default:
leech mode) and a README covering privileges, two-household wiring,
leech mode and the kill switch. Image build and smoke tests verified
locally with docker 29.8.1.

flake.nix: builds the workspace as one spidernet package via
rustPlatform.buildRustPackage (cargoLock against the committed
Cargo.lock) plus an experimental NixOS module; written without a
local Nix and marked accordingly.
2026-09-24 20:12:51 +02:00
Ben_Kosytorz f2f3609b87 Add sn-node daemon: supervise yggdrasil sidecar + in-process exit
sn-node daemon [--config node.toml] [--check] runs one household node
from a validated TOML config: generates the yggdrasil config with a
persistent node key in the state dir (PrivateKeyPath takes precedence
per the yggdrasil config reference, so the identity survives restarts),
waits for the overlay address via the admin socket, then serves the
sn-exit proxy in-process (or runs overlay-only in leech mode).
SIGINT/SIGTERM stop the accept loop, SIGTERM the sidecar (5s grace,
then SIGKILL); unexpected sidecar death shuts the daemon down with an
error. sn-exit gains an additive serve_until() with a shutdown future;
serve() keeps its behavior. Workspace: tokio gains process+signal,
serde/toml added. 73 tests green, clippy clean.
2026-09-24 20:12:44 +02:00
Ben_Kosytorz d8bd14ab1b Add pilot handbook and document sn-fair v0
pilot.md: step-by-step for connecting two households (link-agnostic),
measurement protocol M0-M4 (link baseline, uplink baseline, pooled,
concurrent downloads, sn-fair Soll/Ist comparison), safety/legal
checklist, and a results section to be filled after the pilot.
Cross-linked from Home, documentation README, roadmap, architecture
and server README; roadmap marks sn-fair v0 done.
2026-09-24 18:46:47 +02:00
Ben_Kosytorz ecf8848ca4 Add sn-fair v0: weighted max-min fairness scheduler with leech policy
Two-class allocation engine: contributors (configurable weight) get
weighted max-min shares of the pooled capacity, leeches (receive-only,
explicitly allowed) share the leftover capacity. Deterministic u128
arithmetic, validated newtypes, demo CLI in Mbit/s for the pilot
Soll/Ist comparison. 19 tests, workspace clippy clean.
2026-09-24 18:46:38 +02:00
Ben_Kosytorz afaeb76f6f sn-exit v0: quota-controlled uplink proxy (byte relay, CONNECT, SSRF guard) 2026-09-24 16:59:08 +02:00
Ben_Kosytorz c8ea5fc58c Add top-level README with repo map; refresh docs status 2026-09-24 16:12:24 +02:00
Ben_Kosytorz 50e459ed79 Docs: Yggdrasil overlay note (rationale, deployment, admin API) + link updates 2026-09-24 16:00:43 +02:00
Ben_Kosytorz c422deee7c sn-node: Yggdrasil config generation and admin socket client (genconf, status) 2026-09-24 15:58:12 +02:00
Ben_Kosytorz 23dc906da0 sn-fetch: per-exit egress (Direct vs Proxy) for neighbor exits over the mesh 2026-09-24 15:58:12 +02:00
Ben_Kosytorz 810529d502 sn-fetch: per-segment retry with exit reassignment and progress sinks 2026-09-24 15:58:11 +02:00
Ben_Kosytorz f4e614acce Deny unwrap/expect/panic via workspace lints; fix pedantic warnings 2026-09-24 14:04:03 +02:00
Ben_Kosytorz 9a61452931 sn-fetch PoC: range probe, weighted planner, parallel segments, reassembly + sha256 2026-09-24 13:53:35 +02:00
Ben_Kosytorz 3cb2890425 Docs: add Splitting note (ranges vs flow distribution vs realtime) and link it 2026-09-24 13:26:20 +02:00
Ben_Kosytorz 702bfc0a6e Ignore personal Obsidian vault config (not project content) 2026-09-24 13:11:34 +02:00
Ben_Kosytorz 6cba285713 Docs: SpiderNet is software-only, link-agnostic; decide AGPL-3.0 + CC-BY-SA-4.0 2026-09-24 13:11:10 +02:00
Ben_Kosytorz 6a3569011a Rename project to SpiderNet, Obsidian-style linked docs, license overview 2026-09-24 12:51:49 +02:00
Ben_Kosytorz e4641d1e71 Docs: leech mode, no-warranty disclaimer, Rust type-safety standards 2026-09-24 12:36:24 +02:00
Ben_Kosytorz 3bc240dd9b Initial project structure: documentation, server concept, agents instructions 2026-09-24 12:21:03 +02:00
Ben_Kosytorz c24472dfd3 Initial project structure: documentation, server concept, agents instructions 2026-09-24 12:20:27 +02:00