From a22196c04a45f116a67a58c12c3062754e53dfe3 Mon Sep 17 00:00:00 2001 From: Lann Martin Date: Thu, 20 Aug 2026 10:41:02 -0400 Subject: [PATCH] deltic 0.2.0; @polymorph/websocket 0.2.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The deltic lockstep line moves 0.1.0 -> 0.2.0 (breaking: plan formatVersion 4; runtime and translator move together — the pin gates enforce the single resolved version). The published host module's own version moves to 0.2.0 with it: its @deltic/runtime range is now ^0.2.0, a breaking dependency line for the package's consumers (publish stays operator-dispatched). Verified: deltic-module-check 14/14; driver-ct lock-check; run-deltic 55/55; run-deltic-browser 55/55; exam-deltic pin 0.2.0. --- conformance/driver-ct/deltic/deno.json | 10 +++---- conformance/driver-ct/deltic/deno.lock | 40 +++++++++++++------------- js/deltic/deno.json | 4 +-- js/deltic/deno.lock | 8 +++--- 4 files changed, 31 insertions(+), 31 deletions(-) diff --git a/conformance/driver-ct/deltic/deno.json b/conformance/driver-ct/deltic/deno.json index 231551e..f012c83 100644 --- a/conformance/driver-ct/deltic/deno.json +++ b/conformance/driver-ct/deltic/deno.json @@ -1,11 +1,11 @@ { "//": "MODULE-IDENTITY CONSTRAINT: deltic's wasi module imports @deltic/runtime/embedder by bare specifier internally. The @deltic/runtime/embedder entry here must resolve to the IDENTICAL @deltic/runtime version as ../../../js/deltic/deno.json's caret range (in both deno.locks), or the embedder module loads twice: value recognition survives that (websocket.ts recognizes deltic values by @deltic/protocol brand predicates, not instanceof), but a second copy splits the runtime/translator plan-format pairing, and stateful handles (streams/futures) minted by one copy are refused by the other. Pin story: exact-pinned JSR releases (caret-honest upstream: within a minor line releases stay compatible, breaking bumps the minor; per-commit `-pre.g` prereleases exist between releases — pin exactly); @deltic/translator ships the translator wasm for that SAME commit; deno.lock carries integrity, --frozen enforced everywhere; one version repo-wide is asserted by the pin gate (justfile: exam-deltic).", "imports": { - "@deltic/ct-runner": "jsr:@deltic/ct-runner@0.1.0", - "@deltic/runtime/embedder": "jsr:@deltic/runtime@0.1.0/embedder", - "@deltic/runtime/shim": "jsr:@deltic/runtime@0.1.0/shim", - "@deltic/wasi": "jsr:@deltic/wasi@0.1.0", - "@deltic/translator": "jsr:@deltic/translator@0.1.0", + "@deltic/ct-runner": "jsr:@deltic/ct-runner@0.2.0", + "@deltic/runtime/embedder": "jsr:@deltic/runtime@0.2.0/embedder", + "@deltic/runtime/shim": "jsr:@deltic/runtime@0.2.0/shim", + "@deltic/wasi": "jsr:@deltic/wasi@0.2.0", + "@deltic/translator": "jsr:@deltic/translator@0.2.0", "@polymorph/test/deltic-worker-main": "jsr:@polymorph/test@0.1.1/deltic-worker-main" }, "minimumDependencyAge": { "age": "P1D", "exclude": ["jsr:@deltic/*", "jsr:@polymorph/*"] }, diff --git a/conformance/driver-ct/deltic/deno.lock b/conformance/driver-ct/deltic/deno.lock index 8a69d96..135ed4e 100644 --- a/conformance/driver-ct/deltic/deno.lock +++ b/conformance/driver-ct/deltic/deno.lock @@ -1,41 +1,41 @@ { "version": "5", "specifiers": { - "jsr:@deltic/ct-runner@0.1.0": "0.1.0", + "jsr:@deltic/ct-runner@0.2.0": "0.2.0", "jsr:@deltic/protocol@0.2": "0.2.0", - "jsr:@deltic/runtime@0.1": "0.1.0", - "jsr:@deltic/runtime@0.1.0": "0.1.0", - "jsr:@deltic/translator@0.1.0": "0.1.0", - "jsr:@deltic/wasi@0.1.0": "0.1.0", + "jsr:@deltic/runtime@0.2": "0.2.0", + "jsr:@deltic/runtime@0.2.0": "0.2.0", + "jsr:@deltic/translator@0.2.0": "0.2.0", + "jsr:@deltic/wasi@0.2.0": "0.2.0", "jsr:@polymorph/test@0.1.1": "0.1.1" }, "jsr": { - "@deltic/ct-runner@0.1.0": { - "integrity": "cf642f22675d6733b6d13117cebdd2de95135884d2a1231764a3f7a4e3314982", + "@deltic/ct-runner@0.2.0": { + "integrity": "810eec021dc07dbc7efe00e0e7df900f557c5b30bd11f077195eeb44bcce81b4", "dependencies": [ - "jsr:@deltic/runtime@0.1" + "jsr:@deltic/runtime@0.2" ] }, "@deltic/protocol@0.2.0": { "integrity": "028be6a3623c5e910598aa7a199209b85e8931ae484ac7f6638d610ddb0e19fa" }, - "@deltic/runtime@0.1.0": { - "integrity": "8d3f52f1a336a2dd9aed28a5c34fd281612a2f55a1582b159be614dd678593b3", + "@deltic/runtime@0.2.0": { + "integrity": "cf8b0bdd9e6bc4488ba78cc91661103bfcbd78f5a5c4ff99132799618a9db4bb", "dependencies": [ "jsr:@deltic/protocol" ] }, - "@deltic/translator@0.1.0": { - "integrity": "c447f27a90d7637dd3d5709f3f25378ded0f4b985bedc890c3f6a8cb9ff1eb9f", + "@deltic/translator@0.2.0": { + "integrity": "8104b54e2acdccfd75f5ddc941d72b581e7defbbe31c05bbc66598d2df7a34f9", "dependencies": [ - "jsr:@deltic/runtime@0.1" + "jsr:@deltic/runtime@0.2" ] }, - "@deltic/wasi@0.1.0": { - "integrity": "c35a19d139d684dafeca8ba200230a3eb1154627c80db298ae1393e3af938d68", + "@deltic/wasi@0.2.0": { + "integrity": "82c76d4fda0a1c9238a91f8ebc7fdbac952a03aa06d4a2a820213df2654f5c24", "dependencies": [ "jsr:@deltic/protocol", - "jsr:@deltic/runtime@0.1" + "jsr:@deltic/runtime@0.2" ] }, "@polymorph/test@0.1.1": { @@ -44,10 +44,10 @@ }, "workspace": { "dependencies": [ - "jsr:@deltic/ct-runner@0.1.0", - "jsr:@deltic/runtime@0.1.0", - "jsr:@deltic/translator@0.1.0", - "jsr:@deltic/wasi@0.1.0", + "jsr:@deltic/ct-runner@0.2.0", + "jsr:@deltic/runtime@0.2.0", + "jsr:@deltic/translator@0.2.0", + "jsr:@deltic/wasi@0.2.0", "jsr:@polymorph/test@0.1.1" ], "packageJson": { diff --git a/js/deltic/deno.json b/js/deltic/deno.json index 90af8d9..45464b2 100644 --- a/js/deltic/deno.json +++ b/js/deltic/deno.json @@ -1,11 +1,11 @@ { "name": "@polymorph/websocket", - "version": "0.1.0", + "version": "0.2.0", "license": "Apache-2.0", "exports": "./websocket.ts", "//": "MODULE-IDENTITY CONSTRAINT: deltic's wasi module imports @deltic/runtime/embedder by bare specifier internally. This file's @deltic/runtime range and conformance/driver-ct/deltic/deno.json's exact pin must resolve to the IDENTICAL @deltic/runtime version in both deno.locks, or the embedder module loads twice: value recognition survives that (websocket.ts recognizes deltic values by @deltic/protocol brand predicates, not instanceof), but a second copy splits the runtime/translator plan-format pairing, and stateful handles (streams/futures) minted by one copy are refused by the other. Pin story: this published package takes a caret range (caret-honest upstream: within a minor line releases stay compatible, breaking bumps the minor); the repo-internal conformance harness exact-pins instead so its lock is the single source of truth for the resolved version; deno.lock carries integrity, --frozen enforced everywhere; one RESOLVED version repo-wide (across both locks) is asserted by the pin gate (justfile: exam-deltic).", "imports": { - "@deltic/runtime/embedder": "jsr:@deltic/runtime@^0.1.0/embedder" + "@deltic/runtime/embedder": "jsr:@deltic/runtime@^0.2.0/embedder" }, "minimumDependencyAge": { "age": "P1D", "exclude": ["jsr:@deltic/*"] }, "compilerOptions": { diff --git a/js/deltic/deno.lock b/js/deltic/deno.lock index d5ceb85..d76d26b 100644 --- a/js/deltic/deno.lock +++ b/js/deltic/deno.lock @@ -2,7 +2,7 @@ "version": "5", "specifiers": { "jsr:@deltic/protocol@0.2": "0.2.0", - "jsr:@deltic/runtime@0.1": "0.1.0", + "jsr:@deltic/runtime@0.2": "0.2.0", "jsr:@std/assert@1": "1.0.19", "jsr:@std/internal@^1.0.12": "1.0.14" }, @@ -10,8 +10,8 @@ "@deltic/protocol@0.2.0": { "integrity": "028be6a3623c5e910598aa7a199209b85e8931ae484ac7f6638d610ddb0e19fa" }, - "@deltic/runtime@0.1.0": { - "integrity": "8d3f52f1a336a2dd9aed28a5c34fd281612a2f55a1582b159be614dd678593b3", + "@deltic/runtime@0.2.0": { + "integrity": "cf8b0bdd9e6bc4488ba78cc91661103bfcbd78f5a5c4ff99132799618a9db4bb", "dependencies": [ "jsr:@deltic/protocol" ] @@ -28,7 +28,7 @@ }, "workspace": { "dependencies": [ - "jsr:@deltic/runtime@0.1" + "jsr:@deltic/runtime@0.2" ] } }