From 4ee748bf4272045e40d64901a508fedc5f6cab01 Mon Sep 17 00:00:00 2001 From: giles Date: Fri, 24 Apr 2026 07:07:31 +0000 Subject: [PATCH] HS-plan: link bucket E design docs + fix E36 shape All five subsystems now have design docs pending review on per-subsystem worktree branches. Correcting E36: upstream uses `socket NAME URL ... end` with implicit `.rpc` Proxy, not `with proxy { send, receive }`. Co-Authored-By: Claude Opus 4.7 (1M context) --- plans/hs-conformance-to-100.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/plans/hs-conformance-to-100.md b/plans/hs-conformance-to-100.md index a6499a1b..e9618b7e 100644 --- a/plans/hs-conformance-to-100.md +++ b/plans/hs-conformance-to-100.md @@ -112,15 +112,17 @@ Each cluster below is one commit. Order is rough — a loop agent may skip ahead ### Bucket E: subsystems (DO NOT LOOP — human-driven) -36. **[blocked: needs design] WebSocket + `socket` + rpc proxy** — 16 tests. Ship only with intentional design review. +All five have design docs on their own worktree branches pending review + merge. After merge, status flips to `design-ready` and they become eligible for the loop. -37. **[blocked: needs design] Tokenizer-as-API** — 17 tests. Expose tokens as inspectable SX data. +36. **[design-done, pending review — `plans/designs/e36-websocket.md` on `worktree-agent-a9daf73703f520257`] WebSocket + `socket`** — 16 tests. Upstream shape is `socket NAME URL [with timeout N] [on message [as JSON] …] end` with an **implicit `.rpc` Proxy** (ES6 Proxy lives in JS, not SX), not `with proxy { send, receive }` as this row previously claimed. Design doc has 8-commit checklist, +12–16 delta estimate. Ship only with intentional design review. -38. **[blocked: needs design] SourceInfo API** — 4 tests. `(get line N)` / `(get source N)` metadata on compiled AST. +37. **[design-done, pending review — `plans/designs/e37-tokenizer-api.md` on `worktree-agent-a6bb61d59cc0be8b4`] Tokenizer-as-API** — 17 tests. Expose tokens as inspectable SX data via `hs-tokens-of` / `hs-stream-token` / `hs-token-type` etc; type-map current `hs-tokenize` output to upstream SCREAMING_SNAKE_CASE. 8-step checklist, +16–17 delta. -39. **[blocked: needs design] WebWorker plugin** — 1 test. +38. **[design-done, pending review — `plans/designs/e38-sourceinfo.md` on `agent-e38-sourceinfo`] SourceInfo API** — 4 tests. Inline span-wrapper strategy (not side-channel dict) with compiler-entry unwrap. 4-commit plan. -40. **[blocked: needs design] Fetch non-2xx / before-fetch event / real response object** — 7 tests. Sinon-level route mocks or real fetch interception. +39. **[design-done, pending review — `plans/designs/e39-webworker.md` on `hs-design-e39-webworker`] WebWorker plugin** — 1 test. Parser-only stub that errors with a link to upstream docs; no runtime, no mock Worker class. Hand-write the test (don't patch the generator). Single commit. + +40. **[design-done, pending review — `plans/designs/e40-real-fetch.md` on `worktree-agent-a94612a4283eaa5e0`] Fetch non-2xx / before-fetch event / real response object** — 7 tests. SX-dict Response wrapper `{:_hs-response :ok :status :url :_body :_json :_html}`; restructured `hs-fetch` that always fetches wrapper then converts by format; test-name-keyed `_fetchScripts`. 11-step checklist. Watch for regression on cluster-1 JSON unwrap. ### Bucket F: generator translation gaps (after bucket A-D)