Context
Temporarily pin Microsoft.UI.Reactor and Microsoft.UI.Reactor.Advanced to 0.1.0-preview.12 to mitigate the release-blocking chat session-switch crashes reported in #1421 and #1419. The identified trigger is the ElementFactory eviction/lifetime change introduced in preview.13: microsoft/microsoft-ui-reactor@8ee940c. The underlying WinUI defect is microsoft/microsoft-ui-xaml#11865: ItemsView retains a pending bring-into-view target after that target is collapsed, leading to E_INVALIDARG.
This reverses the dependency upgrades in #1376 (build(deps): upgrade Microsoft.UI.Reactor to 0.1.0-preview.14) and #1400 (fix(chat): prevent bubble text truncation), not unrelated improvements in those PRs.
Why this workaround
#1407 (fix(chat): work around WinUI session-switch crash) avoided the crash in reported tests, but Barbara's 240 mixed-height message scenario stopped near message 233. The bottom extent changes as virtualized rows render, so scrolling to the current extent does not guarantee reaching the final message. That is also a release blocker. Preserve the existing row-targeted scrolling rather than adopting that workaround.
Preview.15 included microsoft/microsoft-ui-reactor#1197 (Fix Markdown list content wrapping). While pinned to preview.12, use the public MarkdownOptions.ListItem callback to replace the default horizontal list-row stack with an Auto-marker/Star-content Grid. Preserve the parser-produced marker, content, spacing, nesting and inline formatting rather than flattening Markdown or imposing fixed widths.
Retirement gates
Until these gates pass, do not remove the compatibility workaround or automatically advance Reactor past preview.12.
Context
Temporarily pin Microsoft.UI.Reactor and Microsoft.UI.Reactor.Advanced to 0.1.0-preview.12 to mitigate the release-blocking chat session-switch crashes reported in #1421 and #1419. The identified trigger is the ElementFactory eviction/lifetime change introduced in preview.13: microsoft/microsoft-ui-reactor@8ee940c. The underlying WinUI defect is microsoft/microsoft-ui-xaml#11865: ItemsView retains a pending bring-into-view target after that target is collapsed, leading to E_INVALIDARG.
This reverses the dependency upgrades in #1376 (build(deps): upgrade Microsoft.UI.Reactor to 0.1.0-preview.14) and #1400 (fix(chat): prevent bubble text truncation), not unrelated improvements in those PRs.
Why this workaround
#1407 (fix(chat): work around WinUI session-switch crash) avoided the crash in reported tests, but Barbara's 240 mixed-height message scenario stopped near message 233. The bottom extent changes as virtualized rows render, so scrolling to the current extent does not guarantee reaching the final message. That is also a release blocker. Preserve the existing row-targeted scrolling rather than adopting that workaround.
Preview.15 included microsoft/microsoft-ui-reactor#1197 (Fix Markdown list content wrapping). While pinned to preview.12, use the public MarkdownOptions.ListItem callback to replace the default horizontal list-row stack with an Auto-marker/Star-content Grid. Preserve the parser-produced marker, content, spacing, nesting and inline formatting rather than flattening Markdown or imposing fixed widths.
Retirement gates
Until these gates pass, do not remove the compatibility workaround or automatically advance Reactor past preview.12.