dom-on wraps Lambda event handlers in JS functions that call callLambda. callLambda returns a Thunk (TCO), but the wrapper never trampolined it, so the handler body (swap!, set!, etc.) never executed. Buttons rendered but clicks had no effect. Fix: wrap callLambda result in trampoline() so thunks resolve and side effects (signal mutations, DOM updates) execute. Also use call-lambda instead of direct invocation for Lambda objects (Lambda is a plain JS object, not callable as a function). All 100 Playwright tests pass: - 6 isomorphic SSR - 5 reactive navigation (cross-demo) - 61 geography page loads - 7 handler response rendering - 21 demo interaction + health checks Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
56 KiB
56 KiB