-
Notifications
You must be signed in to change notification settings - Fork 0
Data Model
Hypergraph of linked facts with data and metadata
-
User
-
tenant owning things that are happening, resource root
-
logical context owner
-
tx time authority
-
TX time
-
logical time, causal, relative to other TX times, usually serialized at physical_viewpoints
-
may contain links to ptime but this is hard to do and better done in logical context
-
Space/Universe/Provider
-
managed or unmanaged object provider/locator/sync channel
-
logical storage too
-
provider of rules for the logical context
-
side effect handler
-
Physical Viewpoint
-
representation/reflection of an inference agent/system performing the derivations, required to reason about performance and resources
-
Logical Context
-
user-chosen subset/viewpoint of the universe containing inference traits/flavors
-
inference rules, coercion/canonicalization rules (always logical, don't belong to universe apart from physical_viewpoint), construction/deconstruction rules
-
acquisition keys like precision or source trust
-
target context eg criteria of what data we choose to use/disclose, permissions belong here
-
logical_viewpoint eg the task that we're currently solving, or just session.
-
Event Locator
-
physical time, relative to universe, stuff like GPS coordinates also belongs here; not strictly mandatory but really useful
-
Domain Data
-
may overlap with Event Locator, all other data.
We totally need to support both state-based and event-based sync, even given the complications that necessarily arise.
State-based sync happens ONLY between managed + unmanaged objects, syncing unmanaged + unmanaged is undecidable.