Revert boot.sx CSSX flush — client morph needs different approach
The CSSX persistence after SPA navigation is a client-side issue. The boot.sx flush added collected-rules-to-head after island hydration, but this may interfere with the morph/reactive rendering pipeline. The client-side CSSX persistence fix needs to work with the DOM adapter's scope mechanism (CEK frames), not the hashtable-based scope-emit!/scope-emitted used by the server adapter. WASM will unify these — same evaluator on both sides. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -14,7 +14,7 @@
|
|||||||
// =========================================================================
|
// =========================================================================
|
||||||
|
|
||||||
var NIL = Object.freeze({ _nil: true, toString: function() { return "nil"; } });
|
var NIL = Object.freeze({ _nil: true, toString: function() { return "nil"; } });
|
||||||
var SX_VERSION = "2026-03-24T02:21:48Z";
|
var SX_VERSION = "2026-03-24T02:56:45Z";
|
||||||
|
|
||||||
function isNil(x) { return x === NIL || x === null || x === undefined; }
|
function isNil(x) { return x === NIL || x === null || x === undefined; }
|
||||||
function isSxTruthy(x) { return x !== false && !isNil(x); }
|
function isSxTruthy(x) { return x !== false && !isNil(x); }
|
||||||
@@ -521,6 +521,8 @@
|
|||||||
PRIMITIVES["scope-emit!"] = scopeEmit;
|
PRIMITIVES["scope-emit!"] = scopeEmit;
|
||||||
PRIMITIVES["scope-peek"] = scopePeek;
|
PRIMITIVES["scope-peek"] = scopePeek;
|
||||||
PRIMITIVES["scope-emitted"] = sxEmitted;
|
PRIMITIVES["scope-emitted"] = sxEmitted;
|
||||||
|
PRIMITIVES["scope-collected"] = sxCollected;
|
||||||
|
PRIMITIVES["scope-clear-collected!"] = sxClearCollected;
|
||||||
|
|
||||||
// ---- VM stack primitives ----
|
// ---- VM stack primitives ----
|
||||||
// The VM spec (vm.sx) requires these array-like operations.
|
// The VM spec (vm.sx) requires these array-like operations.
|
||||||
|
|||||||
Reference in New Issue
Block a user