103 lines
4.6 KiB
Markdown
103 lines
4.6 KiB
Markdown
# HS Conformance Scoreboard
|
||
|
||
Live tally for `plans/hs-conformance-to-100.md`. Update after every cluster commit.
|
||
|
||
```
|
||
Baseline: 1213/1496 (81.1%)
|
||
Merged: 1277/1496 (85.4%) delta +64
|
||
Worktree: all landed
|
||
Target: 1496/1496 (100.0%)
|
||
Remaining: ~219 tests (cluster 29 blocked on sx-tree MCP outage + parser scope)
|
||
```
|
||
|
||
## Cluster ledger
|
||
|
||
### Bucket A — runtime fixes
|
||
|
||
| # | Cluster | Status | Δ | Commit |
|
||
|---|---------|--------|---|--------|
|
||
| 1 | fetch JSON unwrap | done | +4 | 39a597e9 |
|
||
| 2 | element → HTML via outerHTML | done | +1 | e195b5bd |
|
||
| 3 | Values dict insertion order | done | +2 | e59c0b8e |
|
||
| 4 | `not` precedence over `or` | done | +3 | 4fe0b649 |
|
||
| 5 | `some` selector for nonempty match | done | +1 | e7b86264 |
|
||
| 6 | string template `${x}` | done | +2 | 108e25d4 |
|
||
| 7 | `put` hyperscript reprocessing | partial | +1 | f21eb008 |
|
||
| 8 | `select` returns selected text | done | +1 | d862efe8 |
|
||
| 9 | `wait on event` basics | done | +4 | f79f96c1 |
|
||
| 10 | `swap` variable ↔ property | done | +1 | 30f33341 |
|
||
| 11 | `hide` strategy | partial | +3 | beb120ba |
|
||
| 12 | `show` multi-element + display retention | done | +2 | 98c957b3 |
|
||
| 13 | `toggle` multi-class + timed + until-event | partial | +2 | bd821c04 |
|
||
| 14 | `unless` modifier | done | +1 | c4da0698 |
|
||
| 15 | `transition` query-ref + multi-prop + initial | partial | +2 | 3d352055 |
|
||
| 16 | `send can reference sender` | done | +1 | ed8d71c9 |
|
||
| 17 | `tell` semantics | blocked | — | — |
|
||
| 18 | `throw` respond async/sync | done | +2 | dda3becb |
|
||
|
||
### Bucket B — parser/compiler additions
|
||
|
||
| # | Cluster | Status | Δ | Commit |
|
||
|---|---------|--------|---|--------|
|
||
| 19 | `pick` regex + indices | done | +13 | 4be90bf2 |
|
||
| 20 | `repeat` property for-loops + where | done | +3 | c932ad59 |
|
||
| 21 | `possessiveExpression` property access via its | done | +1 | f0c41278 |
|
||
| 22 | window global fn fallback | blocked | — | — |
|
||
| 23 | `me symbol works in from expressions` | done | +1 | 0d38a75b |
|
||
| 24 | `properly interpolates values 2` | done | +1 | cb37259d |
|
||
| 25 | parenthesized commands and features | done | +1 | d7a88d85 |
|
||
|
||
### Bucket C — feature stubs (observer mocks)
|
||
|
||
| # | Cluster | Status | Δ | Commit |
|
||
|---|---------|--------|---|--------|
|
||
| 26 | resize observer mock + `on resize` | done | +3 | 304a52d2 |
|
||
| 27 | intersection observer mock + `on intersection` | done | +3 | 0c31dd27 |
|
||
| 28 | `ask`/`answer` + prompt/confirm mock | done | +4 | 6c1da921 |
|
||
| 29 | `hyperscript:before:init` / `:after:init` / `:parse-error` | blocked | — | — |
|
||
| 30 | `logAll` config | done | +1 | 64bcefff |
|
||
|
||
### Bucket D — medium features
|
||
|
||
| # | Cluster | Status | Δ |
|
||
|---|---------|--------|---|
|
||
| 31 | runtime null-safety error reporting | pending | (+15–18 est) |
|
||
| 32 | MutationObserver mock + `on mutation` | pending | (+10–15 est) |
|
||
| 33 | cookie API | pending | (+5 est) |
|
||
| 34 | event modifier DSL | pending | (+6–8 est) |
|
||
| 35 | namespaced `def` | pending | (+3 est) |
|
||
|
||
### Bucket E — subsystems (design docs landed, pending review + implementation)
|
||
|
||
| # | Cluster | Status | Design doc |
|
||
|---|---------|--------|------------|
|
||
| 36 | WebSocket + `socket` + RPC proxy | design-done | `plans/designs/e36-websocket.md` |
|
||
| 37 | Tokenizer-as-API | design-done | `plans/designs/e37-tokenizer-api.md` |
|
||
| 38 | SourceInfo API | design-done | `plans/designs/e38-sourceinfo.md` |
|
||
| 39 | WebWorker plugin | design-done | `plans/designs/e39-webworker.md` |
|
||
| 40 | Fetch non-2xx / before-fetch / real response | design-done | `plans/designs/e40-real-fetch.md` |
|
||
|
||
### Bucket F — generator translation gaps
|
||
|
||
Defer until A–D drain. Estimated ~25 recoverable tests.
|
||
|
||
## Buckets roll-up
|
||
|
||
| Bucket | Done | Partial | In-prog | Pending | Blocked | Design-done | Total |
|
||
|--------|-----:|--------:|--------:|--------:|--------:|------------:|------:|
|
||
| A | 12 | 4 | 0 | 0 | 1 | — | 17 |
|
||
| B | 6 | 0 | 0 | 0 | 1 | — | 7 |
|
||
| C | 4 | 0 | 0 | 0 | 1 | — | 5 |
|
||
| D | 0 | 0 | 0 | 5 | 0 | — | 5 |
|
||
| E | 0 | 0 | 0 | 0 | 0 | 5 | 5 |
|
||
| F | — | — | — | ~10 | — | — | ~10 |
|
||
|
||
## Maintenance
|
||
|
||
After each cluster commit, update:
|
||
- `Merged:` pass count + `delta` line at top
|
||
- The row's `Status` / `Δ` / `Commit` in the relevant bucket
|
||
- The buckets roll-up table counts
|
||
|
||
Use `mcp__hs-test__hs_test_run(start=0, end=195)` + targeted-suite runs to get the real number; don't run the full suite every iteration (hangs on 196/199/200/615/1197/1198).
|