Uncommitted sx-tools changes: WASM bundles, Playwright specs, engine fixes

WASM browser bundles rebuilt with latest kernel. Playwright test specs
updated (helpers, navigation, handler-responses, hypermedia-handlers,
isomorphic, SPA navigation). Engine/boot/orchestration SX files updated.
Handler examples and not-found page refreshed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-04-02 18:58:38 +00:00
parent 14d5158b06
commit 6d5c410d68
28 changed files with 375 additions and 171 deletions

View File

@@ -649,3 +649,28 @@
(do
(assert-true (contains? result "~examples/sync-result"))
(assert-false (contains? result "Searching")))))))
(defsuite
"swap:popstate-oob-nav"
(deftest
"aser preserves sx-swap-oob attribute in OOB elements"
(let
((src (quote (<> (div :id "sx-nav" :sx-swap-oob "innerHTML" (span "Updated Nav")) (div :id "sx-content" (p "Page content"))))))
(let
((result (serialize (aser src))))
(assert-true (contains? result "sx-swap-oob"))
(assert-true (contains? result "innerHTML"))
(assert-true (contains? result "sx-nav"))
(assert-true (contains? result "Updated Nav"))
(assert-true (contains? result "Page content")))))
(deftest
"aser OOB response preserves both targets"
(let
((src (quote (<> (div :id "sx-nav" :sx-swap-oob "innerHTML" (span "Nav A")) (div :id "sidebar" :sx-swap-oob "innerHTML" (span "Sidebar B")) (div :id "sx-content" (p "Main"))))))
(let
((result (serialize (aser src))))
(assert-true (contains? result "sx-nav"))
(assert-true (contains? result "sidebar"))
(assert-true (contains? result "Nav A"))
(assert-true (contains? result "Sidebar B"))
(assert-true (contains? result "Main"))))))