feat: add neuron daemon with GPU discovery and health endpoints
Replace cortex-agent stub with neuron (cortex-neuron binary). cortex-core additions: - discovery.rs: DeviceInfo, DiscoveryResponse, DeviceHealth, HealthResponse - harness.rs: Harness async trait, HarnessConfig, ModelSpec, ModelInfo neuron crate (crates/neuron/): - discovery.rs: nvidia-smi CSV parsing (pure functions) + system discovery via uname/nvidia-smi/nvcc - health.rs: cached GPU health polling every 5s - api.rs: GET /discovery and GET /health axum handlers - main.rs: CLI entrypoint with --port flag (default 9090) - harness stubs for mistralrs (Phase 8) and llamacpp (Phase 11) 12 new tests (9 unit + 3 integration), 35 total. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -3,8 +3,8 @@ resolver = "2"
|
||||
members = [
|
||||
"crates/cortex-core",
|
||||
"crates/cortex-gateway",
|
||||
"crates/cortex-agent",
|
||||
"crates/cortex-cli",
|
||||
"crates/neuron",
|
||||
]
|
||||
|
||||
[workspace.package]
|
||||
@@ -46,6 +46,12 @@ figment = { version = "0.10", features = ["toml", "env"] }
|
||||
anyhow = "1"
|
||||
thiserror = "2"
|
||||
|
||||
# async traits
|
||||
async-trait = "0.1"
|
||||
|
||||
# CLI
|
||||
clap = { version = "4", features = ["derive"] }
|
||||
|
||||
# futures / streams (for SSE proxying)
|
||||
futures = "0.3"
|
||||
tokio-stream = "0.1"
|
||||
@@ -54,4 +60,3 @@ eventsource-stream = "0.2"
|
||||
# workspace crates
|
||||
cortex-core = { path = "crates/cortex-core" }
|
||||
cortex-gateway = { path = "crates/cortex-gateway" }
|
||||
cortex-agent = { path = "crates/cortex-agent" }
|
||||
|
||||
Reference in New Issue
Block a user