The make-raw-html wrapper in eval-list was host-specific: it fixed server-side HTML escaping but broke the client DOM adapter (render-expr returns DOM nodes, not strings). The raw-html wrapping belongs in the host (async_eval_ref.py line 94-101), not the spec. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>