Status
RECOMMENDED — awaiting Vinayak
Options
A relational, B graph DB, C event graph, D ontology KG, E Postgres + AGE, F UNS (section 4)
Trade-offs
One store vs graph ergonomics; interoperability vs speed to build
Recommendation
Option A plus C: relational asset, topology and lot tables plus append-only event tables in L2. Every genealogy and context link carries link_method and link_confidence (Cognite annotation pattern). The four graph shapes in L3 and KR become read-only views over L2.
Why
One store, one backup, one security model (RLS exists in migration 006), local joins with time series. No current question needs graph algorithms. A second store would be a second plant record.
Evidence
L2 migrations 001–017; L3 agentic/graph.py comment against a second store; E29 (Cognite annotations); E30 (AGE as a later path).
Reversible
Yes. Apache AGE (Option E) can be added over the same tables if path queries become painful.
Blocks
Lot and genealogy contract (D2), C05 genealogy, KR plant_context redesign.

Status history

  1. RECOMMENDED since 2026-10-07 · b4db9d4
Page history: last 2 changes
  1. 2026-10-07 docs(research): retire stale research to archive/research-2026-10 with a register ab84821
  2. 2026-10-07 docs(technical): split decision board into DECISIONS.md b4db9d4

Diagram

100%

Search the architecture