Whether this memory may be used as evidence that the user (or any
entity it describes) has a permission/role/capability. Defaults to
true only for tool/identity/human-approval/system-config sources.
Whether this memory may be used to personalize responses (tone, prior
preferences, conversation continuity). Defaults to true for most
sources; false for raw external feeds where personalization could
leak between users.
Whether this memory may be cited as a factual claim in generated
output. Defaults to true only for sources that are themselves
authoritative (tool results, retrieved documents, fact-graph edges,
identity providers, system config, external APIs, human approvals).
Optional requiresIf set, the memory must be re-verified (via a fresh tool call /
lookup / human confirmation) within this many milliseconds of its
provenance.lastVerifiedAt before it can be used for the
capabilities above. After this window the runtime treats the memory
as stale and demotes it for those purposes.
What this memory is allowed to be used for, irrespective of how relevant a retrieval marks it. Policy is set at encoding time from the source-type defaults table (DEFAULT_TRUST_POLICY_BY_SOURCE) and may be tightened (never loosened) by downstream callers.
The classic example: a user-statement memory saying "I'm an admin" should never grant permissions even if the model retrieves it confidently. Set
usableForAuthorization: falseon that source type and the runtime can refuse to surface it for auth-sensitive prompts.