Commit Graph

11 Commits

Author SHA1 Message Date
Markus Maiwald 0a86a93cf5
refactor: complete repository restructure with tiered licensing
BREAKING CHANGE: Repository restructured from flat layout to tiered:

FOLDER REORGANIZATION:
- core/          - L0-L3 layers (Commonwealth LCL-1.0)
  - l0-transport/   - Transport with MIMIC, Noise, PNG
  - l1-identity/    - Identity, QVL, Crypto
  - l2_session/     - Session management
  - l2-federation/  - Cross-chain bridging
  - l2-membrane/    - Policy enforcement
- sdk/           - L4+ and bindings (Sovereign LSL-1.0)
  - janus-sdk/
  - l4-feed/
- apps/          - Examples (Unbound LUL-1.0)
  - examples/
- legal/         - All license texts
  - LICENSE_COMMONWEALTH.md
  - LICENSE_SOVEREIGN.md
  - LICENSE_UNBOUND.md

IMPORT FIXES (All Layers):
- L0: 13 files fixed - all relative imports corrected
- L1: 14 files fixed - module imports for cross-layer dependencies
- L2: 6 files fixed - session, membrane, federation
- Capsule: 9 files fixed - TUI, node, main, control
- Examples: 2 files fixed - lwf, crypto

LICENSES ADDED:
- LCL-1.0: Viral reciprocity for Core (SaaS-proof)
- LSL-1.0: Business-friendly for SDK
- LUL-1.0: Maximum freedom for docs/apps

NO CLA REQUIRED - contributors keep copyright

README.md REWRITTEN:
- Documents new folder structure
- Explains tiered licensing strategy
- Clear SPDX identifiers per component

TODO:
- Fix remaining test module configuration issues
- Full green build in follow-up

Refs: 4 sub-agents parallel execution
2026-02-05 21:50:54 +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 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