Skip to content

conformance/js: consume @polymorph/test from JSR, retiring the npm-git pin - #385

Merged
lannbot merged 2 commits into
mainfrom
jsr-test-consumption
Aug 17, 2026
Merged

conformance/js: consume @polymorph/test from JSR, retiring the npm-git pin#385
lannbot merged 2 commits into
mainfrom
jsr-test-consumption

Conversation

@lannbot

@lannbot lannbot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Migrates the JS runner core's consumption to jsr:@polymorph/test (0.1.1): @jsr/polymorph__test deps via JSR's npm-compat registry (per-tree .npmrc), @jsr-name imports, and the deltic worker bundle pulling deltic-worker-main from jsr: directly. The retired layout assumptions surfaced one upstream bug — fixed in polymorph-test#97 / v0.1.1 (layout-agnostic browser-driver mount) — plus two local path fixes (host-imports.mjs, reuse-worker.mjs: the package root is the js/ subtree).

Pin discipline after the migration:

  • cargo side unchanged: rev pin at the v0.1.0 release commit (Rust crates unchanged in 0.1.1 — the within-minor caret contract's first live exercise).
  • pins gate drops its js-lock legs; new runner-js-pin-check asserts one JS-runner version across the four package-locks + the deltic deno.lock (negative-tested); deltic-pin-check scopes to @deltic/*.
  • Bump procedure updated (root Cargo.toml comment, AGENTS.md).

Gates (local, with browser legs): conformance-ct::all — 8 targets / 114546 results / 0 failing; signing 7 targets / 3860 / 0 failing; matrices diff-clean; deltic-module-check; both pin gates.

tls/websocket/webrtc-datachannels follow with the same pattern.

…the npm-git pin

The JS runner core now arrives from jsr:@polymorph/test instead of the
npm-git @polymorph/component-test-js pin: the five npm trees depend on
@jsr/polymorph__test (JSR's npm-compat registry, routed by per-tree
.npmrc), import sites use the @jsr name, and the deltic browser
worker's bundle pulls deltic-worker-main from jsr:@polymorph/test
directly (locked in the driver's deno.lock beside the @deltic graphs;
the served page's node_modules mapping is gone). host-imports.mjs and
reuse-worker.mjs follow the package's real layout — the module root is
the js/ subtree, so file paths lose the js/ prefix and the harness
mount serves /viewer/* (needs polymorph-test 0.1.1's layout-agnostic
browser-driver).

Pin discipline: the cargo side keeps its rev pin (the v0.1.0 release
commit; the Rust crates are unchanged in 0.1.1 — the first live
exercise of the within-minor caret contract). The pins gate loses its
js-lock legs; runner-js-pin-check asserts one @jsr/polymorph__test /
@polymorph/test version across the four package-locks and the deltic
deno.lock; deltic-pin-check scopes to @deltic packages now that the
locks carry @polymorph/test too. Bump procedure: root Cargo.toml
comment + AGENTS.md.

Gates: conformance-ct::all with browser legs — 8 targets / 114546
results / 0 failing (33 expected-fail) and signing 7 targets / 3860 /
0 failing (84 expected-fail), matrices diff-clean; deltic-module-check;
both pin gates green (runner-js negative-tested).
The polymorph-test setup action's js-locks input re-checked the
npm-git rev pin the previous commit removed; the JS runner core is
version-pinned from JSR now, gated by the repo's runner-js pin check.
@lannbot
lannbot merged commit 3687e36 into main Aug 17, 2026
10 checks passed
@lannbot
lannbot deleted the jsr-test-consumption branch August 17, 2026 20:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants