Topic Continuity Signal
Overview
topic_continuity reports whether the live user turn still depends on the
retained conversation history. It produces bounded, typed evidence —
continuation, change, or unknown — that context policies (for example a
history-reset action) can read before they decide anything.
The signal never changes the request. It does not reset, compress, or store history, and it is not decision-referenceable: routing decisions cannot name it in their rules. Every rule declared by the selected recipe is evaluated once per provider-bound request, immediately before the context transformation stage, and the typed results are stored on the request context.
Evaluation is purely lexical and deterministic. No classifier, embedding model, or other inference runs, and identical input always produces an identical result.
Key Advantages
- separates "the user changed topic" from "the evidence is missing or weak", so context policy can act only on positive evidence
- reads the original history captured before RAG and Memory enrichment, so injected content never changes the evidence
- bounded by counted limits (turns, bytes, messages, content blocks, entities) rather than wall-clock time
- content-minimized observability: Router Replay and metrics record classes, reasons, coverage, and counts, never conversation text