Specs

ZJX, measured.

The size and speed campaigns, a recorded archive run, the archive contract, and the current release. Every figure links to its record.

Three objectives

One format, three ways to build it.

Every objective writes the same format and restores the same bytes. The newest arrived in 1.29.0.

  1. when size matters

    Compact

    Tries several representations of each input and keeps the smallest complete archive. Byte-identical to 1.28.0 across the qualification corpora.

    Creating archives
  2. when balance matters

    Fast

    A reduced schedule: less creation time, still size-first. Byte-identical to 1.28.0 across the qualification corpora.

    Creating archives
  3. when wall time matters

    Ultrafast

    New in 1.29. One Zstandard level-1 pass per unit, packed and verified in parallel on four workers in the qualified speed configuration (up to eight). Trades some archive size for wall time; every integrity guarantee holds.

    The 1.29 support contract

Measured result

38.1% smaller than the best of 14 configurations.

One real service telemetry capture, archived by ZJX compact and 14 comparator configurations at strong settings. Pick a configuration to compare.

Dataset
Real service telemetry, one JSONL capture from 2026-06-03
ZJX
1.29.0 REDLINE · compact objective (bytes written by the 1.28.0 LOCKWIRE package; unchanged in 1.29.0, gate P6)
Measured
2026-09-06
Metric
Complete archive bytes, format overhead included
Verified
Every archive restored and matched to the source
Current line
REDLINE gate P6 confirmed byte-identical compact and fast archives against 1.28.0, so this result, written by the 1.28.0 LOCKWIRE executable on 2026-09-06, is the 1.29.0 result.

38.1% smaller zpaq -m5

  1. ZJX 1.29.0 compact4,412,984 bytes (4.41 MB)
  2. zpaq -m57,125,674 bytes (7.13 MB)

ZJX 1.29.0 compact: 4,412,984 bytes. zpaq -m5: 7,125,674 bytes. ZJX is 38.1% smaller.

Real telemetryComplete archive sizesByte-exact restores

Every configuration as a table
Complete archive bytes on the 342,409,609-byte telemetry capture, measured 2026-09-06
ConfigurationArchive bytesCompared with ZJX compactRestored and matched
ZJX 1.29.0 compact4,412,984ZJX resultyes
ZJX 1.29.0 fast4,412,984ZJX resultyes
zpaq -m57,125,674ZJX is 38.1% smaller (strongest comparator)yes
zstd --ultra -22 --long=31 (tar)7,280,110ZJX is 39.4% smalleryes
brotli -q 11 (tar)7,345,538ZJX is 39.9% smalleryes
xz -9e (tar)7,612,052ZJX is 42.0% smalleryes
zstd -19 --long=31 (tar)7,800,328ZJX is 43.4% smalleryes
zstd -19 (tar)8,149,050ZJX is 45.8% smalleryes
7-Zip LZMA2 -mx=9, single thread9,392,518ZJX is 53.0% smalleryes
7-Zip LZMA2 -mx=99,666,962ZJX is 54.3% smalleryes
RAR5 -m59,842,920ZJX is 55.2% smalleryes
7-Zip PPMd -mx=912,612,270ZJX is 65.0% smalleryes
bzip2 -9 (tar)34,456,468ZJX is 87.2% smalleryes
gzip -9 (tar)40,176,031ZJX is 89.0% smalleryes
zip -9 (deflate)40,176,334ZJX is 89.0% smalleryes
lz4 -12 (tar)56,999,958ZJX is 92.3% smalleryes

Qualified speed result

Ultrafast outpaces default tar | zstd -1 on both cohorts.

Create plus independent verify: 1.29.0 ultrafast with four workers against default tar | zstd -1 on a quiesced lab host. Each cohort is reported on its own.

Development cohort (RG017)

Sealed development cohort: silesia, enwik8, and a synthetic deduplication case; 12 paired rounds, 468 of 468 cells usable. The cohort the recipe was calibrated on.

1.247x the verified-creation speed of default tar | zstd -195% [1.223, 1.267]; Bonferroni over the three preregistered primary comparisons, lower bound 1.221; archive bytes 1.0005x the comparator's

Against default tar | zstd -1

  1. ZJX 1.29.0: ultrafast, four workers1.247x, faster
  2. tar | zstd -1, default1.00, the reference

Primary comparison: 95% [1.223, 1.267], Bonferroni-adjusted lower bound 1.221.

Held-out cohort (RG018, one shot)

Four sealed members plus six privately held-out cases (about 1.86 GB, six workload classes) selected by a rule frozen before any measurement; ten classes, 12 paired rounds, 360 of 360 cells usable, run once. Held out and unseen at the freeze, measured once against the unchanged package.

1.1959x the verified-creation speed of default tar | zstd -195% [1.1867, 1.2043]; 6 of 6 held-out cases restored exactly before the timed rounds

Against default tar | zstd -1

  1. ZJX 1.29.0: ultrafast, four workers1.1959x, faster
  2. tar | zstd -1, default1.00, the reference

Reported lane: 95% [1.1867, 1.2043]. Faster on seven of ten cases.

Two cohorts, reported apart95% intervalsOne cohort held out

Since 1.29.0: 1.29.6 IRONFLOOR is faster than 1.29.0 in every measured cell, 1.74x faster verified creation overall with byte-identical archives, and 1.29.6.5 SIGHTLINE makes the fast objective 1.14x to 12.80x faster on already-compressed media. Results since 1.29.0

Interactive archive walkthrough

Handle a recorded archive.

Recorded example. This page does not run ZJX or upload files.

A small synthetic project, archived once with the released 1.28.0 package, inspected and restored. Every control replays a saved outcome.

1Create

Recorded input: 6 files, 1 symbolic link, and 6 directories, 51,849 bytes in total. Synthetic, public-safe fixture generated by a seeded script: made-up service events, a settings file, a latency summary, a rotation script, and one relative symbolic link. No customer data.

Product
ZJX 1.28.0 LOCKWIRE, released package (executable SHA-256 prefix 10ee0d9e)
Objective and profile
compact objective, exact metadata profile
Recorded archive
5,164 bytes, digest prefix 8cdc660a4fad
Publication
committed, cleanup complete, durability synchronized
Metadata loss
none (nothing was refused or dropped)
Input members as recorded before archiving
MemberTypeBytes or targetModeModified (UTC)
README.mdfile73006442026-09-05T07:00:00.123456789Z
config/directory07552026-09-05T07:00:00.000000000Z
config/settings.jsonfile30306442026-09-05T07:01:00.000000000Z
docs/directory07552026-09-05T07:00:00.000000000Z
docs/latest-readme.mdsymbolic link../README.mdlink2026-09-05T07:00:00.123456789Z
logs/directory07552026-09-05T07:00:00.000000000Z
logs/service-2026-09-01.jsonlfile23,91406442026-09-06T07:59:59.987654321Z
logs/service-2026-09-02.jsonlfile26,46606442026-09-07T07:59:59.500000000Z
reports/directory07552026-09-05T07:00:00.000000000Z
reports/latency-summary.csvfile19706442026-09-07T08:02:00.250000000Z
scripts/directory07552026-09-05T07:00:00.000000000Z
scripts/rotate-logs.shfile23907552026-09-05T07:02:00.000000001Z

2Inspect

Recorded inspection of the archive: listing complete with 13 members, decoder readiness ready, manifest integrity sha256-prefix-16, payload digests verified without extracting (51,849 file bytes).

Select a member in the list to see its recorded metadata.

3Restore

Recorded full restore into a fresh destination: 6 files and 1 link, 51,849 bytes, publication committed. Dry run first reported destination absent and 6 planned files.

Recorded match: every member compared equal to its source

Source versus restored, compared after the recorded run
MemberComparedContent or targetPermission bitsModified time (ns)
README.mdcontents (SHA-256)matchmatchmatch
config/directoryn/amatchmatch
config/settings.jsoncontents (SHA-256)matchmatchmatch
docs/directoryn/amatchmatch
docs/latest-readme.mdlink targetmatchnot storedmatch
logs/directoryn/amatchmatch
logs/service-2026-09-01.jsonlcontents (SHA-256)matchmatchmatch
logs/service-2026-09-02.jsonlcontents (SHA-256)matchmatchmatch
reports/directoryn/amatchmatch
reports/latency-summary.csvcontents (SHA-256)matchmatchmatch
scripts/directoryn/amatchmatch
scripts/rotate-logs.shcontents (SHA-256)matchmatchmatch

Selected restore

One member, logs/service-2026-09-02.jsonl, restored on its own: 26,466 bytes, contents match, permission bits match, modified time match. The whole archive is verified before a selection is published.

Owner and group are never stored. Parent folders created by the selected restore carry the restore time, as the support matrix describes. Listing, testing, and comparing restored content are separate recorded facts; none stands in for another.

Capabilities

What an archive holds.

Four parts of one archive. The docs carry the full support contract.

Members

Files, directory trees, and safe relative symbolic links from one input or many, with file lists and include and exclude filters. Members list without extracting.

Creating and listing archives

Verification

Every payload carries a digest and every archive since 1.28 carries a manifest digest footer. Testing checks them without extracting; a restore verifies the whole archive before anything is published.

Inspecting and verifying

Protection

A password-protected archive wraps an ordinary archive in an authenticated-encryption envelope, so names and metadata are encrypted with the contents.

Password-protected archives

Restore

Restore everything or selected members into a fresh destination published with one atomic rename. Contents, permission bits, nanosecond timestamps, and safe links come back under the exact profile.

Restoring and the fidelity contract
Conceptual diagram of an archive: member payloads, the digest footer, the protection envelope, and the restored tree.
ZJX 1.29 line artwork: the lattice gauge at the red line, titled 1.29.5 to 1.29.6.6, the 1.29 line

Current release

ZJX 1.29.6.6

Released 2026-10-12Linux x86-64Tag v1.29.6.6

ZJX 1.29.6.6 is the current release, and ZJX 1.29 REDLINE is the current release line. Since 1.29.0 it added an adaptive resource planner (1.29.5 GRIDMIND), ran faster than 1.29.0 in every measured cell (1.29.6 IRONFLOOR), sped up fast mode on already-compressed media (1.29.6.5 SIGHTLINE), and hardened JSON-lines handling (1.29.6.6).

Package access

The command-line engine, for teams.

Linux x86-64, two executables, JSON results for pipelines. Request the package and its terms from Greyforge Labs; verify it against the published checksums.