Skip to content

Internals (RFCs)

NamiDB’s design lives in 18 (and counting) Request-For-Comments documents. Each captures the why of a major engine decision — the context, the alternatives considered, and the rationale.

For a high-level orientation, start with RFC-001 — Storage engine and RFC-002 — SST format.

Storage engine

RFCTopic
001Storage engine
002SST format
003Read-path ranged reads
018CSR adjacency cache
019NodeView cache
020Edge SST caches

Query language

RFCTopic
004Cypher subset
008Logical plan IR
009Write clauses

Optimizer

RFCTopic
010Cost-based optimizer
011Predicate pushdown
012Hash join
013Parquet predicate pushdown
014Hash semi-join
015Projection pushdown
016Join reorder

Executor

RFCTopic
017Factorization

Read fan-out (in flight)

RFCTopic
021Read-path mutex removal (in flight on main)

How RFCs work

For any change bigger than a few-line refactor, the contributor writes an RFC, opens a Draft PR with only the RFC, and gets feedback before writing any code. See RFC process for the full workflow.

The canonical source is docs/rfc/ in the engine repo. The pages in this section are mirrors with a docs-friendly nav.