Architecture¶
Ownership¶
Mari provides composable values and algorithms. The host application decides which computations to run, which users can access material, and when to commit.
Mari supplies |
Application supplies |
|---|---|
Immutable source, reference, evidence, and artifact values |
Source credentials and identity mapping |
Parsing, ranking, graph algorithms, and update plans |
Models, embeddings, and domain semantics |
Connector and storage protocols |
HTTP transport, databases, and transactions |
Reference adapters and conformance checks |
Scheduling, retries, capacity, and deployment |
Validation reports and reviewable proposals |
Authorization, approval, and truth policy |
Change propagation¶
source revision → atoms and collection membership → representations
│ │
└──── evidence bindings ────────┤
↓
artifacts and projections
Declare each computation’s consumed aspects. The planner returns reusable, ready, waiting, or blocked outputs. The host executes ready work and atomically stores the output with its receipt, conditional on the input snapshot remaining current. Replanning releases dependent work. Equal output fingerprints can stop propagation after recomputation.
The dependency-update guide covers collection changes, recipe versions, failure handling, and compatibility with specialized refresh APIs. Source availability and authorization remain explicit host inputs.
Integration boundaries¶
Start with company search, then add governed knowledge or conversation knowledge. Replace reference stores through the storage contracts and retain their conformance checks.
Graph tools accept caller-owned IDs and callbacks. Applications define edge semantics, traversal visibility, merge policy, and persistence. Provenance edges record support or derivation. Computational dependencies also include selection rules, model versions, configuration, and other inputs a citation may omit.