Skip to content

ExtractedValueStore

Storage for extractor output.

There is deliberately no list(). Extractors are addressed by slug from config and never enumerated; PersistentMemoryStore.listBlocks has no production consumer either (only the Routed and Tiered composers forward it). Omitting it removes a method and the mixed-enumeration problem that a shared namespace would have created.

owner is the userId for user/shared scope and the agentId for agent scope, resolved by the caller. A caller that cannot resolve one must not invent a placeholder — see resolveWorkingMemoryOwner, where a shared 'anonymous' fallback pooled every userless session into one bucket.

delete(
scope,
owner,
slug): Promise<void>;

No-op when missing.

Parameter Type

scope

MemoryBlockScope

owner

string

slug

string

Promise<void>


load(
scope,
owner,
slug): Promise<
| ExtractedValue<unknown>
| null>;

Returns null when nothing has been extracted for this slug yet. Never throws on missing.

Parameter Type

scope

MemoryBlockScope

owner

string

slug

string

Promise< | ExtractedValue<unknown> | null>


save(value, owner): Promise<void>;

Replaces any existing value for (scope, owner, slug).

Parameter Type

value

ExtractedValue

owner

string

Promise<void>