ghostlink-core 2.2.2

Core runtime primitives for Ghostlink, including planning, routing, health monitoring, and transport logic for distributed inference workloads.
Documentation
[package]
name = "ghostlink-core"
version = "2.2.2"
edition = "2021"
authors = ["Ryan K Williams"]
description = "Core runtime primitives for Ghostlink, including planning, routing, health monitoring, and transport logic for distributed inference workloads."
homepage = "https://rwilliamspbg-ops.github.io/Ghostlink/"
documentation = "https://rwilliamspbg-ops.github.io/Ghostlink/"
repository = "https://github.com/rwilliamspbg-ops/Ghostlink"
readme = "README.md"
license = "MIT"
keywords = ["networking", "zero-copy", "async", "llm", "inference"]
categories = ["asynchronous", "network-programming"]

# Minimum Supported Rust Version (MSRV) — kept in lockstep with ghost-link,
# which depends on this crate and is released together with it.
rust-version = "1.89.0"

[features]
default = []
rocm = []

[dependencies]
serde = { version = "1.0", features = ["derive"] }
# Zero-copy pinned allocations
pin-utils = "0.1"

# HMAC-based discovery frame authentication
hmac = "0.12"
sha2 = "0.10"
rand = "0.8"
crc32fast = "1.5"

# Error types
thiserror = "2"

# Async runtime (for health monitoring)
tokio = { version = "1", features = ["full"] }

# Terminal UI
ratatui = "0.28"

# Production error handling
anyhow = "1"

# Logging
tracing = "0.1"
tracing-subscriber = "0.3"
libc = "0.2.186"
crossterm = "0.29.0"
arc-swap = "1"

# Auto-tuning cache
serde_json = "1"
dirs-next = "2"

# mDNS peer discovery — alternative to UDP broadcast for networks (VLANs,
# cloud VPCs) that filter broadcast traffic but still carry multicast.
mdns-sd = "0.20"

[target.'cfg(windows)'.dependencies]
# P/E-core (hybrid CPU) detection via GetLogicalProcessorInformationEx.
windows-sys = { version = "0.59", features = [
    "Win32_System_SystemInformation",
    "Win32_Foundation",
] }

[dev-dependencies]
tempfile = "3"
tokio-test = "0.4"
criterion = "0.5"
proptest = "1.4"

[[bench]]
name = "baseline"
path = "../../benches/baseline.rs"
harness = false

[[bench]]
name = "criterion"
path = "../../benches/criterion.rs"
harness = false

[[bench]]
name = "tensor_streaming_fabric"
path = "../../benches/tensor_streaming_fabric.rs"
harness = false