rememberText

open fun rememberText(text: String, sourceId: String, user: <Error class: unknown class>, additionalGrounding: List<String> = emptyList(), perspective: ExtractionPerspective? = null, mintNewEntities: Boolean? = null)

Extract propositions from raw text and persist them.

Parameters

additionalGrounding

extra source-record ids to ground the resulting propositions in, on top of sourceId. Ids that resolve to a stored entity become (:Proposition)-[:GROUNDED_IN]->(:entity) edges — e.g. a chat-recovery answer synthesised from email:<threadId> and a connected-service record can attribute back to both. Empty (default) preserves prior behaviour.

perspective

optional per-call extraction perspective. null (default) leaves the extractor's own perspective in force — zero behaviour change. A caller can pass e.g. ExtractionPerspective.NON_USER_RELATIONSHIPS to opt this one source into mining non-user relationships.

mintNewEntities

per-call override for whether unmatched mentions may be persisted as NEW entities. null (default) uses the extractor instance's default; see SourceAnalysisContext.mintNewEntities.

This is the signature that existed before requests, and it stays its own declaration. Growing it with a defaulted parameter would break subclasses: @JvmOverloads emits every reduced-arity overload as final, so folding the new argument into this method would have turned the six-argument form — the one a subclass overrides — into a final bridge. Declaring the two shapes separately keeps both open. Unintercepted, every call lands on the seven-argument form below, so overriding that one sees everything; overriding this one sees everything a subclass written before requests used to see, including file ingestion, which still routes through here.


open fun rememberText(text: String, sourceId: String, user: <Error class: unknown class>, additionalGrounding: List<String>, perspective: ExtractionPerspective?, mintNewEntities: Boolean?, request: ExtractionRequest)

Extract propositions from raw text on the terms the request sets — the source it was read from, the revision of that source, the content profile it runs under, the extraction run it belongs to.

Every other entry point funnels here, so this is the one method to override to see every call. It is also where a new extraction dimension shows up: it arrives as a field on ExtractionRequest and this signature stays as it is.

sourceId keeps its old meaning — the exact caller-supplied chunk and grounding identifier. DICE cannot read source identity or revision coverage out of an untyped sourceId or out of additionalGrounding, which is why the request carries them explicitly.