Provenance Scanning Source Revision Queries
The three source-revision finders answered by reading the context and filtering loaded provenance in memory.
Only a store whose context read carries every provenance entry may implement this. That is the condition the whole capability turns on: the in-memory and JSON-file stores keep entries on the proposition itself, so scanning them is exact. A backend with a lean context read implements SourceRevisionQueryCapable directly and pushes each predicate into its own query language.
Inheritors
Properties
Whether this particular instance can actually answer these queries. Implementing the interface is a type-level promise; this is the runtime truth. A decorator that forwards to a backend it only discovers at construction time reports here whether the backend it got can answer. Callers check this before trusting an empty result.
Functions
Append provenance to a proposition (deduplicated); never removes existing entries.
Remove all provenance from a proposition.
Get the total count of propositions.
Get all propositions.
Find propositions in the given context.
Java-friendly variant of findByContextId that accepts a plain string.
Find all propositions that mention a specific entity.
Find all propositions grounded by a specific chunk.
Find a proposition by its ID.
Find propositions at or above the specified abstraction level. Level 0 = raw observations, 1+ = abstractions.
Find propositions in contextId with evidence from any revision of sourceKey.
Find propositions in contextId with evidence from exactly ref's source key and revision.
Find all propositions with the given status.
All pinned propositions in contextId.
Find propositions in contextId with revisionless evidence whose locator key equals locator's key.
Pin a proposition so it resists reclamation: pinned propositions are skipped by the decay collector and the sweep policy, are decay-exempt in the default status policy, and are not auto-retired by contradiction resolution.
The provenance entries of a proposition, or an empty list if it has none or does not exist.
Query propositions using a PropositionQuery specification.
Save a proposition. If a proposition with the same ID exists, it will be replaced.
Save multiple propositions.
Save multiple propositions and report which stored proposition each one landed on.
Authoritatively set a proposition's provenance to exactly entries, removing any not listed.
Refresh Proposition.lastAccessed to now for ids — the read-side reinforcement that lets a DECAYING proposition's decay anchor (see Proposition.effectiveConfidenceAt) track actual use rather than only content edits. Best-effort and silent about unknown ids (a stale eager id that has since been deleted is not an error).
Clear a proposition's pin, returning it to normal reclamation.