network: add hub registration, Redis persistence, and federated mesh join protocol
Some checks failed
CLI Tests / test-cli (push) Has been cancelled
Integration Tests / test-service-integration (push) Has been cancelled
Python Tests / test-python (push) Has been cancelled
Security Scanning / security-scan (push) Has been cancelled
Documentation Validation / validate-docs (push) Has been cancelled
API Endpoint Tests / test-api-endpoints (push) Has been cancelled
Systemd Sync / sync-systemd (push) Has been cancelled

- Change default P2P port from 7070 to 8001 in config and .env.example
- Add redis_url configuration option for hub persistence (default: redis://localhost:6379)
- Implement DNS-based hub registration/unregistration via HTTPS API endpoints
- Add Redis persistence for hub registrations with 1-hour TTL
- Add island join request/response protocol with member list and blockchain credentials
- Add GPU marketplace tracking (offers, bids, providers) in hub manager
- Add
This commit is contained in:
aitbc
2026-04-13 11:47:34 +02:00
parent fefa6c4435
commit d72945f20c
42 changed files with 3802 additions and 1022 deletions

View File

@@ -75,9 +75,9 @@ class P2PDiscovery:
"""Add bootstrap node for initial connection"""
self.bootstrap_nodes.append((address, port))
def generate_node_id(self, address: str, port: int, public_key: str) -> str:
"""Generate unique node ID from address, port, and public key"""
content = f"{address}:{port}:{public_key}"
def generate_node_id(self, hostname: str, address: str, port: int, public_key: str) -> str:
"""Generate unique node ID from hostname, address, port, and public key"""
content = f"{hostname}:{address}:{port}:{public_key}"
return hashlib.sha256(content.encode()).hexdigest()
async def start_discovery(self):