The handler:ex-animate references ~examples/anim-result and ~docs/oob-code
which aren't loaded by the test runner. Added stub defcomps. Also fixed the
assertion: sx-swap returns a parsed tree (list), not a string, so contains?
was checking list membership instead of substring. Use str + string-contains?.
2522 passed, 0 failed.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>