# ADR-031 — ASL + TGK Index Separation Status: Accepted Date: 2026-02-21 Decision Owner: Architecture ## Context ASL index/log provide artifact visibility, replay, and tombstone semantics. TGK store provides graph query semantics over TGK edge artifacts. We must decide whether to **merge** ASL and TGK indexes into one unified index structure, or keep them separated with explicit cross-layer invariants. ## Decision We **reject** a merged ASL+TGK index. ASL index/log and TGK index remain **separate layers** with strict invariants that keep them consistent. ## Rationale * ASL index is about **artifact visibility and replay**; TGK index is about **graph query acceleration**. Their update streams and invariants differ. * Keeping them separate preserves clean layering and deterministic replay. * TGK indexes can be rebuilt or swapped without changing ASL semantics. * A merged index risks coupling graph query policies with storage visibility, complicating federation and policy enforcement. ## Invariants (Normative) 1. **Visibility alignment:** TGK indexes MUST only index artifacts visible under ASL log replay at the same `(snapshot_id, log_position)`. 2. **Tombstone enforcement:** TGK indexes MUST respect ASL tombstones and tombstone lifts at their `logseq`. 3. **No new identity:** TGK nodes/edges MUST use ASL `Reference` identities; TGK MUST NOT introduce a distinct object identity scheme. 4. **Deterministic derivation:** TGK index updates MUST be deterministically derived from ASL-admitted records (segments/log). No side-channel writes. 5. **Replay equivalence:** Replaying ASL log + sealed segments MUST yield the same TGK index state (up to encoding) as an online build. 6. **Snapshot consistency:** TGK queries at a snapshot MUST be consistent with ASL `IndexState` for that snapshot. ## Consequences * ASL and TGK index encodings remain separate specs. * Conformance tests for ASL and TGK can evolve independently, with explicit cross-layer checks for the invariants above. * TGK index rebuilds remain possible without touching ASL log/segment formats.