What it is
A call center manager asks an agentic feature a question that requires touching a batch of call data — “which campaigns had a spike in missed calls last week, and why?” Answering that means scanning call records for a date range, cross-referencing transcripts, and checking for patterns across dozens or hundreds of calls. That takes long enough that a spinner leaves the manager with no idea whether the system is working, stuck, or about to fail. Stream of thought replaces the spinner with a narrated list of the real steps the system is taking, in the order it takes them: scanning call records, 6/2–6/8 → cross-referencing missed-call transcripts → checking tag and keyword patterns → drafting summary. Each step names something specific and checkable — a date range, a count, a data source — not a mood (“thinking”) or a placeholder (“processing”). This is a Governor, not decoration. The steps are the only part of the run a human can inspect before the final answer lands, which makes them the first and cheapest place a wrong turn gets caught. A manager who knows there were 58 missed calls last week, not 42, can catch that mismatch the moment a step names the wrong number — before it propagates into a confident final answer. Stream of thought composes with two other pages in this section: it shows what the system is doing; Verification lets the user check a specific claim in the finished output against its source; and Caveat states how sure the finished output is. None of the three substitute for each other.Choose this when / choose something else when
Agency tier
Suggests. As documented here, stream of thought narrates the process behind a search or analysis answer the user still has to act on — it performs no write, sends nothing, and changes no record on its own. That would have to change if a narrated run also takes actions as it goes (tagging calls, updating a record) rather than only reading and summarizing them. A step list that mixes “I read this” narration with “I changed this” narration needs each action’s own tier stated and its own recourse — see Agency tier — not just a line item in a progress narration. Escalating past Suggests here is a decision to record, not something this pattern should absorb quietly.Anatomy
Outcome states
Disclosure & recourse
- Does the user know this is AI? Yes — the identifier and the first step render together, before any content is shown, not only once an answer appears.
- What did it use? Named per step, literally — each step states the data category it is touching (call records, transcripts, tags) rather than a generic verb.
- How sure is it? Not applicable here by design. Stream of thought narrates completion of steps, not confidence in an answer; a run’s confidence is Caveat’s job, not this pattern’s.
- How does the user check it? By comparing the named counts, dates, and sources in each step against what they already know, while the run is still visible — and, once the answer exists, through Verification for specific claims in it.
- How does the user correct it? Not within this pattern. Stream of thought has no edit surface of its own — noticing a wrong step means canceling and re-running with a refined input; nothing here persists a correction.
- How does the user get out? Cancel stops the run at any point, and the user is never blocked from doing the same lookup manually in Invoca’s existing reporting while the run is in progress or after canceling it.
Reference
No model, prompt, tool schema, latency budget, or cost has been defined for this pattern yet. This is fact register — nothing below is invented to fill the gap.Evaluation
Not evaluated. No eval set exists for step accuracy, step relevance, or narration honesty.Content
Accessibility
- The live region announces on step completion, using
aria-live="polite"— never per token or per character. Token-level announcement is unusable with a screen reader and drowns the update that actually matters. - An indeterminate wait inside a single step (no known duration) needs a non-visual equivalent to a spinner — a periodic textual update (“still checking transcripts”), not silence.
- If any step marks itself uncertain, that is text, never color alone — see TITAN-COLOR-03.
- Focus stays on the control that triggered the run; it does not jump on every step change. When the step list is replaced by the final answer, the live region announces completion and focus moves to the answer’s heading.
Constraints
Divergences
Not applicable. Nothing is shipped yet to diverge from.Gaps
- Whether steps come from the model’s own internal reasoning trace or from a separately instrumented pipeline log is undecided — this determines whether TITAN-SOT-07 is even enforceable, since a model that produces no inspectable intermediate state has no real steps to narrate.
- Whether this pattern applies to Signal AI’s existing single-call transcript summary at all is undecided — a single call likely resolves fast enough that narrating steps may not be warranted; see Skeleton as the fast-path alternative above.
- No decision on how long a step list stays retrievable after the session that produced it ends.
- No decision on whether canceling a run mid-stream affects any future cost or usage budget.