Commit Graph

171 Commits

Author SHA1 Message Date
Dobromir Popov
de52ad7aa0 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-07-04 22:30:57 +02:00
D.Popov
68e057209c Add alpha-hardening ADRs and issue plan from pre-release audit.
Lock alpha scope, tracker auth, TOPLOC fraud verification, and deferred multi-tracker money-path work; supersede legacy fraud issues with ADR-0018.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 23:12:09 +03:00
D.Popov
7caf12980a skills update; USER ACCOUNT system! Alpha! 2026-07-03 19:22:39 +03:00
Dobromir Popov
5179806a67 Pass --no-billing to tracker in deploy stacks when ENABLE_BILLING_DB=0 2026-07-03 19:19:09 +03:00
Dobromir Popov
98249e504a notes 2026-07-03 00:55:06 +02:00
Dobromir Popov
83b042d94b Track observed node throughput 2026-07-02 23:28:20 +02:00
Dobromir Popov
a938c19a82 dash works !!! good data. billing seems to work 2026-07-02 23:07:41 +02:00
Dobromir Popov
1e0aa6ea8f feat: USDT reward system — billing ledger, devnet treasury, settlement loop, forfeiture PoW, tracker dashboard (US-030…US-035, ADR-0015)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 22:31:02 +02:00
Dobromir Popov
4d4ab607ca Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-07-02 21:27:26 +02:00
Dobromir Popov
57ec7c1e4b billing ledger 2026-07-02 21:27:23 +02:00
Dobromir Popov
416ceba0f6 refine blockchain integration and protocols 2026-07-02 21:14:15 +02:00
Dobromir Popov
5b142b9976 tracher md 2026-07-02 22:03:37 +03:00
Dobromir Popov
c3d22c895e Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-07-01 14:42:41 +02:00
Dobromir Popov
c8686725aa notes 2026-07-01 14:42:38 +02:00
Dobromir Popov
ac053f5800 memories in git 2026-07-01 14:40:42 +02:00
Dobromir Popov
2e0dd3732a docs: update issue-tracker.md with full .scratch → docs/ lifecycle
Documents the complete feature lifecycle: grilling → to-prd → to-issues
into .scratch/, then /close-feature graduates to docs/. Covers conventions
for both active and closed features, and the proactive close-feature trigger.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 14:46:26 +03:00
Dobromir Popov
c5c60cf289 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-07-01 14:45:13 +03:00
Dobromir Popov
85a8496985 dn 2026-07-01 14:43:08 +03:00
Dobromir Popov
07b1ca78b2 skill: add /close-feature + document cross-machine skill setup
- New /close-feature skill graduates .scratch/<slug>/ to docs/ when all
  issues are done; also offers to run proactively when it detects a complete
  feature. Documents machine setup steps (Linux/Mac, Windows, Codex, new skill
  install) in the skill itself.
- Fix AGENTS.md issue-tracker line to reflect the .scratch → docs/ workflow.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 14:32:42 +03:00
Dobromir Popov
50ec507c7a new story 2026-07-01 13:18:46 +02:00
Dobromir Popov
d1e75ddded docs: consolidate all docs under docs/ — single source of truth
Move issues (01–29) and PRD from .scratch/distributed-inference-network/
into docs/issues/ and docs/. Update ralph_progress.py DEFAULT_PRD path
and rewrite docs/agents/issue-tracker.md to reflect the new layout.

The distributed_inference_network.egg-info/docs/ mirror is a build
artifact already covered by *.egg-info/ in .gitignore — not committed.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 14:18:26 +03:00
Dobromir Popov
b035338e58 Load recommended model metadata from JSON 2026-07-01 12:57:23 +02:00
Dobromir Popov
bc760c1694 Track Kimi model metadata and cache path 2026-07-01 12:38:31 +02:00
Dobromir Popov
78834e5045 md: setup on windows native default py CUDA supprot 2026-07-01 11:32:15 +02:00
Dobromir Popov
2d833432bc Record CUDA benchmark diagnostics 2026-07-01 10:57:44 +02:00
Dobromir Popov
c4a63d9461 Require executable CUDA for GPU mode 2026-07-01 10:53:29 +02:00
Dobromir Popov
d778b23e1e Fix Windows memory budget detection 2026-07-01 10:49:06 +02:00
Dobromir Popov
278be49539 node stats and benchmark, dynamic realocation working 2026-07-01 10:02:17 +03:00
Dobromir Popov
b6272db93d feat: default quantization int8, GB display, shard heal cycle test
- cli.py: change default --quantization from bfloat16 to int8; saves
  ~50% VRAM/RAM for new nodes that don't specify a quantization
- startup.py: display memory budget and GPU info in GB (e.g. 124.9 GB RAM)
  instead of MB; show remaining headroom after full model load
- test_tracker_routing.py: add test_shard_heal_cycle_surviving_node_covers_dead_peers_gap
  — end-to-end proof that:
    1. tracker purges expired node A and queues LOAD_SHARD for node B
    2. node B receives directive on next heartbeat
    3. TorchNodeServer.apply_tracker_directives hot-swaps the backend
    4. node B re-registers covering the full model; coverage gap closed
  Test runs in <1s with monkeypatched _load_backend (no GPU needed)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 23:08:34 +03:00
Dobromir Popov
ff4115f611 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-06-30 21:29:37 +02:00
Dobromir Popov
b06b86a6f0 Expose node shard capacity limits 2026-06-30 21:29:30 +02:00
Dobromir Popov
b448dd037f cleanup 2026-06-30 22:28:34 +03:00
Dobromir Popov
94d2216a28 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-06-30 21:19:49 +02:00
Dobromir Popov
344f432880 tasks 2026-06-30 21:19:47 +02:00
Dobromir Popov
346c83aed7 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-06-30 22:19:20 +03:00
Dobromir Popov
f1e4ed6a32 Wire node memory and shard slot capabilities 2026-06-30 21:17:07 +02:00
Dobromir Popov
2b439e8a5f docs: add US-020–029 issue files, ADR 0011–0014, update prd.json to 29/29
Issue files (.scratch/issues/20-29): retrospective specs for all work
done in the current sprint — hardening, route-timeout, start-layer
protocol, heartbeat stats, availability map, rolling RPM, smart
assignment, throughput routing, routing tests, relay outbound client.

ADRs (docs/adr/0011-0014):
  0011 — Auto-shard from memory budget and tracker network assignment
  0012 — X-Meshnet-Start-Layer overlapping shard execution protocol
  0013 — Rolling RPM statistics, smart assignment scoring, throughput routing
  0014 — Relay outbound client for NAT/internet pipeline hops

prd.json: US-020 through US-029 added, all marked done. ralph_progress.py
now shows 29/29 complete (100%).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 22:15:41 +03:00
Dobromir Popov
61074a8fe8 relay over ws supossedly working 2026-06-30 21:06:39 +02:00
Dobromir Popov
d0307fcc84 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-06-30 19:28:43 +02:00
Dobromir Popov
f1e4870124 qol improvements 2026-06-30 19:27:46 +02:00
Dobromir Popov
7866723c82 tracker rebalance events 2026-06-30 20:08:18 +03:00
Dobromir Popov
4f00a37d72 docs: revise QUICKSTART with relay NAT/internet connectivity guide
- Replace stale "only this works" PowerShell comment with accurate relay
  one-liner that works from behind NAT without --advertise-host
- Expand "Public tracker + WSS relay" into a full architecture section:
  nginx proxy paths, start commands, relay hop sequence, Base64 encoding
- Add WSL2 two-node relay test scenario with curl examples
- Document startup output when relay connects (Relay connected line)
- Remove "Start the relay node" stub; fold into the main relay section

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 18:34:06 +03:00
Dobromir Popov
ab6558d861 Merge branch 'master' of https://git.d-popov.com/popov/neuron-tai 2026-06-30 18:31:22 +03:00
Dobromir Popov
6c46f96aaf relaying/ RPC 2026-06-30 18:30:54 +03:00
Dobromir Popov
d8a723a4c7 notes 2026-06-30 17:30:20 +02:00
Dobromir Popov
742d5ff0bf updated notes 2026-06-30 17:22:42 +02:00
Dobromir Popov
8157151102 feat(us-016): outbound relay client for NAT/internet pipeline hops
Nodes behind NAT (5G, WSL2, home routers) can now participate in
distributed pipeline inference over the internet via the relay server.

- torch_server: add module-level _relay_hop() that opens a WebSocket
  to relay.../rpc/{peer_id}, sends the binary activation with
  body_base64 encoding, and returns (status, headers, body)
- torch_server: _get_remaining_route returns list[dict] (was list[tuple])
  preserving relay_addr from injected X-Meshnet-Route header and
  from /v1/route slow-path node info
- torch_server: _run_downstream_pipeline dispatches via _relay_hop
  when hop has relay_addr; falls back to direct HTTP on relay error
- tracker server: downstream_hops dicts include relay_addr when node
  has one registered, so head node knows how to reach each peer
- relay_bridge: binary bodies (bfloat16 activations) use body_base64;
  response preserves all X-Meshnet-* headers

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 18:02:25 +03:00
Dobromir Popov
4f79b2d177 win setup md 2026-06-30 17:58:41 +03:00
Dobromir Popov
5fe471d8ca less verbose node hop if not in debug mode 2026-06-30 17:44:21 +03:00
Dobromir Popov
6e4f755e71 fix(lan): warn when auto-detected endpoint IP is in Docker/WSL2 172.16/12 range
Nodes running inside WSL2 or Docker have a virtual network interface whose IP
(172.16-31.x.x) is not reachable from physical machines on the LAN.  The UDP
socket probe for outbound IP returns this virtual IP, which gets registered with
the tracker — causing downstream pipeline hops to time out with "urlopen error
timed out".

_warn_virtual_network_ip() now prints a clear multi-line warning at startup
when the auto-detected advertise IP falls in 172.16.0.0/12, including the
fix: --advertise-host <LAN-ip>.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 17:40:13 +03:00