fn finish_after_join(
job: &Job,
asr: String,
text: String,
stages: Stages,
truncated: bool,
) -> JobOutcomeExpand description
The answer a finished join amounts to.
Separated from finish_job because the join’s normalize pass is the
one stretch no early read covers: the read below is what turns a cancel
that landed inside it into Cancelled rather than the words the pass
rewrote. The routing from finish_job into here is pinned by
inspection, not by a test: reaching this read past a live first read
needs a cancel inside the normalizer call, and
crate::normalize::Normalizer is a loaded GGUF behind a LlamaModel
with no weightless double.