7492ceac4e
Restore hyperscript work on stable site base ( 908f4f80)
...
Reset to last known-good state (908f4f80 ) where links, stepper, and
islands all work, then recovered all hyperscript implementation,
conformance tests, behavioral tests, Playwright specs, site sandbox,
IO-aware server loading, and upstream test suite from f271c88a.
Excludes runtime changes (VM resolve hook, VmSuspended browser handler,
sx_ref.ml guard recovery) that need careful re-integration.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-09 19:29:56 +00:00
981b6e7560
Tier 1 conformance: 160/259 passing (62%) in sandbox
...
- Re-extracted 259 fixtures from _hyperscript 0.9.14 (was 214)
Improved extractor handles: JS eval'd expected values, should.equal(x,y),
multi-line string concatenation, deep.equal for objects/arrays
- Fixed type-check-strict compiler match (was still using old name)
- Sandbox runner uses cek-eval (full env, no hacks)
- Run: sx_playwright mode=sandbox stack=hs
files=[spec/tests/test-hyperscript-conformance-sandbox.sx]
expr=(do (hs-conf-run-all) (hs-conf-report))
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-08 22:13:51 +00:00
8e9dc4a623
Sandbox conformance runner: 147/214 passing (69%)
...
New file: spec/tests/test-hyperscript-conformance-sandbox.sx
- 214 fixtures extracted from official _hyperscript 0.9.14 test suite
- Runs via: sx_playwright mode=sandbox stack=hs files=[this]
expr=(do (hs-conf-run-all) (hs-conf-report))
- Uses cek-eval (full env) — no runtime let-binding hacks
- try-call error handling per fixture
Up from 62/109 (57%) in OCaml runner to 147/214 (69%) in sandbox.
+85 tests unlocked by real eval context.
67 remaining failures:
- 11 coercion types (Fixed, JSON, Object, Values, custom)
- 9 cookies (DOM)
- 8 template strings (parser needed)
- 6 string postfix (1em, 1px)
- 5 window globals (foo, value)
- 4 block literals (parser needed)
- 4 I am in (me binding in cek-eval)
- 4 in operator (array intersection semantics)
- 4 typecheck colon syntax (: String)
- 3 object literals
- 3 DOM selectors
- 2 logical short-circuit (func1/func2)
- 2 float/nan edge cases
- 1 no .class (DOM)
- 1 its foo (window global)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com >
2026-04-08 21:57:18 +00:00