EKOS — Enterprise Knowledge Operating System

The compiler compiled itself.
Every number below is real.

No fixture, no staged repo — EKOS's own ~50-crate, multi-language codebase, run through the full build → recover → resolve → compile → commit pipeline, then documented, searched, and queried over MCP, with every stage's wall time, CPU, and memory measured by /usr/bin/time -v and its own RFC 0114 query log — not estimated, not averaged.

600 real files 5,757 objects 9,247 relationships 3 real bugs found & fixed, live
§ 01 / the pipeline, timed
1 minute 43 seconds, start to finish

Five stages. One dominates — and it's the one doing real I/O, not real work.

StageWallSharePeak RSSNotes
build10.3s
65 MB600 files, 8 connectors
recover5.7s
102 MB8 analyzer passes
resolve --force0.6s
56 MB5,597 candidates, 3 real conflicts
compile2.3s
89 MB6,107 diagnostics
commit1m 24.4s
138 MBI/O-bound — 100k+ voluntary context switches

commit alone is 82% of total wall time — and it's 57% CPU, not 95%+ like every other stage. It's waiting on disk, not computing.

§ 02 / storage
≈2.8 KB per object, evidence included

16 MB on disk for 5,757 objects, 9,247 relationships, 2,605 pieces of evidence.

16 MB
total workspace state
7.1 MB
ledger segments
5.0 MB
artifact cache
664 KB
tantivy search index
§ 03 / documentation generation
Three layouts, one command each

9,547 real pages — and a real bug, found and fixed mid-demo.

--layoutWallOutput
curated6.1s4 top-level pages + 3,172 entity pages
solution-architect2.9s3 files, 5 real findings
objects55.1s6,368 pages + 5,696 neighborhood SVGs

Found live: --prose --layout curated did nothing

Byte-identical output with or without the flag — no warning, no token estimate, no confirmation prompt. generate_curated() never took a prose parameter at all. Fixed the same session: the combination now fails clearly instead of silently pretending to honor it.

§ 04 / search & MCP capability
Every read tool, one live session

10 tools finished in under 700ms. One took 46.8 seconds.

query-log.jsonl — real, unedited
ekos_search        8ms    50 hits
ekos_state        25ms     1 object
ekos_dependents   37ms    12 edges
ekos_impact      124ms     3 hops
ekos_status       22ms
ekos_diff      46847ms  16,036 changed
architecture_eval 627ms   49 crates
architecture_eval   0ms   (cache hit)

ekos_diff with no to bound scans to "now" — 16,036 changed entries, 46.8 seconds, 60–2,000× slower than every other call. And RFC 0114's result cache is live and correct on real data: the identical ekos_architecture_evaluate call, repeated, comes back in 0ms instead of 627ms.

§ 05 / LLM & token usage
Local Ollama, measured from outside EKOS

A real question truncated 2,420 tokens of its own grounding context before generation even started.

ollama service log — real, unedited
$ ekos ask "What does the redaction
  module do?"

# 20.8s cold model load, then:
truncating input prompt
  limit=4096 prompt=6516 keep=25
  new=4096

# 1m 41s wall total; the answer
# carried no valid citation block

EKOS's own LlmResponse type already captures real input_tokens/output_tokens per call — nothing downstream logs or surfaces them. Every number on this slide came from ollama's own service log and a direct API probe (27 prompt tokens, 48 completion tokens, 7.3s), not from EKOS's own output.

§ 06 / dogfooding, honestly
Three real bugs, found and fixed the same session this benchmark ran

Running the real thing against itself is how these got found.

CI flake — a real kernel-level flock race

A test failed in CI but passed locally 200/200 times run alone; reproduced reliably under constrained parallelism, traced with acquire/release timestamps, fixed with a short bounded retry in the ledger's write-lock. 19/19 stress runs clean afterward vs. a ~25% failure rate before.

Evidence citations leaked absolute filesystem paths

Rehearsing a real demo, a citation for a plain source file rendered a full /tmp/scratch-.../src/error.rs path instead of src/error.rs. Root-caused to one field in one function; fixed; re-verified live against a real nested workspace, down to the exact reported artifact.

docs generate --prose silently ignored for one layout

Covered in §03 — found running the exact demo this deck is about.

Run it yourself

Point the same five commands at your own repository.

terminal
# compile once
$ ekos build && ekos recover && ekos resolve && ekos compile && ekos commit

# generate real documentation, zero LLM, zero cost
$ ekos docs generate --layout curated --output doc

# serve it to any MCP client over stdio
$ ekos mcp serve --workspace .
EKOS · self-hosted end-to-end benchmark · every number on this page is real, one run each, not averaged · see the generated documentation · github.com/alexeyban/EKOS