From 3d182b2fecb8f4f559eb2a8c3630837b6b20b9d3 Mon Sep 17 00:00:00 2001 From: "Jonathan D.A. Jewell" <6759885+hyperpolymath@users.noreply.github.com> Date: Tue, 19 May 2026 19:03:22 +0100 Subject: [PATCH] =?UTF-8?q?docs(http):=20#225=20PR4=20=E2=80=94=20joint-cl?= =?UTF-8?q?ose=20#160=20+=20#225=20(ADR-013=20delivery=20complete)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both targets of the portable Http primitive are green: - Deno-ESM #160 — PR #226 (shipped). - typed-wasm #225 — the ADR-013 CPS line PR1..PR3d all merged: #227 (PR1 verified Thenable foundation), #233 (PR2 base case), #236 (PR3a env capture), #237 (PR3b affine-capture obligation), #238 (PR3c Async→Async chaining), #266 (PR3d typed Response reader + http_fetch-parity wasm e2e). The transparent `fetch/get -> Response` source surface is delivered on both targets; ADR-013's delivery plan is complete. Ledger STDLIB-01 + the ADR-013 delivery plan truthed. Two follow-ups remain independently tracked (NOT part of this slice): effect-threaded boundary generalisation #234; estate-wide #199/#205 re-validation #235. Gate: `dune test --force` 278/278 (docs only; zero regression). Closes #160 Closes #225 --- docs/TECH-DEBT.adoc | 6 ++++-- docs/specs/async-on-wasm-cps.adoc | 14 ++++++++++---- 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/docs/TECH-DEBT.adoc b/docs/TECH-DEBT.adoc index 2ae8f13..445a381 100644 --- a/docs/TECH-DEBT.adoc +++ b/docs/TECH-DEBT.adoc @@ -126,8 +126,10 @@ coherence checking. |S2 |partial |ID |Item |Sev |Status |STDLIB-AOT |All stdlib files compile resolve→typecheck→codegen, CI-gated |S1 |*CLOSED 2026-05-18* (#128/#135; `test/test_stdlib_aot.ml`) -|STDLIB-01 |Portable `Http.fetch` primitive |S2 |open #160 (#226/#227 -merged: Deno-ESM + typed-wasm Http; convergence ABI shared w/ Ephapax #225) +|STDLIB-01 |Portable `Http.fetch` primitive |S2 |DONE — #160 + #225 +joint-closed. Deno-ESM (#226) + typed-wasm CPS line PR1..PR3d +(#227/#233/#236/#237/#238/#266) all merged; ADR-013 delivery plan +complete; convergence ABI shared w/ Ephapax |STDLIB-02 |Portable `Json` primitive |S2 |open #161 |STDLIB-03 |`Dict`/`Map` keyed container |S2 |open #162 |STDLIB-04 |Residual `extern` builtins → real implementations |S3 |open diff --git a/docs/specs/async-on-wasm-cps.adoc b/docs/specs/async-on-wasm-cps.adoc index d587bf3..6ba0de3 100644 --- a/docs/specs/async-on-wasm-cps.adoc +++ b/docs/specs/async-on-wasm-cps.adoc @@ -149,11 +149,17 @@ of* the verified Thenable-surface primitives. . *PR 2 — transform base case:* WasmGC `Async` user fn with a single async boundary and no live-local capture (`get(u).status`); emits the continuation registration; once-resumption assert. -. *PR 3 — live-local capture + composition:* #199 env ABI capture; - affine-capture borrow rule; `Async`→`Async` chaining; `Response` - typed reader; full `http_fetch`-parity wasm test. (Gated behind - Ephapax ABI review, typed-wasm#31.) +. *PR 3 — live-local capture + composition:* #199 env ABI capture + (PR3a #236); affine-capture borrow rule (PR3b #237); `Async`→`Async` + chaining (PR3c #238); `Response` typed reader (PR3d #266); full + `http_fetch`-parity wasm test. *DONE.* . *PR 4 — joint-close:* both targets green ⇒ close #160 and #225. + *DONE* — Deno-ESM (#226) + the typed-wasm CPS line PR1..PR3d all + merged; this PR joint-closes #160 + #225. The ADR-013 delivery plan + is complete; the transparent `fetch/get -> Response` surface is + delivered on both targets. (Two follow-ups, *not* part of this + slice, remain tracked: effect-threaded boundary generalisation + #234; estate #199/#205 re-validation #235.) == References