From 50a588288a557211dd514481a952babf1ced283e Mon Sep 17 00:00:00 2001 From: Lann Martin Date: Sat, 5 Sep 2026 11:50:30 -0400 Subject: [PATCH] polyengine 0.6.3; @polymorph/test 0.3.0; @polymorph/webcrypto 0.6.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bump the conformance driver's exact pins to the polyengine v0.6.3 lockstep line and @polyengine/protocol 0.3.1. polyengine 0.6.0 removed CliOptions.passthrough, so shard-worker's wasi({ cli }) drops it. The runner core moves to @polymorph/test 0.3.0 repo-wide (the driver's jsr pin, its npm alias, and the four jco-leg lockfiles the runner-js-pin-check reads): 0.2.1's polyengine-worker-main called ct-runner internals 0.6.0 un-exported, which broke the browser leg; 0.3.0 drives runSuite. The jco legs import only surfaces unchanged between the two. The published host module takes @polyengine/protocol ^0.3.1 — a protocol minor bump, breaking under the caret-honest scheme — so @polymorph/webcrypto goes 0.5.0 -> 0.6.0. Gates: polyengine-module-check, polyengine-pin-check, runner-js-pin-check, deno check, run-polyengine, run-polyengine-browser (19089 passed / 2 n/a; signing 11 passed / 761 n/a), run-jco, jco typecheck + test-host, demo test-node; polyengine and jco-node matrix columns unchanged against the committed matrices. --- conformance/driver-ct/jco/package-lock.json | 8 +-- conformance/driver-ct/jco/package.json | 2 +- conformance/driver-ct/polyengine/deno.json | 14 ++-- conformance/driver-ct/polyengine/deno.lock | 72 +++++++++---------- .../driver-ct/polyengine/package-lock.json | 8 +-- conformance/driver-ct/polyengine/package.json | 2 +- .../driver-ct/polyengine/shard-worker.ts | 2 +- examples/jco-demo/package-lock.json | 8 +-- examples/jco-demo/package.json | 2 +- js/componentize/wpt/parity/package-lock.json | 8 +-- js/componentize/wpt/parity/package.json | 2 +- js/jco/package-lock.json | 8 +-- js/jco/package.json | 2 +- js/polyengine/deno.json | 4 +- js/polyengine/deno.lock | 8 +-- 15 files changed, 75 insertions(+), 75 deletions(-) diff --git a/conformance/driver-ct/jco/package-lock.json b/conformance/driver-ct/jco/package-lock.json index ad06ecd..5801676 100644 --- a/conformance/driver-ct/jco/package-lock.json +++ b/conformance/driver-ct/jco/package-lock.json @@ -8,7 +8,7 @@ "dependencies": { "@bytecodealliance/jco-transpile": "0.7.0", "@bytecodealliance/preview2-shim": "0.17.9", - "@jsr/polymorph__test": "0.2.1", + "@jsr/polymorph__test": "0.3.0", "playwright-core": "1.62.1" } }, @@ -83,9 +83,9 @@ } }, "node_modules/@jsr/polymorph__test": { - "version": "0.2.1", - "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.2.1.tgz", - "integrity": "sha512-5bkpwmjHp8Hjk69ADkQp1oo4CHyiPT2BAtQWbi7QrbTkrrwIDOn73JzsmZhzWT4mvzkWEL3Q4u1BSOra3sVBLQ==" + "version": "0.3.0", + "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.3.0.tgz", + "integrity": "sha512-NlpHmd5fA3KB/aAaXrBW4KX57UXkl/V9+RLa+fchFUsjASsigthEHMEiiNozRYN/l3xgsKMSC7J3IPp9VtECsQ==" }, "node_modules/@napi-rs/wasm-runtime": { "version": "1.2.3", diff --git a/conformance/driver-ct/jco/package.json b/conformance/driver-ct/jco/package.json index 4113093..28754a8 100644 --- a/conformance/driver-ct/jco/package.json +++ b/conformance/driver-ct/jco/package.json @@ -12,7 +12,7 @@ "dependencies": { "@bytecodealliance/jco-transpile": "0.7.0", "@bytecodealliance/preview2-shim": "0.17.9", - "@jsr/polymorph__test": "0.2.1", + "@jsr/polymorph__test": "0.3.0", "playwright-core": "1.62.1" } } \ No newline at end of file diff --git a/conformance/driver-ct/polyengine/deno.json b/conformance/driver-ct/polyengine/deno.json index 6861c0e..fd1f2b5 100644 --- a/conformance/driver-ct/polyengine/deno.json +++ b/conformance/driver-ct/polyengine/deno.json @@ -1,13 +1,13 @@ { "//": "MODULE IDENTITY (A22): applications that load the embedder in more than one config must still resolve ONE runtime version — stateful handles minted by one copy are refused by another. The @polyengine/runtime/embedder entry here must map to the same exact-pinned JSR version everywhere this config's process loads the embedder (polyengine ships as exact-pinned JSR releases; caret-honest upstream — within a minor line releases stay compatible, breaking bumps the minor; between releases, per-commit `-pre.g` prereleases exist — pin exactly). Published host modules (../../../js/polyengine) now couple only to @polyengine/protocol, whose copies are harmless by construction, so this constraint no longer spans that config. deno.lock carries integrity, --frozen enforced; the pin gate (just conformance-ct::polyengine-pin-check) asserts one @polyengine/runtime version where resolved and one @polyengine/protocol version repo-wide.", "imports": { - "@polyengine/ct-runner": "jsr:@polyengine/ct-runner@0.5.0", - "@polyengine/runtime/embedder": "jsr:@polyengine/runtime@0.5.0/embedder", - "@polyengine/runtime/shim": "jsr:@polyengine/runtime@0.5.0/shim", - "@polyengine/wasi": "jsr:@polyengine/wasi@0.5.0", - "@polyengine/translator": "jsr:@polyengine/translator@0.5.0", - "@polyengine/protocol": "jsr:@polyengine/protocol@0.2.2", - "@polymorph/test/polyengine-worker-main": "jsr:@polymorph/test@0.2.1/polyengine-worker-main" + "@polyengine/ct-runner": "jsr:@polyengine/ct-runner@0.6.3", + "@polyengine/runtime/embedder": "jsr:@polyengine/runtime@0.6.3/embedder", + "@polyengine/runtime/shim": "jsr:@polyengine/runtime@0.6.3/shim", + "@polyengine/wasi": "jsr:@polyengine/wasi@0.6.3", + "@polyengine/translator": "jsr:@polyengine/translator@0.6.3", + "@polyengine/protocol": "jsr:@polyengine/protocol@0.3.1", + "@polymorph/test/polyengine-worker-main": "jsr:@polymorph/test@0.3.0/polyengine-worker-main" }, "minimumDependencyAge": { "age": "P1D", "exclude": ["jsr:@polyengine/*", "jsr:@polymorph/*"] }, "tasks": { diff --git a/conformance/driver-ct/polyengine/deno.lock b/conformance/driver-ct/polyengine/deno.lock index 5601b07..18a1684 100644 --- a/conformance/driver-ct/polyengine/deno.lock +++ b/conformance/driver-ct/polyengine/deno.lock @@ -1,54 +1,54 @@ { "version": "5", "specifiers": { - "jsr:@polyengine/ct-runner@0.5.0": "0.5.0", - "jsr:@polyengine/protocol@0.2.2": "0.2.2", - "jsr:@polyengine/protocol@~0.2.2": "0.2.2", - "jsr:@polyengine/runtime@0.5": "0.5.0", - "jsr:@polyengine/runtime@0.5.0": "0.5.0", - "jsr:@polyengine/translator@0.5.0": "0.5.0", - "jsr:@polyengine/wasi@0.5.0": "0.5.0", - "jsr:@polymorph/test@0.2.1": "0.2.1", - "npm:@jsr/polymorph__test@0.2.1": "0.2.1", + "jsr:@polyengine/ct-runner@0.6.3": "0.6.3", + "jsr:@polyengine/protocol@0.3.1": "0.3.1", + "jsr:@polyengine/protocol@~0.3.1": "0.3.1", + "jsr:@polyengine/runtime@0.6.3": "0.6.3", + "jsr:@polyengine/runtime@~0.6.3": "0.6.3", + "jsr:@polyengine/translator@0.6.3": "0.6.3", + "jsr:@polyengine/wasi@0.6.3": "0.6.3", + "jsr:@polymorph/test@0.3.0": "0.3.0", + "npm:@jsr/polymorph__test@0.3.0": "0.3.0", "npm:playwright-core@1.62.1": "1.62.1" }, "jsr": { - "@polyengine/ct-runner@0.5.0": { - "integrity": "be3219d9ed283a10386fc76590149419888544980155e84f72b988f1b248a2e5", + "@polyengine/ct-runner@0.6.3": { + "integrity": "61821fbc7d8de1aab0a82a6ab3adfa89cc63b87c1a4573516e45a407d501027c", "dependencies": [ - "jsr:@polyengine/protocol@~0.2.2", - "jsr:@polyengine/runtime@0.5" + "jsr:@polyengine/protocol@~0.3.1", + "jsr:@polyengine/runtime@~0.6.3" ] }, - "@polyengine/protocol@0.2.2": { - "integrity": "ff470d7183924119ae181cc513093318f1587f7ad5c4bc02db7344e90c9ff52b" + "@polyengine/protocol@0.3.1": { + "integrity": "3cba0ded857c5cc911fcf9c0782c7566c79af89ddc8e0ec4e48ece60c807a518" }, - "@polyengine/runtime@0.5.0": { - "integrity": "36ea9b74dd38c0f5fb941695cfa3223190fda54bc18f7328600ece082dbbb794", + "@polyengine/runtime@0.6.3": { + "integrity": "8f1ffc1c547793bc4cb3c1dec6a62c8cf0eb5cdb135b70e6df1fd042c6ec58f0", "dependencies": [ - "jsr:@polyengine/protocol@~0.2.2" + "jsr:@polyengine/protocol@~0.3.1" ] }, - "@polyengine/translator@0.5.0": { - "integrity": "2f9770f468bd0c649732e6107d69715dea715c71564fe5b0ba0997b5d70e81c3", + "@polyengine/translator@0.6.3": { + "integrity": "ccd0bb64ce3081d70b13e224c77e423faf7acf9953f62d4e0d2bab97c626c932", "dependencies": [ - "jsr:@polyengine/runtime@0.5" + "jsr:@polyengine/runtime@~0.6.3" ] }, - "@polyengine/wasi@0.5.0": { - "integrity": "61275e66895084807393bf93876b74be9cc1ca37641d56a07cf8c7b9a78ce091", + "@polyengine/wasi@0.6.3": { + "integrity": "5c738fe95101f22e469346618e79ce261dd636a5d44e89fdcdd40c33d8c92e17", "dependencies": [ - "jsr:@polyengine/protocol@~0.2.2" + "jsr:@polyengine/protocol@~0.3.1" ] }, - "@polymorph/test@0.2.1": { - "integrity": "1934b15f69d2c5f733cb42176aee8899f6da507a30ba1e25fad942fb82c0546e" + "@polymorph/test@0.3.0": { + "integrity": "dab82b57524c9ad375d3cc75db1f083c198a24d40105d3f1734f719b3db3f70a" } }, "npm": { - "@jsr/polymorph__test@0.2.1": { - "integrity": "sha512-5bkpwmjHp8Hjk69ADkQp1oo4CHyiPT2BAtQWbi7QrbTkrrwIDOn73JzsmZhzWT4mvzkWEL3Q4u1BSOra3sVBLQ==", - "tarball": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.2.1.tgz" + "@jsr/polymorph__test@0.3.0": { + "integrity": "sha512-NlpHmd5fA3KB/aAaXrBW4KX57UXkl/V9+RLa+fchFUsjASsigthEHMEiiNozRYN/l3xgsKMSC7J3IPp9VtECsQ==", + "tarball": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.3.0.tgz" }, "playwright-core@1.62.1": { "integrity": "sha512-wPYSwEBJY9GHraISXqyqtx0na0LpO3XEX7jNDhntbex7tzUS7kLnZsOlFruFJB4Hi/rhDMjXGqHewDZ68nYZVw==", @@ -57,16 +57,16 @@ }, "workspace": { "dependencies": [ - "jsr:@polyengine/ct-runner@0.5.0", - "jsr:@polyengine/protocol@0.2.2", - "jsr:@polyengine/runtime@0.5.0", - "jsr:@polyengine/translator@0.5.0", - "jsr:@polyengine/wasi@0.5.0", - "jsr:@polymorph/test@0.2.1" + "jsr:@polyengine/ct-runner@0.6.3", + "jsr:@polyengine/protocol@0.3.1", + "jsr:@polyengine/runtime@0.6.3", + "jsr:@polyengine/translator@0.6.3", + "jsr:@polyengine/wasi@0.6.3", + "jsr:@polymorph/test@0.3.0" ], "packageJson": { "dependencies": [ - "npm:@jsr/polymorph__test@0.2.1", + "npm:@jsr/polymorph__test@0.3.0", "npm:playwright-core@1.62.1" ] } diff --git a/conformance/driver-ct/polyengine/package-lock.json b/conformance/driver-ct/polyengine/package-lock.json index 9e1f2c4..c580bc4 100644 --- a/conformance/driver-ct/polyengine/package-lock.json +++ b/conformance/driver-ct/polyengine/package-lock.json @@ -6,14 +6,14 @@ "": { "name": "@polymorph/webcrypto-conformance-polyengine-browser", "dependencies": { - "@jsr/polymorph__test": "0.2.1", + "@jsr/polymorph__test": "0.3.0", "playwright-core": "1.62.1" } }, "node_modules/@jsr/polymorph__test": { - "version": "0.2.1", - "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.2.1.tgz", - "integrity": "sha512-5bkpwmjHp8Hjk69ADkQp1oo4CHyiPT2BAtQWbi7QrbTkrrwIDOn73JzsmZhzWT4mvzkWEL3Q4u1BSOra3sVBLQ==" + "version": "0.3.0", + "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.3.0.tgz", + "integrity": "sha512-NlpHmd5fA3KB/aAaXrBW4KX57UXkl/V9+RLa+fchFUsjASsigthEHMEiiNozRYN/l3xgsKMSC7J3IPp9VtECsQ==" }, "node_modules/playwright-core": { "version": "1.62.1", diff --git a/conformance/driver-ct/polyengine/package.json b/conformance/driver-ct/polyengine/package.json index fca7c54..9ce8dba 100644 --- a/conformance/driver-ct/polyengine/package.json +++ b/conformance/driver-ct/polyengine/package.json @@ -4,7 +4,7 @@ "type": "module", "description": "Node driver + bundled worker inputs for the polyengine-browser conformance rows: both suites runtime-linked inside headless Chromium with this repo's polyengine host module, through the upstream page driver and polyengine worker-main.", "dependencies": { - "@jsr/polymorph__test": "0.2.1", + "@jsr/polymorph__test": "0.3.0", "playwright-core": "1.62.1" } } diff --git a/conformance/driver-ct/polyengine/shard-worker.ts b/conformance/driver-ct/polyengine/shard-worker.ts index 95941cc..7d77bbb 100644 --- a/conformance/driver-ct/polyengine/shard-worker.ts +++ b/conformance/driver-ct/polyengine/shard-worker.ts @@ -61,7 +61,7 @@ self.onmessage = async (event: MessageEvent) => { // `polymorph:webcrypto/*` interface from the host module under test. // ct-runner adds `polymorph:test/test-context` itself. const imports = { - ...wasi({ cli: { env: {}, passthrough: false } }), + ...wasi({ cli: { env: {} } }), ...webcryptoImports(), }; diff --git a/examples/jco-demo/package-lock.json b/examples/jco-demo/package-lock.json index 5d5f629..a86a787 100644 --- a/examples/jco-demo/package-lock.json +++ b/examples/jco-demo/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "devDependencies": { "@bytecodealliance/jco-transpile": "0.7.0", - "@jsr/polymorph__test": "0.2.1" + "@jsr/polymorph__test": "0.3.0" } }, "node_modules/@bytecodealliance/jco-transpile": { @@ -84,9 +84,9 @@ } }, "node_modules/@jsr/polymorph__test": { - "version": "0.2.1", - "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.2.1.tgz", - "integrity": "sha512-5bkpwmjHp8Hjk69ADkQp1oo4CHyiPT2BAtQWbi7QrbTkrrwIDOn73JzsmZhzWT4mvzkWEL3Q4u1BSOra3sVBLQ==", + "version": "0.3.0", + "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.3.0.tgz", + "integrity": "sha512-NlpHmd5fA3KB/aAaXrBW4KX57UXkl/V9+RLa+fchFUsjASsigthEHMEiiNozRYN/l3xgsKMSC7J3IPp9VtECsQ==", "dev": true }, "node_modules/@napi-rs/wasm-runtime": { diff --git a/examples/jco-demo/package.json b/examples/jco-demo/package.json index 544e5f6..85a8f14 100644 --- a/examples/jco-demo/package.json +++ b/examples/jco-demo/package.json @@ -12,6 +12,6 @@ }, "devDependencies": { "@bytecodealliance/jco-transpile": "0.7.0", - "@jsr/polymorph__test": "0.2.1" + "@jsr/polymorph__test": "0.3.0" } } \ No newline at end of file diff --git a/js/componentize/wpt/parity/package-lock.json b/js/componentize/wpt/parity/package-lock.json index 3bba948..397c848 100644 --- a/js/componentize/wpt/parity/package-lock.json +++ b/js/componentize/wpt/parity/package-lock.json @@ -10,7 +10,7 @@ "devDependencies": { "@bytecodealliance/jco-transpile": "0.7.0", "@bytecodealliance/preview2-shim": "^0.19.0", - "@jsr/polymorph__test": "0.2.1", + "@jsr/polymorph__test": "0.3.0", "playwright-core": "^1.62.1" } }, @@ -86,9 +86,9 @@ } }, "node_modules/@jsr/polymorph__test": { - "version": "0.2.1", - "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.2.1.tgz", - "integrity": "sha512-5bkpwmjHp8Hjk69ADkQp1oo4CHyiPT2BAtQWbi7QrbTkrrwIDOn73JzsmZhzWT4mvzkWEL3Q4u1BSOra3sVBLQ==", + "version": "0.3.0", + "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.3.0.tgz", + "integrity": "sha512-NlpHmd5fA3KB/aAaXrBW4KX57UXkl/V9+RLa+fchFUsjASsigthEHMEiiNozRYN/l3xgsKMSC7J3IPp9VtECsQ==", "dev": true }, "node_modules/@napi-rs/wasm-runtime": { diff --git a/js/componentize/wpt/parity/package.json b/js/componentize/wpt/parity/package.json index eed0d0b..dc7bf6f 100644 --- a/js/componentize/wpt/parity/package.json +++ b/js/componentize/wpt/parity/package.json @@ -18,6 +18,6 @@ "@bytecodealliance/jco-transpile": "0.7.0", "@bytecodealliance/preview2-shim": "^0.19.0", "playwright-core": "^1.62.1", - "@jsr/polymorph__test": "0.2.1" + "@jsr/polymorph__test": "0.3.0" } } \ No newline at end of file diff --git a/js/jco/package-lock.json b/js/jco/package-lock.json index ef6ab63..ddc36b6 100644 --- a/js/jco/package-lock.json +++ b/js/jco/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "devDependencies": { "@bytecodealliance/jco-transpile": "0.7.0", - "@jsr/polymorph__test": "0.2.1", + "@jsr/polymorph__test": "0.3.0", "typescript": "^5.9.3" } }, @@ -85,9 +85,9 @@ } }, "node_modules/@jsr/polymorph__test": { - "version": "0.2.1", - "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.2.1.tgz", - "integrity": "sha512-5bkpwmjHp8Hjk69ADkQp1oo4CHyiPT2BAtQWbi7QrbTkrrwIDOn73JzsmZhzWT4mvzkWEL3Q4u1BSOra3sVBLQ==", + "version": "0.3.0", + "resolved": "https://npm.jsr.io/~/11/@jsr/polymorph__test/0.3.0.tgz", + "integrity": "sha512-NlpHmd5fA3KB/aAaXrBW4KX57UXkl/V9+RLa+fchFUsjASsigthEHMEiiNozRYN/l3xgsKMSC7J3IPp9VtECsQ==", "dev": true }, "node_modules/@napi-rs/wasm-runtime": { diff --git a/js/jco/package.json b/js/jco/package.json index f5289e7..bea25d7 100644 --- a/js/jco/package.json +++ b/js/jco/package.json @@ -13,6 +13,6 @@ "devDependencies": { "@bytecodealliance/jco-transpile": "0.7.0", "typescript": "^5.9.3", - "@jsr/polymorph__test": "0.2.1" + "@jsr/polymorph__test": "0.3.0" } } \ No newline at end of file diff --git a/js/polyengine/deno.json b/js/polyengine/deno.json index bc27f48..29913c8 100644 --- a/js/polyengine/deno.json +++ b/js/polyengine/deno.json @@ -1,11 +1,11 @@ { "name": "@polymorph/webcrypto", - "version": "0.5.0", + "version": "0.6.0", "license": "Apache-2.0", "exports": "./src/mod.ts", "//": "MODULE-IDENTITY CONSTRAINT (A22): this package couples only to @polyengine/protocol, whose copies are harmless by construction (the protocol's brand/handle vocabulary is designed to be robust to duplication), so there is no module-identity constraint to state here. This file's @polyengine/protocol entry is a caret range (published-package convention: consumers resolve one shared @polyengine/protocol across their dependency graph); conformance/driver-ct/polyengine/deno.json (repo-internal, not published) exact-pins the same package. The pin gate (just conformance-ct::polyengine-pin-check) asserts one @polyengine/protocol version repo-wide, one @polyengine/runtime version across the configs that resolve it, and that this package's lockfile carries no @polyengine/runtime specifier.", "imports": { - "@polyengine/protocol": "jsr:@polyengine/protocol@^0.2.2" + "@polyengine/protocol": "jsr:@polyengine/protocol@^0.3.1" }, "minimumDependencyAge": { "age": "P1D", "exclude": ["jsr:@polyengine/*"] }, "publish": { diff --git a/js/polyengine/deno.lock b/js/polyengine/deno.lock index 19dfc4d..587189e 100644 --- a/js/polyengine/deno.lock +++ b/js/polyengine/deno.lock @@ -1,16 +1,16 @@ { "version": "5", "specifiers": { - "jsr:@polyengine/protocol@~0.2.2": "0.2.2" + "jsr:@polyengine/protocol@~0.3.1": "0.3.1" }, "jsr": { - "@polyengine/protocol@0.2.2": { - "integrity": "ff470d7183924119ae181cc513093318f1587f7ad5c4bc02db7344e90c9ff52b" + "@polyengine/protocol@0.3.1": { + "integrity": "3cba0ded857c5cc911fcf9c0782c7566c79af89ddc8e0ec4e48ece60c807a518" } }, "workspace": { "dependencies": [ - "jsr:@polyengine/protocol@~0.2.2" + "jsr:@polyengine/protocol@~0.3.1" ] } }