How rwilliamspbg-ops/sovereign-mohawk-proto works
Sovereign Mohawk Proto is a federated-learning runtime, with a Python/Flower adoption path and a separate operations-assistant UI. The principal documented flow is SDK client → runtime update exchange → federated processing; the sampled node agent and orchestrator show job delivery, gradient transport, and checkpoint access. The graph also preserves documented federation, privacy, attestation, and observability capabilities. Several subsystems are represented at their exact enclosing directories because their implementation files were not sampled; edges are limited to shown calls or README statements.
Main entry points: node-agent/main.go Node agent · orchestrator/main.go Orchestrator · App.tsx Assistant application · client.py Python SDK
Components 23
SDK and workflow
- Python SDK
sdk/python/mohawk/client.py - Flower integration
sdk/python/mohawk/flower_client.py
Runtime coordination
- Node agent
cmd/node-agent/main.go - Orchestrator
cmd/orchestrator/main.go - Runtime API
cmd/orchestrator/server.go - WASM task host
internal/wasmhost/host.go - Task manifest
internal/manifest/manifest.go - P2P gradient transport
internal/network/gradient.go - Checkpoint storage
internal/ipfs/backend.go
Federated processing
- Federation RPC
internal/federation/rpc_handler.go - Gradient aggregation
internal/aggregator.go - Streaming aggregation
internal/streaming_aggregator.go - Insight routing
internal/router/router.go
Trust and privacy
- RDP accounting
internal/rdp_accountant.go - TPM attestation
internal/tpm/tpm.go - Proof verification
internal/proofs/verifier.go
Operations assistant
- Runtime metrics
internal/metrics/metrics.go - Assistant application
web/ops-assistant/client/App.tsx - Metrics view
web/ops-assistant/client/components/MetricsView.tsx - Grafana dashboards
web/ops-assistant/client/components/GrafanaDashboardView.tsx - Action renderer
web/ops-assistant/client/components/A2UIRenderer.tsx - API URL config
web/ops-assistant/client/config.ts
Other components
- FL developer
Connections 24
- FL developer → Python SDK: uses
README.md - Python SDK → Flower integration: supports
README.md - Python SDK → Node agent: exchanges updates
- Node agent → Orchestrator: submits gradients
cmd/node-agent/main.go - Orchestrator → Runtime API: configures
cmd/orchestrator/main.go - Orchestrator → Task manifest: signs manifests
cmd/orchestrator/main.go - Orchestrator → Checkpoint storage: configures
cmd/orchestrator/main.go - Node agent → WASM task host: runs tasks
cmd/node-agent/main.go - Node agent → P2P gradient transport: sends gradients
cmd/node-agent/main.go - Orchestrator → P2P gradient transport: registers handler
cmd/orchestrator/main.go - Runtime API → Checkpoint storage: reads checkpoints
cmd/orchestrator/server.go - Runtime API → Runtime metrics: records denials
cmd/orchestrator/server.go - Node agent → Runtime metrics: records metrics
cmd/node-agent/main.go - Assistant application → API URL config: builds API URLs
web/ops-assistant/client/App.tsx - Assistant application → Metrics view: renders
web/ops-assistant/client/App.tsx - Assistant application → Grafana dashboards: renders
web/ops-assistant/client/App.tsx - Assistant application → Action renderer: renders
web/ops-assistant/client/App.tsx - Metrics view → API URL config: builds API URLs
web/ops-assistant/client/components/MetricsView.tsx - Grafana dashboards → API URL config: builds API URLs
web/ops-assistant/client/components/GrafanaDashboardView.tsx - Federation RPC → Gradient aggregation: coordinates
- Gradient aggregation → RDP accounting: accounts privacy
- Node agent → TPM attestation: attests node
cmd/node-agent/main.go - Node agent → Proof verification: verifies proof
cmd/node-agent/main.go - FL developer → Insight routing: shares insights