Skip to content

Compatibility and Release Baselines

This page records tested release baselines, not open-ended compatibility ranges. Current means the latest published DID package and ZK artifact set that this repository release-tested. Compatibility reference records a legacy release for migration comparison only; it does not imply continuing support.

Published npm manifests and matching release artifacts are authoritative for published package identities. Manifest engines, Compact language pragmas, and similar constraints describe admissible inputs; this matrix does not infer support for newer Node, pnpm, Compact, Midnight JS, wallet SDK, ledger, or proof-server versions. A major-only Node CI selector is not an exact patch-level runtime claim. Re-test the complete integration before moving any component beyond its recorded baseline or selector below.

This page is generated from docs-site/data/compatibility-baselines.json and current repository pins. Edit the source data or owning manifests and run pnpm --filter docs-site docs:sync-compatibility; do not edit this page by hand.

Evidence-backed matrix

Evidence-backed baselineDID 0.5.0DID 0.6.0DID 0.7.0
Recommended status wordingCompatibility reference / legacy; no continuing-support implicationCurrent published and release-tested baselineCurrent published and release-tested baseline
Coordinated package set@midnight-ntwrk/midnight-did-api@0.5.0
@midnight-ntwrk/midnight-did-domain@0.5.0
@midnight-ntwrk/midnight-did@0.5.0
@midnight-ntwrk/midnight-did-jubjub-schnorr@0.5.0
@midnight-ntwrk/midnight-did-contract@0.5.0
@midnight-ntwrk/midnight-did-api@0.6.0
@midnight-ntwrk/midnight-did-domain@0.6.0
@midnight-ntwrk/midnight-did@0.6.0
@midnight-ntwrk/midnight-did-jubjub-schnorr@0.6.0
@midnight-ntwrk/midnight-did-contract@0.6.0
@midnight-ntwrk/midnight-did-api@0.7.0
@midnight-ntwrk/midnight-did-domain@0.7.0
@midnight-ntwrk/midnight-did@0.7.0
@midnight-ntwrk/midnight-did-jubjub-schnorr@0.7.0
@midnight-ntwrk/midnight-did-contract@0.7.0
Release tag / source commitv0.5.0a14267cec3c1ab7e00bb0f058a54267d913a321bv0.6.08f788e2ef5652fa7f9cfdc71a3cac40d5f3683bfv0.7.0v0.7.0
Node CI selectorMajor 24Major 24Major 24
Node release-tested runtimeExact patch not retained24.20.0Exact patch not retained
pnpm tested baseline10.34.110.34.510.34.5
Compact compiler0.30.00.31.10.31.1
DID Compact pragma>= 0.20>= 0.20>= 0.20
Jubjub wrapper pragma0.22>= 0.22>= 0.22
compact-runtime0.16.00.16.00.16.0
compact-js2.5.02.5.02.5.0
Ledger generation/package@midnight-ntwrk/ledger-v8@8.1.0@midnight-ntwrk/ledger-v8@8.1.0@midnight-ntwrk/ledger-v8@8.1.0
Midnight JS package family4.0.24.0.24.0.2
Wallet SDK baseline@midnight-ntwrk/wallet-sdk-address-format@3.1.0
@midnight-ntwrk/wallet-sdk-dust-wallet@3.0.0
@midnight-ntwrk/wallet-sdk-facade@3.0.0
@midnight-ntwrk/wallet-sdk-hd@3.0.0
@midnight-ntwrk/wallet-sdk-shielded@2.1.0
@midnight-ntwrk/wallet-sdk-unshielded-wallet@2.1.0
@midnight-ntwrk/wallet-sdk-address-format@3.1.0
@midnight-ntwrk/wallet-sdk-dust-wallet@3.0.0
@midnight-ntwrk/wallet-sdk-facade@3.0.0
@midnight-ntwrk/wallet-sdk-hd@3.0.0
@midnight-ntwrk/wallet-sdk-shielded@2.1.0
@midnight-ntwrk/wallet-sdk-unshielded-wallet@2.1.0
@midnight-ntwrk/wallet-sdk-address-format@3.1.0
@midnight-ntwrk/wallet-sdk-dust-wallet@3.0.0
@midnight-ntwrk/wallet-sdk-facade@3.0.0
@midnight-ntwrk/wallet-sdk-hd@3.0.0
@midnight-ntwrk/wallet-sdk-shielded@2.1.0
@midnight-ntwrk/wallet-sdk-unshielded-wallet@2.1.0
Proof-server source imagemidnightntwrk/proof-server:8.0.3midnightntwrk/proof-server:8.0.3midnightntwrk/proof-server:8.0.3
Public ZK releasev0.5.0 / midnight-did-zk-artifacts-0.5.0.tar.gzv0.6.0 / midnight-did-zk-artifacts-0.6.0.tar.gzv0.7.0 / midnight-did-zk-artifacts-0.7.0.tar.gz
GHCR coordinateghcr.io/midnightntwrk/midnight-did-zk-artifacts:0.5.0ghcr.io/midnightntwrk/midnight-did-zk-artifacts:0.6.0ghcr.io/midnightntwrk/midnight-did-zk-artifacts:0.7.0

The GHCR coordinates identify matching generic OCI artifacts. Registry access requires Midnight organization access and GitHub Container Registry authentication; the linked GitHub Release archives are the public download path.

Publication-manifest caveats

The v0.5.0 source tag reports version 0.4.0 in the root and workspace manifests, while npm and the immutable GitHub Release artifacts identify all five packages as 0.5.0. The publication pipeline rewrites root/workspace versions before packing without committing those rewrites. This matrix therefore uses npm metadata and release artifacts as authority for the published 0.5.0 package identities, and uses tagged source only for its release-tested toolchain and runtime pins. Dependency similarity, engines, and language pragmas must not be read as broader compatibility guarantees.

The v0.7.0 source keeps version 0.6.0 in the root and workspace manifests. The manual publication pipeline rewrites the five package manifests and MIDNIGHT_DID_API_VERSION to 0.7.0 before packing, then verifies the coordinated tarball inventory without committing those release-only rewrites. The immutable v0.7.0 tag target and published manifests are therefore the authority for 0.7 package identity; the tagged repository inputs remain the authority for the toolchain and runtime pins in this matrix.

Keeping the matrix current

The generator derives the 0.7.0 row's repository-owned pins from the .nvmrc CI selector, the exact pnpm package-manager pin, root/workspace manifests, CI, quality, and publish workflow constants, both Compact language pragmas, and every runtime-owned midnightntwrk/proof-server fallback. The exact Node release runtime is retained separately as historical run evidence. Generation fails when those inputs drift from the reviewed machine-readable baseline. Add or update a reviewed release baseline rather than silently carrying old evidence forward.

Midnight DID reference implementation