Deep dives

Knowledge graph

Entities, bitemporal facts, and links: how Unison stores what is true, when it became true, and how knowledge connects.

Underneath the document tier, Unison maintains a knowledge graph: entities (people, systems, projects) carrying bitemporal facts, connected by links.

Bitemporal facts

Every fact records two times: when it became true (validFrom/validTo) and when the brain learned it. Corrections don't overwrite - they supersede, preserving the chain. Invalidation is soft (validTo = now). This buys two things teams actually need:

  • Time-travel: asOf on reads answers "what did we believe on May 1," which is how you debug a decision made with old information.
  • Honest conflict handling: when two agents record contradictory facts, the contradiction is visible and resolvable - not silently last-write-wins.

Working with the graph

unison entity resolve "payments service"        # find the entity
unison fact ls --entity <id>                    # current facts
unison timeline <id> --from 2026-05-01          # what changed, when
unison fact add <id> depends_on "Postgres 17" --confidence 0.9

Dedup runs continuously; ambiguous entity merges land in a review queue (unison review ls) where a human or admin agent rules merge/distinct - with undo.

On this page