Every record across all realms, as a flat read-only snapshot. The persistence layer's evict/flush path iterates this; the naming path never does.
Drop the whole in-memory working set (persistence evict).
Drop the record entirely.
Partial forget — clear one field, keep the record. 'knownAs' nulls
the name (familiar-face-lost-name); a payload field is removed. No-op
when the record doesn't exist.
Upsert what the viewer knows about referent in realm. A new
record stamps firstSeen/lastSeen; an existing one advances
lastSeen (preserving firstSeen) and coalesces: a non-null
update.knownAs raises the name, an absent/null one leaves a
learned name intact. Payload flags merge.
Optionalupdate: BeliefUpdateInstall a hydrated record directly (the persistence hydrate path). Bypasses the upsert/coalesce logic AND the write-through — the record is the stored truth. NOT for consumer use; consumers go through know.
Point-get, O(1). Returns null for an unknown referent. Lazy
liveness-GC: a record whose referent no longer resolves to any
live Stuff is dropped and null returned.
Every record in realm, keyed by referent. Read-only snapshot.
The public surface of BeliefStoreMixin. Dumb CRUD; O(1) point-get on the naming path (no Mongo read — that's the whole point of the in-memory working set).