From a95ec2f00b75ade49a2215104a44230202c20c7d Mon Sep 17 00:00:00 2001 From: Lann Martin Date: Sun, 9 Aug 2026 19:01:22 -0400 Subject: [PATCH] =?UTF-8?q?docs:=20record=20#16=20decision=20=E2=80=94=20r?= =?UTF-8?q?egistry=20publishing=20deferred,=20consumers=20pin=20git=20refs?= =?UTF-8?q?=20/=20prerelease=20artifacts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/architecture.md | 2 +- docs/consumers.md | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/architecture.md b/docs/architecture.md index 9c31f5e..0d132dc 100644 --- a/docs/architecture.md +++ b/docs/architecture.md @@ -532,7 +532,7 @@ are kept as gates. | Testing wasmtime-with-wasmtime blind spots | medium | official suite + definitions.py ports as independent checks; consumer suites as real-workload gates | | Testing-toolchain format skew: testgen assembles with `wast` 255 while the shim validates with wasmparser 0.252 (wasmtime-47 pin) — the 0.253–0.255 window re-arited 🧵 thread opcodes (byte-level desync) | low, bounded | known 5-entry xfail set; exits on the wasmtime bump ([#1](https://github.com/lann/deltic/issues/1)); testgen cannot downgrade (suite text syntax needs `wast` ≥255) | | CSP variance in embedders | low | baseline needs only `wasm-unsafe-eval` — an invariant, no path may require full `unsafe-eval` (§3); specialized JS is emission-only, deploy-time or server-side cache import ([#8](https://github.com/lann/deltic/issues/8)) | -| Consumer coupling churn: 7+ downstream repos tracking pre-1.0 plan/contract formats | medium | versioned releases ([#16](https://github.com/lann/deltic/issues/16)); strict formatVersion equality already fails loud; consumer matrices as release gate (the wasmtime↔embedder relationship); both sides practice exact pinning | +| Consumer coupling churn: 7+ downstream repos tracking pre-1.0 plan/contract formats | medium | exact pinning via git refs and/or `pre-` prerelease artifacts — registry publishing deferred ([#16](https://github.com/lann/deltic/issues/16), decision 2026-08-09); strict formatVersion equality already fails loud; consumer matrices as release gate (the wasmtime↔embedder relationship); both sides practice exact pinning | | Consumer scope creep pulling WASI implementations into the core | medium | shim package is a separate deliverable with consumer-driven scope; §2 non-goal stands; the L3 runner belongs in polymorph-test ([#14](https://github.com/lann/deltic/issues/14)) | | Host-boundary perf vs jco's generated JS (v1 interpreter) | low-medium | translation throughput measured (multi-MB components in tens of ms); cutover benches tracked with [#8](https://github.com/lann/deltic/issues/8); iroh's polling-workaround removal dominates first-consumer numbers regardless | diff --git a/docs/consumers.md b/docs/consumers.md index 4c9cf73..56bd90d 100644 --- a/docs/consumers.md +++ b/docs/consumers.md @@ -28,8 +28,9 @@ Their jco blockers map one-for-one onto this project's proven strengths - **Co-evolution, not compatibility.** Conventions are designed against the consumers' host modules as reference implementations; they port; both - sides pin exactly and upgrade deliberately (versioned releases: - [#16](https://github.com/lann/deltic/issues/16)). + sides pin exactly and upgrade deliberately — via git references and/or + `pre-` prerelease artifacts; registry publishing is deferred + ([#16](https://github.com/lann/deltic/issues/16), decision 2026-08-09). - **WASI interfaces are design inputs even though implementations stay out of core.** The conventions must make wasi p2 idioms (pollables, io streams, error-code enums, resource-heavy surfaces) and p3 idioms