Skip to content

Candidate verification

Recorded September 20, 2026 — P8

These results describe the original snapshot, not the current source or release. Local artifact paths are provenance records, not public downloads.

Archive index · Current support

This unpublished 0.1.0 candidate contained 97 operations and 404 signatures. Full-platform acceptance was not achieved.

Recorded results

Apple M1 Pro, macOS arm64, 16 GiB; Node 24.19.0, pnpm 12.4.2, Rust 1.96.0. Node 22.13.0, 24.19.0 and 26.8.0 consumed the same archive without rebuilding native.

CheckHistorical result
Build, generation, format, lint/clippy and typesPassed; existing reductions benchmark max-depth warning only
TS tests1,877 passed on each of the three Node versions
Rust11 passed
Registry/evidence/candidate policySeven passed, including incomplete/stale/dirty/changed-evidence rejection
Signature smoke1,616 signature/mode combinations, 11 lengths, ordinary/resident; AVX2 not-run
MPFR accuracy and extension rehearsalPassed
Tarball consumersAll three Node versions, declaration modes and missing-native fallback passed
Chromium / WebKit14 each, 28 total, including Vite and Worker lifecycle/response time
Firefox14 launch failures: Could not find profile folder, exitCode=1; no page assertions executed
Pipelines / Workers952 / 108 timing cases, plus ten response groups and 80 memory observations
ConsistencysourceUnchanged, assetsUnchanged and archiveUnchanged were true

The overall candidate was failed because Firefox could not start. Four other native targets remained pending. Browser launch failures did not exercise page assertions.

Size and performance

The first archive was 398,539 compressed bytes and 1,004,007 unpacked bytes, 27 files: one local native addon (453,904 bytes), scalar Wasm (141,709), SIMD Wasm (147,764), JS/types and licenses. It excluded source/tests/AsyncTask and was not the final five-platform package size. Its SHA-256 was d7045570e9af3329baab797b419bdf60b5db6adf7359709e170e96e62139bc04.

First-candidate f32, 1,048,576-element mul/add/clamp medians in ms:

BackendSeparate, reused outputFused, reused outputResident fusionResident end-to-end
native scalar4.8470.7970.7721.594
native NEON1.3110.0910.0900.629
Wasm scalar9.2633.9193.8174.204
Wasm SIMD1281.7420.3070.1220.367

The fair JS reused-output loop was 1.580 ms. Resident timings excluded transfer; end-to-end included the entire arena lifecycle. Three-node Worker total times were native scalar/NEON 1.724/0.452 ms and Wasm scalar/SIMD128 4.321/0.792 ms, slower than their synchronous equivalents. Large 64-node work improved main-thread response intervals without promising shorter completion times.

Evidence and remaining scope

The first candidate was artifacts/candidates/p8-2026-09-20/; the final recheck was artifacts/candidates/p8-final-2026-09-20/. Each retains its report, source archive and hashes. These records describe the old dirty workspace and old HEAD, not a later committed source tree. Preserve them as historical evidence.

The other four native targets, AVX2 execution, Firefox and kernel comparison remained open. Minimum-Node local evidence existed by this phase. Stable API/ maintenance commitments, versioning and publication were a separate process. Use the current candidate guide and roadmap.

Released under the MIT License.