Skip to main content

Module resolver

Module resolver 

Source
Expand description

As-of query resolver — implements temporal-model.md § 7 read semantics over the pipeline’s in-memory record history.

Query shapes (§ 7.1 – 7.4) collapse into a single bi-temporal form:

  • (as_of, as_committed) = (now, now) — current state (§ 7.1).
  • (T, now) — as-of-valid-time (§ 7.2).
  • (now, T_c) — transaction-time snapshot (§ 7.3).
  • (T, T_c) — retroactive-correction-aware read (§ 7.4).

The resolver is a pure projection over Pipeline::semantic_records / Pipeline::procedural_records plus the supersession DAG. It does not mutate the pipeline; multiple readers can call it concurrently against an Arc<Pipeline> once that bound lands.

Scope (6.4): Semantic and Procedural as-of queries. Episodic queries remain out of scope for the temporal-model graduation. Inferential resolution (§ 5.4) was added in Phase 3.1 of the prime-time roadmap — see resolve_inferential.

Structs§

TemporalQuery
Bi-temporal query descriptor. Both fields default to None, which means “use the pipeline’s current commit watermark” — so an unspecified query is a current-state read.

Functions§

resolve_inferential
Resolve the currently-authoritative Inferential memory for (s, p) under the temporal query, or None if no Inferential matches. Mirrors resolve_semantic in shape and semantics — per temporal-model.md § 5.4 an Inferential re-derivation with the same (s, p) and a later valid_at supersedes the prior (same rule as Semantic § 5.1).
resolve_procedural
Resolve the currently-authoritative Procedural memory for rule_id under the temporal query. Returns None if no Procedural with that rule is authoritative at the requested bi-temporal point.
resolve_semantic
Resolve the currently-authoritative Semantic memory for (s, p) under the temporal query, or None if no Semantic memory matches.