[EPIC] Epistemic memory — evidence classes, provenance, contradictions, and truth maintenance #338

Open
opened 2026-09-08 02:03:34 +00:00 by nsaspy · 0 comments
Owner

Parent architecture: #624
Depends on: #131 principal-scoped private state; integrates with #51 context management, #627 branchable worlds and #630 symbolic observations.

Goal

Replace flat things Zara remembers semantics with an explicit epistemic state model that distinguishes what the user asserted, what Zara observed, what was externally verified, what was inferred, and what is merely speculative.

Evidence classes

Research/version a closed starting vocabulary equivalent to:

  • user_asserted;
  • observed;
  • external_verified;
  • derived;
  • inferred;
  • speculative;
  • stale;
  • contradicted.

Every proposition needs provenance, source/event identity, principal/world scope, confidence/evidence metadata where appropriate, timestamps/freshness policy, and derivation dependencies.

Core invariant

Inference never silently becomes fact. A model statement, detector output or derived proposition retains its evidence class until an explicit transition supported by evidence/policy occurs.

Contradictory propositions may coexist while unresolved. The system must not silently pick whichever embedding/vector result appeared first.

Truth maintenance

Implement a bounded truth-maintenance/dependency mechanism so:

  • derived propositions know the premises they depend on;
  • retracting/invalidating a premise marks dependent conclusions stale/retracted according to policy;
  • new contradictory evidence can be represented without data loss;
  • external verification can upgrade evidence without rewriting history;
  • hypothetical-world facts from #627 remain scoped to that branch;
  • expired observations from #630 do not remain current forever.

Memory vs context

#51 remains context assembly owner. This epic owns durable proposition/evidence semantics. Context retrieval projects relevant propositions with their epistemic status; it does not flatten everything into unqualified prose.

Model boundary

LLMs may propose candidate propositions/relations but cannot self-certify them as user_asserted, observed, or external_verified. Store the source class structurally.

Tests

Cover contradictions, retractions, stale external facts, derived dependency invalidation, user correction, model hallucinated candidate, external verification, branch isolation, sensor observations, duplicate evidence, restart/migration, vector retrieval preserving evidence metadata and cross-principal isolation.

Acceptance

When Zara says or acts on a remembered proposition, the system can answer how do you know that? with its evidence/provenance chain and can represent uncertainty/contradiction without silently converting inference into personal fact.

Parent architecture: #624 Depends on: #131 principal-scoped private state; integrates with #51 context management, #627 branchable worlds and #630 symbolic observations. ## Goal Replace flat `things Zara remembers` semantics with an explicit **epistemic state model** that distinguishes what the user asserted, what Zara observed, what was externally verified, what was inferred, and what is merely speculative. ## Evidence classes Research/version a closed starting vocabulary equivalent to: - `user_asserted`; - `observed`; - `external_verified`; - `derived`; - `inferred`; - `speculative`; - `stale`; - `contradicted`. Every proposition needs provenance, source/event identity, principal/world scope, confidence/evidence metadata where appropriate, timestamps/freshness policy, and derivation dependencies. ## Core invariant **Inference never silently becomes fact.** A model statement, detector output or derived proposition retains its evidence class until an explicit transition supported by evidence/policy occurs. Contradictory propositions may coexist while unresolved. The system must not silently pick whichever embedding/vector result appeared first. ## Truth maintenance Implement a bounded truth-maintenance/dependency mechanism so: - derived propositions know the premises they depend on; - retracting/invalidating a premise marks dependent conclusions stale/retracted according to policy; - new contradictory evidence can be represented without data loss; - external verification can upgrade evidence without rewriting history; - hypothetical-world facts from #627 remain scoped to that branch; - expired observations from #630 do not remain current forever. ## Memory vs context #51 remains context assembly owner. This epic owns durable proposition/evidence semantics. Context retrieval projects relevant propositions with their epistemic status; it does not flatten everything into unqualified prose. ## Model boundary LLMs may propose candidate propositions/relations but cannot self-certify them as `user_asserted`, `observed`, or `external_verified`. Store the source class structurally. ## Tests Cover contradictions, retractions, stale external facts, derived dependency invalidation, user correction, model hallucinated candidate, external verification, branch isolation, sensor observations, duplicate evidence, restart/migration, vector retrieval preserving evidence metadata and cross-principal isolation. ## Acceptance When Zara says or acts on a remembered proposition, the system can answer `how do you know that?` with its evidence/provenance chain and can represent uncertainty/contradiction without silently converting inference into personal fact.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/zara#338
No description provided.