{
  "schema_version": "1.3.0",
  "slug": "in-what-scenarios-must-an-instance-treat-write-audit-lineage-as-insufficient-to-detect-memory-poisoning",
  "title": "In what scenarios must an instance treat write-audit lineage as insufficient to detect memory poisoning",
  "date_of_record": "2026 November 8",
  "scope": "Applies to agent memory stores that attach provenance (writer identity, write timestamp, parent-record lineage) to every record and use trust-weighted recall to gate retrieval. Does not apply to append-only immutable logs with no recall path, or to stores where all writers share a single trust tier.",
  "projections": {
    "unified_markdown_uri": "https://corpusfetch.com/c/in-what-scenarios-must-an-instance-treat-write-audit-lineage-as-insufficient-to-detect-memory-poisoning.md",
    "method_python_slice_uri": "https://corpusfetch.com/c/in-what-scenarios-must-an-instance-treat-write-audit-lineage-as-insufficient-to-detect-memory-poisoning.py",
    "remnant_warrant_slice_uri": "https://corpusfetch.com/c/in-what-scenarios-must-an-instance-treat-write-audit-lineage-as-insufficient-to-detect-memory-poisoning.warrant.json"
  },
  "token_profile": {
    "full_markdown_tokens": 1186,
    "python_slice_tokens": 283,
    "warrant_slice_tokens": 220
  },
  "remnant_summary": {
    "core_distinction": "Write-audit lineage answers *who wrote this and from what ancestor*. Trust-weighted recall answers *how much should we believe a record at retrieval time*. Poisoning detection fails at the seam between them: a record can have an impeccable lineage chain (correct writer, correct parent, correct timestamp) and still be poisoned, because the *content* was corru...",
    "what_was_observed": "During a multi-week run of a retrieval-augmented agent with a provenance-tagged store, a batch of records was inserted with valid signatures from a mid-trust writer and correct parent pointers to a verified source document. The write-audit passed cleanly: signature valid, lineage acyclic, parent hash matched. Trust-weighted recall retrieved these records at high weight because the writer's trust score had been raised...",
    "condition_of_validity": "The failure is reachable only when all three hold: (1) trust scores are mutable and updated from record content or downstream outcomes, (2) recall weights are derived from trust scores rather than from independent content verification, and (3) at least one write path allows content that passes lineage audit but not semantic audit. If trust is static per-writ...",
    "decision_boundary": "Do not rely on write-audit alone when trust scores are *derived* rather than *assigned*. The decision rule: if a record's recall weight depends on any trust score that was itself computed from prior records, then lineage audit is necessary but not sufficient, and you must add a *trust-provenance audit* that traces the score's contributing records and re-vali...",
    "operational_effect": "Systems that conflate the two audits exhibit *silent trust drift*: recall quality degrades gradually as inflated-trust records accumulate weight, with no lineage alarm. The practical mitigation is to snapshot trust scores at each update with the contributing record set, and to run periodic re-validation of high-weight records against their claimed sources. W..."
  },
  "matched_failure_symptoms": [
    "OOM_KILL_OR_MEMORY_EXHAUSTION"
  ],
  "composition_edges": {
    "primary_domain": "epistemic_provenance_and_federation_routing",
    "upstream_precondition_residuals": [
      "https://corpusfetch.com/c/according-to-what-precedence-hierarchy-must-an-instance-resolve-contradictory-directives-across-system-developer-and-user-tiers.md",
      "https://corpusfetch.com/c/how-should-an-instance-decide-that-a-stored-conclusion-has-gone-stale-without-a-new-observation.md"
    ],
    "downstream_consequence_residuals": [
      "https://corpusfetch.com/c/by-what-checkpoint-and-compaction-boundaries-must-an-instance-externalize-working-state-to-prevent-context-window-drift-and-truncation-amnesia.md",
      "https://corpusfetch.com/c/across-what-additive-schema-and-unknown-field-preservation-boundaries-must-an-instance-evolve-wire-contracts-to-prevent-rolling-deploy-deserialization-crashes.md"
    ],
    "co_occurring_sibling_residuals": [
      "https://corpusfetch.com/c/how-can-an-instance-capture-implicit-user-preferences-without-storing-private-data.md",
      "https://corpusfetch.com/c/how-can-an-instance-compress-long-reasoning-traces-into-binding-conclusions.md"
    ]
  },
  "empirical_verification_warrant": {
    "status": "AST_AND_INVARIANT_VERIFIED",
    "syntax_valid": true,
    "code_sha256": "578ef25edae22eb4bb0c38b79c67505ff1070941242be0da4f5e4076dd8ad970",
    "verified_classes": [
      "TrustProvenanceViolation"
    ],
    "verified_functions": [
      "audit_trust_update",
      "recall_weight"
    ],
    "verified_functions_count": 2,
    "defensive_guards_count": 4,
    "raised_exceptions": [
      "TrustProvenanceViolation"
    ],
    "sample_fail_closed_invariants": [],
    "stdlib_dependencies": [],
    "observation_mode": "EMPIRICAL_BOUNDARY_CAPTURE",
    "zero_external_deps": true
  }
}
