Commit Graph

12 Commits

Author SHA1 Message Date
Markus Maiwald c8435a65df
chore: remove build artifacts and update .gitignore
Remove temporary build error logs and binary artifacts:
- build_err.txt
- build_error_j1.txt
- capsule-core/build_errors.txt
- root (binary data file)

Add patterns to .gitignore to prevent future commits of:
- build_err* and build_errors.txt
- 'root' artifact files
2026-02-05 15:36:07 +01:00
Markus Maiwald b6edd5c403
feat(capsule): stabilize TUI monitor, implement control IPC, and fix leaks (Zig 0.15.2) 2026-02-01 10:35:35 +01:00
Markus Maiwald 87cd30dbe3 feat(relay): Implement Sticky Sessions & RelaySend CLI
- Added  to support reusing SessionID and Ephemeral Keys.
- Updated  to track session statistics (packet counts) for rate-limiting.
- Implemented  CLI command to send packets via Relay.
- Refactored  to accept optional reusable keypair.
- Updated tests.
2026-01-31 22:21:53 +01:00
Markus Maiwald 8b115ee2a6 chore(federation): Bump protocol version to 2 (DHT key propagation) 2026-01-31 22:16:21 +01:00
Markus Maiwald 24adf936e5 feat(relay): Wire up CircuitBuilder with DHT Keys
- Implemented  in DHT for exact key lookup.
- Updated  to use DHT service for resolving Relay Public Keys.
- Generated  on client-side (random) for circuit privacy.
- Wired  to pass DHT instance to CircuitBuilder.
- Updated  forwarding logic to use strict SessionID binding.
- Fixed lints in dht.zig.
2026-01-31 22:15:46 +01:00
Markus Maiwald e5f59869bc feat(crypto): Integrate ECDH & XChaCha20-Poly1305 for Relay
Phase 14 Real Crypto Update:
- Replaced mock encryption with XChaCha20-Poly1305 + X25519 ECDH.
- Implemented strict Nonce/SessionID binding (RFC-0000 alignment).
- Updated RelayPacket wire format to include Ephemeral Key.
- Updated RelayService to unwrap using Node Identity (SoulKey).
- Extended DHT and Federation protocols to propagate X25519 Public Keys.
- Persisted peer keys in SQLite storage.
- Tests passing (including new crypto logic).
2026-01-31 22:13:11 +01:00
Markus Maiwald fca9ac13e0 feat(integration): Wire Relay Forwarding & CLI Control
Phase 14 Integration:
- Relay Forwarding integrated into CapsuleNode event loop
- Handle  LWF frames
- Forward packets to next hop (or local delivery if final)
- Added CLI commands: , ,
- Tests passing (140/140)

Capabilities:
 Relay Forwarding (Mock Encryption)
 Dynamic Relay Service Control
 Statistics Reporting
2026-01-31 21:47:40 +01:00
Markus Maiwald cda96d303e feat(integration): Phase 14 - Integrate Relay & Circuit into CapsuleNode
Integration Complete:
- Added relay_enabled, bridge_enabled config options
- relay_trust_threshold for QVL relay selection
- RelayService for packet forwarding logic
- CircuitBuilder integrated into CapsuleNode
- Conditional initialization based on config
- All tests passing (140/140)

Node Capabilities:
 Gateway mode: NAT coordination
 Relay mode: Onion packet forwarding
 Client mode: Circuit building & sending

Config Example:
{
  "relay_enabled": true,
  "relay_trust_threshold": 0.7
}
2026-01-31 20:56:15 +01:00
Markus Maiwald a8ee5bebbd
feat(relay): Add Circuit Building and QVL relay selection
- Implemented CircuitBuilder for QVL-based relay path selection
- Added getTrustedRelays() to QvlStore for reputation queries
- Built 1-hop circuit MVP (Source -> Relay -> Target)
- All tests passing (137/137)
2026-01-31 19:57:03 +01:00
Markus Maiwald 43156fc033
feat(relay): Implement RelayPacket and onion wrapping logic 2026-01-31 18:11:09 +01:00
Markus Maiwald e2f9a8c38d
feat(capsule): Admin CLI & Emergency Lockdown
- Added Admin CLI commands:
  - Peer Management: ban, unban, trust, slash
  - Diagnostics: sessions, dht, qvl-query, identity
  - Security: lockdown, unlock, airlock
- Implemented L0 Transport Airlock & global lockdown flag
- Integrated SoulKey identity inspection
- Added comprehensive Admin CLI documentation
2026-01-31 10:41:38 +01:00
Markus Maiwald 4498da5ce6 feat(capsule): implement discovery, federation, and persistence (Phase 10) 2026-01-31 08:35:22 +01:00