The Engineering Foundations of EAK
How we solved the impedance mismatch between stochastic artificial intelligence and deterministic physics-governed electronics hardware design.
Compile-Time Enforced Clean Architecture
Dependency edges point strictly inward. The kernel (eak-runtime) never depends on an adapter crate.
In conventional CAD applications, user interface frameworks, file parsers, and physics simulations are deeply entangled. A change in the UI layer frequently ripples through calculation engines.
In Electronics Agent Kit, Robert C. Martin’s concentric clean architecture is strictly guaranteed at compile time via the Rust Cargo workspace configuration:
- Ring 0 — Kernel Core: eak-units, eak-domain, eak-ports. Holds physical unit types, domain invariants, and port traits. Zero external dependencies.
- Ring 1 — Orchestration & FSM: eak-runtime, eak-engines, eak-compiler. Executes deterministic fold loops, phase finite state machines, and capability validation.
- Ring 2 — Adapters & Peripherals: eak-reasoning, eak-kicad, eak-store, Tauri desktop. Pluggable peripherals that adapt external tools into the kernel.
[workspace]
resolver = "2"
members = ["crates/*"]
# The Dependency Rule:
# Dependencies point ONLY inward toward eak-runtime.
# Cargo forbids dependency cycles, so the concentric
# ring structure is enforced at compile time.
eak-runtime ──► eak-ports ──► eak-domain ──► eak-units
▲
│ (implements port traits)
┌────┴───────────────────────────┐
│ eak-reasoning (LLM Providers) │
│ eak-kicad (CAD Interop) │
│ eak-store (Append-Only SQLite) │
│ eak-desktop (Tauri v2 Spine) │
└────────────────────────────────┘Event-Sourced Hardware State & Replayability
Every design fact is an immutable event with strict cryptographic lineage and origin provenance.
Immutable Event Stream
Every pin connection, component substitution, and constraint assertion is recorded sequentially into an append-only log. State is never mutated in place.
Provenance Lineage
Every committed fact is tagged with its provenance: human engineer, datasheet extraction, AI synthesis, or physical simulation derivation.
Deterministic State Fold
Applying the event log sequentially through pure reducer functions yields identical engineering state on any machine, eliminating environment drift.
The Multi-Provider Isolation Seam
EAK stays neutral across LLM vendors while protecting physical hardware from ungrounded token predictions.
Provider-Agnostic Interface
The `eak-reasoning` crate defines generic request/response traits. EAK connects seamlessly to NVIDIA NIM microservices, OpenAI models, Anthropic Claude, or local offline LLMs (via Ollama or vLLM).
Switching model providers does not alter the core kernel or any physical invariant checker.
Why Seams are Crucial in Electronics
In web coding, a hallucinated import triggers an error stack trace. In electronics design, a hallucinated pin connection or inverted polarity capacitor causes physical smoke, destroyed ICs, and thousand-dollar board re-spins.
By placing all LLM suggestions behind invariant test harnesses, EAK extracts the intelligence of foundation models while maintaining zero-tolerance physical safety.