symfonic.memory.backends.mongo_native_erased¶
mongo_native_erased ¶
Which native owners a Mongo v1 forget erased, recorded durably (CORE-171).
A forget upserts one document per erased scope, keyed by that scope's canonical storage key, in the forget's own guarded transaction: it commits with the erasure or not at all. A document is only ever advanced, never removed. The positional migration reads these documents inside its own guarded transaction of the same tenant, so a forget either committed before the plan, and quarantines the v0 rows that would move under it, or waits on the tenant guard and erases them after the re-key.
An Agent invocation reads the same documents once, when its journal row is claimed, and every WRITE and FLUSH compares them again inside the tenant guard's transaction: a forget of the turn's scope or an ancestor committed after admission refuses the publication instead of resurrecting the scope.
erased
async
¶
The targets whose own key or an ancestor key a forget erased.
Source code in src/symfonic/memory/backends/mongo_native_erased.py
record
async
¶
Advance scope's erase document inside the forget's transaction.
Source code in src/symfonic/memory/backends/mongo_native_erased.py
require_admitted
async
¶
Refuse a publication whose admission witness a later forget advanced.
Runs inside the publication's tenant-guarded transaction, so a forget either committed before this read and refuses it, or waits on the guard.
Source code in src/symfonic/memory/backends/mongo_native_erased.py
witness
async
¶
Every covering key's erase generation for scope now; absent is 0.