Skip to content
← Work

Phodos JXL

In Progress

A JPEG XL decoder, and a case where one missing byte must mean rejection.

ADV-TRUNC-0001 · Recorded results

One missing byte

The complete input ends at byte 107,899. Select a recorded case to inspect what happens at that boundary.

Complete inputstrict · accepted
107,899 bytes presentDeclared end: 107,899

The exact-fit input was accepted.

0 bytes missing from the declared extent.

One byte shortstrict · rejected
107,898 bytes presentDeclared end: 107,899

Final-byte detail: 1 byte missing. Enlarged for visibility; the full-width bar cannot resolve a single byte.

Strict decoding rejected the input: the terminal frame extends past the available bytes.

1 byte missing from the declared extent.

Shorter prefix — strictstrict · rejected
53,949 bytes presentDeclared end: 107,899

Strict decoding rejected the input: the terminal frame extends past the available bytes.

53,950 bytes missing from the declared extent.

Shorter prefix — salvagesalvage · partial salvage
53,949 bytes presentDeclared end: 107,899

The shorter prefix produced partial output in salvage mode. This is a separate recovery result, not strict acceptance.

53,950 bytes missing from the declared extent.

Repository-recorded outcomes; no decoder runs in this page. This is one terminal-frame extent regression. It does not establish complete format coverage or universal pixel equality.

Source revision c75a428a92db72a4b81eb9c627cd0f0b20e3735d · Recorded date: not supplied by the record

What the boundary tells us

The terminal frame declares how far its data extends. In this recorded case, that end is byte 107,899. An exact-fit input was accepted; an input ending one byte earlier was rejected in strict mode.

The shorter 53,949-byte prefix has two separately recorded outcomes. Strict mode rejects it. Salvage mode recovers partial output. Partial recovery is useful for a different purpose; it is not evidence that the input is complete.

Scope of this exhibit

These are repository-recorded regression results from ADV-TRUNC-0001, not decoding performed by this page. The record does not supply an observation date. The source revision is shown beside the figure; this website has not rerun those decoder tests.

Phodos JXL is a Rust decoder under development. Its native output path still uses reference-implementation helpers. The selected conformance charter, implementation independence, full format coverage, and universal pixel equality are separate questions. This small exhibit establishes none of the latter three.