v2.45.1
Dashboard Tool-Result Images
Tool results that contain images now render inline in dashboard transcripts instead of being flattened to text. The human-facing view remains independent of model vision support, so images stay visible even when the active model is text-only.
Added
- Generic inline rendering. PNG, JPEG, GIF, and WebP blocks render inside any tool card, not only
read. - Live and recovered parity. Images work through live tool events, refresh, SSE resync, parent sessions, and subagent hydration.
- HTML export parity. Exported transcripts embed sanitized images from built-in and custom tool results.
- Bounded presentation. Large images are constrained in the transcript layout; oversized SSE events continue through the existing resync and HTTP snapshot recovery path.
Security and Reliability
- Uses an exact raster MIME allowlist, rejects SVG and malformed base64, and renders accepted dashboard images only as data URIs.
- Applies the same sanitization to tool-result and message images in HTML exports, closing the prior stored-markup injection surface.
- Adds reducer lifecycle, mixed valid/invalid payload, multiple-image, generic-tool, rendering, export-dispatch, and malicious-input regressions.
Contributor
Contributed by Maximilian Scheurer (@maxscheurer). Thank you, Max.
Implemented in PR 390.