From 11917f1bfa09c628adb7436e2c9d1aad40853468 Mon Sep 17 00:00:00 2001 From: giles Date: Sun, 26 Apr 2026 15:03:10 +0000 Subject: [PATCH] HS-plan: log Bucket F empty multi-element fix +1; sync scoreboard --- plans/hs-conformance-scoreboard.md | 5 +++-- plans/hs-conformance-to-100.md | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/plans/hs-conformance-scoreboard.md b/plans/hs-conformance-scoreboard.md index df7e6f1c..e2a1776e 100644 --- a/plans/hs-conformance-scoreboard.md +++ b/plans/hs-conformance-scoreboard.md @@ -4,10 +4,10 @@ Live tally for `plans/hs-conformance-to-100.md`. Update after every cluster comm ``` Baseline: 1213/1496 (81.1%) -Merged: 1309/1496 (87.5%) delta +96 +Merged: 1310/1496 (87.6%) delta +97 Worktree: all landed Target: 1496/1496 (100.0%) -Remaining: ~193 tests (clusters 17/29(partial)/31 blocked; 33/34 partial) +Remaining: ~192 tests (clusters 17/29(partial)/31 blocked; 33/34 partial) ``` ## Cluster ledger @@ -85,6 +85,7 @@ Defer until A–D drain. Estimated ~25 recoverable tests. | # | Cluster | Status | Δ | Commit | |---|---------|--------|---|--------| | F1 | add CSS template interpolation | done | +1 | 5a76a040 | +| F2 | empty multi-element (query→for-each) | done | +1 | 875e9ba3 | ## Buckets roll-up diff --git a/plans/hs-conformance-to-100.md b/plans/hs-conformance-to-100.md index df844bc4..8173a3ab 100644 --- a/plans/hs-conformance-to-100.md +++ b/plans/hs-conformance-to-100.md @@ -177,6 +177,9 @@ Many tests are `SKIP (untranslated)` because `tests/playwright/generate-sx-tests ## Progress log +### 2026-04-26 — Bucket F: empty multi-element fix (+1) +- **875e9ba3** — `HS: empty multi-element fix (+1 test)`. `empty .class` compiled `(empty-target (query ".class"))` through `hs-to-sx` → `(hs-empty-target! (hs-query-first ".class"))` which only emptied the first match. Fix: detect `(query ...)` target in the `empty-target` compiler case and emit `(for-each (fn (_el) (hs-empty-target! _el)) (hs-query-all sel))`, mirroring the `add-class` pattern. Suite hs-upstream-empty: 12/13 → 13/13. Smoke 0-195: 175/195 unchanged. + ### 2026-04-26 — Bucket F: add CSS template interpolation (+1) - **5a76a040** — `HS: add CSS template interpolation fix (+1 test)`. `add {color: ${}{"red"}}` uses two consecutive brace groups: the empty `${}` marker followed by `{"red"}` for the actual value. The prior parser fix called `parse-expr` when already at the closing `}` of the empty group, returning nil. Fix: detect the empty-brace case (`brace-open` → immediately `brace-close`), skip it, then read the actual value from the next `{…}` block. Also handles normal `${expr}` correctly. Suite hs-upstream-add: 17/19 → 18/19. Smoke 0-195: 174/195 → 175/195.