HS-plan: log string template done +2

This commit is contained in:
2026-04-23 21:53:12 +00:00
parent 108e25d418
commit 5fe1c2c7d5

View File

@@ -44,7 +44,7 @@ Each cluster below is one commit. Order is rough — a loop agent may skip ahead
5. **[done (+1)] `some` selector for nonempty match** — `expressions/some / some returns true for nonempty selector` (1 test). `some .class` probably returns the list, not a boolean. Runtime fix. Expected: +1. 5. **[done (+1)] `some` selector for nonempty match** — `expressions/some / some returns true for nonempty selector` (1 test). `some .class` probably returns the list, not a boolean. Runtime fix. Expected: +1.
6. **[in-progress] string template `${x}`** — `expressions/strings / string templates work w/ props` + `w/ braces` (2 tests). Template interpolation isn't substituting property accesses. Check `hs-template` runtime. Expected: +2. 6. **[done (+2)] string template `${x}`** — `expressions/strings / string templates work w/ props` + `w/ braces` (2 tests). Template interpolation isn't substituting property accesses. Check `hs-template` runtime. Expected: +2.
7. **[pending] `put` hyperscript reprocessing** — `put / properly processes hyperscript at end/start/content/symbol` (4 tests, all `Expected 42, got 40`). After a put operation, newly inserted HS scripts aren't being activated. Fix: `hs-put-at!` should `hs-boot-subtree!` on the target after DOM insertion. Expected: +4. 7. **[pending] `put` hyperscript reprocessing** — `put / properly processes hyperscript at end/start/content/symbol` (4 tests, all `Expected 42, got 40`). After a put operation, newly inserted HS scripts aren't being activated. Fix: `hs-put-at!` should `hs-boot-subtree!` on the target after DOM insertion. Expected: +4.
@@ -158,6 +158,9 @@ Many tests are `SKIP (untranslated)` because `tests/playwright/generate-sx-tests
(Reverse chronological — newest at top.) (Reverse chronological — newest at top.)
### 2026-04-23 — cluster 6 string template ${x}
- **108e25d4** — `HS: string template ${x} (+2 tests)`. Two-part fix: (a) `compiler.sx` now emits `(host-global "window")` (plus other well-known globals) for bare dot-chain base identifiers that would otherwise be unbound symbols. (b) `generate-sx-tests.py` now has `eval-hs-locals` ALSO call `host-set!` on `window.<name>` for each binding, so tests whose `window.X = Y` setup was translated as a local pair can still see `window.X`. Suite hs-upstream-expressions/strings: 5/8 → 7/8. Smoke 0-195: 162/195 unchanged.
### 2026-04-23 — cluster 5 some selector for nonempty match ### 2026-04-23 — cluster 5 some selector for nonempty match
- **e7b86264** — `HS: some selector for nonempty match (+1 test)`. `some <html/>``(not (hs-falsy? (hs-query-first "html")))``document.querySelector('html')`. Mock's querySelector searched from `_body`, missing the `_html` element. Fixed the mock to short-circuit for `html`/`body` and walk `documentElement`. Suite hs-upstream-expressions/some: 5/6 → 6/6. Smoke 0-195: 162/195 unchanged. - **e7b86264** — `HS: some selector for nonempty match (+1 test)`. `some <html/>``(not (hs-falsy? (hs-query-first "html")))``document.querySelector('html')`. Mock's querySelector searched from `_body`, missing the `_html` element. Fixed the mock to short-circuit for `html`/`body` and walk `documentElement`. Suite hs-upstream-expressions/some: 5/6 → 6/6. Smoke 0-195: 162/195 unchanged.