Message timestamps render time-only; the full localized date and time was
only exposed via aria-label. Wrap the <time> element in the shared Tooltip so
hover and keyboard focus reveal the same full label, without adding a
duplicate aria-describedby announcement. Transcript render tests now go
through a TooltipProvider harness, matching App's production provider.
Co-authored-by: Neil <4138956+nwparker@users.noreply.github.com>
* fix(chat): preserve transcript source order across history windows
* test(chat): use template literal for mobile transcript fixture
* test(chat): place composed transcript contracts across project boundaries
* test(chat): move reader-to-phone contract across project boundaries
* test(chat): reuse transcript input setup and caller contracts
* test(chat): align mobile recordings with source-order capability
* test(chat): scope phone transforms and await history snapshot