Skip to content
Novus Examples

Intentionally broken files

Deliberately corrupt and invalid files, clearly labelled, for testing how your tool fails.

491 of 491 files
Preview of Intentionally Corrupt — Truncated JPEG
jpg
3.1 KB
Actual file preview for Intentionally Corrupt — Truncated JPEG

Intentionally Corrupt — Truncated JPEG

An intentionally corrupt JPEG, truncated to half its bytes, for testing how a decoder handles incomplete image data. This is not a valid image by design.

File
JPG · Edge Cases · 400 × 300 px
Preview of Clipped Tone — intentionally clipped (WAV)
wav
172.3 KB
Actual file preview for Clipped Tone — intentionally clipped (WAV)

Clipped Tone — intentionally clipped (WAV)

A 440 Hz tone driven past full scale and hard-clipped so its peaks are flat-topped — an intentionally clipped signal for testing clip and true-peak detection, distortion metering, and de-clipping tools.

File
WAV · Signals · 2 s
Preview of Password-protected PDF (encrypted)
pdf
2.4 KB
Actual file preview for Password-protected PDF (encrypted)

Password-protected PDF (encrypted)

An encrypted PDF protected with the openly-published sample password “novus-sample” — printing is allowed, editing denied. A fixture for testing password-prompt handling, decryption, and permission flags. There is nothing secret inside.

File
PDF · Secured · 1 page
Preview of Messy CSV (quoted commas, newlines, ragged rows)
csv
222 B
Actual file preview for Messy CSV (quoted commas, newlines, ragged rows)

Messy CSV (quoted commas, newlines, ragged rows)

A deliberately messy CSV: a quoted field with a comma, a quoted field with an embedded newline, escaped double-quotes, and ragged rows with too few and too many fields — the cases that break naïve parsers.

File
CSV · CSV · UTF-8
Preview of Intentionally Invalid JSON
json
165 B
Actual file preview for Intentionally Invalid JSON

Intentionally Invalid JSON

An intentionally invalid JSON file with a trailing comma and a missing closing brace — for testing parser error handling and messages. Not valid JSON by design.

File
JSON · JSON
Preview of Product Instance — Invalid (JSON)
json
91 B
Actual file preview for Product Instance — Invalid (JSON)

Product Instance — Invalid (JSON)

A product object that deliberately violates the product JSON Schema in five ways (out-of-range id, empty name, non-positive price, wrong boolean type, an extra property) — the negative case for testing validator error reporting.

File
JSON · Schema
Use case
Schema validationError handling· Paired fixture
Preview of Java Stack Trace (log)
log
916 B
Actual file preview for Java Stack Trace (log)

Java Stack Trace (log)

A realistic Java stack trace — a Spring-style NullPointerException with a nested 'Caused by' chain and '... N more' elision. A fixture for testing stack-trace parsers, error groupers, and log viewers.

File
LOG · Logs · 8 frames
Use case
Log parsingError handling· Conversion set
Preview of Python Traceback (log)
log
631 B
Actual file preview for Python Traceback (log)

Python Traceback (log)

A realistic Python traceback with a chained exception ('During handling of the above exception...') and a caret error indicator. A fixture for testing traceback parsers and error-reporting tools.

File
LOG · Logs · 4 frames
Use case
Log parsingError handling· Conversion set
Preview of Node.js Stack Trace (log)
log
551 B
Actual file preview for Node.js Stack Trace (log)

Node.js Stack Trace (log)

A realistic Node.js/Express stack trace — a TypeError with V8-style 'at function (file:line:col)' frames including an async frame and internal node: frames. A fixture for testing JS stack-trace parsers.

File
LOG · Logs · 7 frames
Use case
Log parsingError handling· Conversion set
Preview of CSV with Mixed Null Representations
csv
211 B
Actual file preview for CSV with Mixed Null Representations

CSV with Mixed Null Representations

A CSV where missing values are written seven different ways — empty string, NULL, NA, N/A, null, None, and a dash — across text and numeric columns. A fixture for testing null-detection and coercion in CSV importers.

File
CSV · Edge Cases · 8 rows
Preview of CSV with Mixed-Type Columns
csv
162 B
Actual file preview for CSV with Mixed-Type Columns

CSV with Mixed-Type Columns

A CSV whose 'value' column mixes integers, floats, scientific notation, dates, hex, thousands separators, and whitespace, and whose 'flag' column mixes a dozen boolean spellings. A torture test for type inference and schema detection.

File
CSV · Edge Cases · 12 rows
Preview of JSON with Duplicate Keys
json
234 B
Actual file preview for JSON with Duplicate Keys

JSON with Duplicate Keys

A JSON object that repeats several member names (name, tags, timeout, active). RFC 8259 permits duplicate keys but leaves the result parser-defined — most keep the last. A fixture for testing how a JSON parser resolves duplicates.

File
JSON · Edge Cases
Preview of CSV with Mixed Timestamp Formats
csv
421 B
Actual file preview for CSV with Mixed Timestamp Formats

CSV with Mixed Timestamp Formats

A CSV listing timestamps in eleven formats — ISO 8601 with Z and numeric offsets, millisecond precision, naive local, date-only, Unix epoch in seconds and milliseconds, US AM/PM, and RFC 1123. A fixture for testing date parsing and timezone normalisation.

File
CSV · Edge Cases · 11 rows
Preview of CSV Formula-Injection Safe Sample
csv
57 B
Actual file preview for CSV Formula-Injection Safe Sample

CSV Formula-Injection Safe Sample

A sanitization-test CSV with one equals-prefixed cell clearly labelled sample-only. Use it to verify importers neutralize spreadsheet formulas — not an attack list.

File
CSV · Edge Cases · 2 rows
Preview of ZIP - Data Descriptor (with signature)
zip
771 B
Actual file preview for ZIP - Data Descriptor (with signature)

ZIP - Data Descriptor (with signature)

A ZIP written the way a streaming writer must write one: general-purpose bit 3 is set, the local header carries CRC 0 and sizes 0, and the real values follow the compressed data in a data descriptor introduced by the optional PK\x07\x08 signature.

File
ZIP · Zip Structure · 3 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Data Descriptor (no signature)
zip
759 B
Actual file preview for ZIP - Data Descriptor (no signature)

ZIP - Data Descriptor (no signature)

The same streaming layout with the data descriptor's PK\x07\x08 signature omitted, which the spec permits and which breaks readers that scan for the signature instead of trusting the central directory. The central directory here carries the authoritative sizes and CRCs.

File
ZIP · Zip Structure · 3 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Data Descriptor (ZIP64 8-byte fields)
zip
915 B
Actual file preview for ZIP - Data Descriptor (ZIP64 8-byte fields)

ZIP - Data Descriptor (ZIP64 8-byte fields)

A streaming ZIP in ZIP64 form: the data descriptor's compressed and uncompressed sizes are 8 bytes each rather than 4. Readers that assume a fixed 16-byte descriptor desynchronise on the very next local header.

File
ZIP · Zip Structure · 3 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Directory Records Without a Trailing Slash
zip
1 KB
Actual file preview for ZIP - Directory Records Without a Trailing Slash

ZIP - Directory Records Without a Trailing Slash

Directory records whose names do NOT end in a slash — the directory-ness is carried only by the MS-DOS attribute bit in the external attributes field. A reader that decides by name alone creates three empty files called project, project/src and project/data, and then cannot create the directories that have to replace them.

File
ZIP · Zip Structure
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Case-Only Name Collision
zip
760 B
Actual file preview for ZIP - Case-Only Name Collision

ZIP - Case-Only Name Collision

Three members under docs/ whose names differ only in letter case. On ext4 they are three files; on NTFS or a default APFS volume they are one file written three times, and the last one silently wins. Each payload names its own casing so you can tell which survived.

File
ZIP · Zip Names · 4 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Backslash Path Separators
zip
899 B
Actual file preview for ZIP - Backslash Path Separators

ZIP - Backslash Path Separators

Two members use a backslash as the path separator, which APPNOTE 4.4.17.1 forbids and which Windows-written archives contain anyway. Readers that split on '/' only will create files literally named 'data\config.json' in the extraction root instead of data/config.json.

File
ZIP · Zip Names · 4 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Dot Segments in Member Paths
zip
925 B
Actual file preview for ZIP - Dot Segments in Member Paths

ZIP - Dot Segments in Member Paths

Member names carrying './' prefixes, an inner './' and one inner '../' that cancels the segment before it. Every path resolves inside the archive root, so this exercises a normaliser without being a traversal payload: docs/sub/../notes.md must land at docs/notes.md, not at docs/sub/notes.md and not outside the extraction directory.

File
ZIP · Zip Names · 4 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - ZIP64 in Local and Central Headers
zip
667 B
Actual file preview for ZIP - ZIP64 in Local and Central Headers

ZIP - ZIP64 in Local and Central Headers

Both the local file headers and the central directory carry a ZIP64 extended information extra field (0x0001), with the 32-bit size fields set to 0xFFFFFFFF as the spec requires. The payload is a few hundred bytes: ZIP64 is present because the writer could not seek, not because the data is large, which is precisely the case size-based heuristics miss.

File
ZIP · Zip64 · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - ZIP64 in the Central Directory Only
zip
627 B
Actual file preview for ZIP - ZIP64 in the Central Directory Only

ZIP - ZIP64 in the Central Directory Only

The local headers are plain 32-bit while the central directory carries the ZIP64 extra field. This is legal and common: a writer that streams cannot know at local-header time whether it will need ZIP64, so it commits to the wide fields only when it writes the directory.

File
ZIP · Zip64 · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - ZIP64 Relative Offset Field
zip
643 B
Actual file preview for ZIP - ZIP64 Relative Offset Field

ZIP - ZIP64 Relative Offset Field

A central directory whose ZIP64 extra field carries the relative local-header offset as well as the sizes. The ZIP64 extra is variable length and its members appear in a fixed order, so a reader that assumes a 16-byte or 24-byte block reads the offset out of the wrong slot.

File
ZIP · Zip64 · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - ZIP64 End of Central Directory Only
zip
587 B
Actual file preview for ZIP - ZIP64 End of Central Directory Only

ZIP - ZIP64 End of Central Directory Only

Ordinary 32-bit member records terminated by a ZIP64 end-of-central-directory record, its locator, and then a normal 32-bit end record — the belt-and-braces trailer some writers always emit. A reader must find the classic end record first, notice the locator in front of it, and reconcile two directories that agree.

File
ZIP · Zip64 · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Single-Segment Split Marker (PK00)
zip
539 B
Actual file preview for ZIP - Single-Segment Split Marker (PK00)

ZIP - Single-Segment Split Marker (PK00)

A complete, extractable ZIP that begins with the four-byte PK00 marker a splitting writer emits when the archive fitted into a single segment after all. The marker shifts every local header four bytes forward, so a reader that assumes the first local header sits at offset 0 misparses a file it is perfectly capable of reading.

File
ZIP · Zip Spanned · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Spanning Signature Marker
zip
539 B
Actual file preview for ZIP - Spanning Signature Marker

ZIP - Spanning Signature Marker

A complete ZIP prefixed with the 0x08074B50 spanning signature. That value is also the data descriptor signature, so a reader scanning the byte stream for descriptors finds one before the first local header — a genuine ambiguity in the format, reproduced here in a file that is otherwise entirely ordinary.

File
ZIP · Zip Spanned · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Multi-Disk Final Segment
zip
535 B
Actual file preview for ZIP - Multi-Disk Final Segment

ZIP - Multi-Disk Final Segment

The last segment of a two-part spanned set: its end record says this is disk 1, that the central directory lives on disk 1, and that 2 of the archive's 4 entries are here. The bytes are well-formed - this is not a corrupt file - but a reader given it alone must say so rather than silently reporting a 2-entry archive. The .z01 first segment is deliberately absent, because .z01 is not a format this catalog registers.

File
ZIP · Zip Spanned
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Long Archive Comment
zip
1023 B
Actual file preview for ZIP - Long Archive Comment

ZIP - Long Archive Comment

A 512-byte archive comment pushes the end-of-central-directory record well away from the end of the file. Readers that seek to the last 22 bytes and expect the end signature there fail immediately; correct readers scan backwards for it, which is what the format requires.

File
ZIP · Zip Metadata · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Unknown Extra Field ID
zip
617 B
Actual file preview for ZIP - Unknown Extra Field ID

ZIP - Unknown Extra Field ID

An extra field with header ID 0x9901, which is assigned to nothing, sits alongside a recognised extended-timestamp field in a different order in each header. The extra-field area is a length-prefixed chain, so the only correct behaviour is to skip unknown IDs by their declared length and keep walking.

File
ZIP · Zip Metadata · 2 members
Use case
Conversion testingError handling+1· Conversion set
Preview of ZIP - Leading Non-Archive Bytes
zip
1.1 KB
Actual file preview for ZIP - Leading Non-Archive Bytes

ZIP - Leading Non-Archive Bytes

397 bytes of readable text precede the first local file header, giving the layout of a self-extracting archive without shipping an executable stub. Readers that start at byte zero see garbage; readers that find the end-of-central-directory record and work backwards read all three members. Open the file in a text editor to read the prefix.

File
ZIP · Zip Payload · 3 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Zero-Length Members
zip
699 B
Actual file preview for ZIP - Zero-Length Members

ZIP - Zero-Length Members

Three empty files stored three ways - stored, deflated, and deflated behind a data descriptor - beside one real member. An empty deflate stream is still two bytes on disk with CRC 0, so readers that treat compressed size 0 as 'no data' and readers that treat CRC 0 as 'not computed' both go wrong here.

File
ZIP · Zip Payload · 4 members
Use case
Conversion testingError handling· Conversion set
Preview of TAR - USTAR Prefix-Split Path
tar
10 KB
Actual file preview for TAR - USTAR Prefix-Split Path

TAR - USTAR Prefix-Split Path

A 141-character path stored the only way plain USTAR can store one: split at a slash across the header's 155-byte prefix field and its 100-byte name field. Readers that ignore the prefix field report the truncated tail and write the file to the wrong place.

File
TAR · Tar Format · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of TAR - GNU Long Name Record
tar
10 KB
Actual file preview for TAR - GNU Long Name Record

TAR - GNU Long Name Record

A 125-character path whose long component contains no slash at all, so the USTAR prefix field cannot store it. This archive uses a preceding 'L' (GNUTYPE_LONGNAME) record whose payload is the full path. Its group siblings encode the same class of path with the other two mechanisms.

File
TAR · Tar Format · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of TAR - PAX Path Header
tar
10 KB
Actual file preview for TAR - PAX Path Header

TAR - PAX Path Header

A 125-character path whose long component contains no slash at all, so the USTAR prefix field cannot store it. This archive uses a preceding 'x' extended header carrying a path= record in UTF-8. Its group siblings encode the same class of path with the other two mechanisms.

File
TAR · Tar Format · 2 members
Use case
Conversion testingError handling· Conversion set
Preview of TAR - FIFO and Device Node Records
tar
10 KB
Actual file preview for TAR - FIFO and Device Node Records

TAR - FIFO and Device Node Records

A FIFO, a character device and a block device, each a header with no data blocks and with the device numbers in the devmajor/devminor fields. Unprivileged extraction cannot create the two device nodes, so the correct behaviour is to skip them with a warning rather than to abort the whole archive or to create empty regular files in their place.

File
TAR · Tar Records · 4 members
Use case
Conversion testingError handling+1· Conversion set
Preview of TAR - Large UID/GID (GNU base-256)
tar
10 KB
Actual file preview for TAR - Large UID/GID (GNU base-256)

TAR - Large UID/GID (GNU base-256)

The uid and gid fields hold 7 octal digits, so they top out at 2097151. This member is owned by uid 3000000, which needs GNU base-256 encoding: the field's high bit is set and the remaining bytes are a big-endian integer. Its group sibling encodes the same ownership the other way, so a reader can be checked against both without a second variable.

File
TAR · Tar Records · 2 members
Use case
Conversion testingMetadata testing+1· Conversion set
Preview of TAR - Large UID/GID (PAX records)
tar
10 KB
Actual file preview for TAR - Large UID/GID (PAX records)

TAR - Large UID/GID (PAX records)

The uid and gid fields hold 7 octal digits, so they top out at 2097151. This member is owned by uid 3000000, which needs PAX uid=/gid= records in an 'x' extended header, with the classic field left at its maximum. Its group sibling encodes the same ownership the other way, so a reader can be checked against both without a second variable.

File
TAR · Tar Records · 2 members
Use case
Conversion testingMetadata testing+1· Conversion set
Preview of TAR - Missing End-of-Archive Blocks
tar
3 KB
Actual file preview for TAR - Missing End-of-Archive Blocks

TAR - Missing End-of-Archive Blocks

A tar that ends immediately after its last member, with none of the two 512-byte zero blocks the format calls for. Plenty of writers do this and GNU tar reads it with a warning; readers that treat a missing end marker as a truncated archive reject three perfectly good members.

File
TAR · Tar Stream · 3 members
Use case
Conversion testingError handling· Conversion set
Preview of TAR - Trailing Data After the End Blocks
tar
4.2 KB
Actual file preview for TAR - Trailing Data After the End Blocks

TAR - Trailing Data After the End Blocks

A complete tar with 218 bytes of plain text appended after the end-of-archive blocks. A reader must stop at those blocks; one that keeps scanning finds a block whose checksum does not verify and may report the whole archive as corrupt instead of ignoring bytes that were never part of it.

File
TAR · Tar Stream · 3 members
Use case
Conversion testingError handling· Conversion set
Preview of ZIP - Empty Archive With a Comment
zip
150 B
Actual file preview for ZIP - Empty Archive With a Comment

ZIP - Empty Archive With a Comment

A valid ZIP with zero members whose end record still carries an archive comment - the combination that catches readers which treat 'no entries' as 'not an archive' and readers which look for the end record only in the last 22 bytes. Its group siblings are the same empty case in five other container formats.

File
ZIP · Empty · 0 members
Use case
Conversion testingError handling· Conversion set
Preview of TAR - Empty Archive
tar
1 KB
Actual file preview for TAR - Empty Archive

TAR - Empty Archive

An empty tar is not a zero-byte file - it is exactly two 512-byte blocks of zeros, the end-of-archive marker with nothing in front of it. Writers that emit nothing at all produce a file most readers reject, which is the bug this 1024-byte file exists to distinguish.

File
TAR · Empty · 0 members
Use case
Conversion testingError handling· Conversion set
Preview of TGZ - Empty Archive
tgz
29 B
Actual file preview for TGZ - Empty Archive

TGZ - Empty Archive

The empty tar wrapped in gzip, which is what `tar czf` produces from an empty directory. The gzip header and trailer are still there and still have to parse, so this separates 'cannot read the codec' from 'read the codec and found nothing inside'.

File
TGZ · Empty · 0 members
Use case
Conversion testingError handling· Conversion set
Preview of TBZ2 - Empty Archive
tbz2
42 B
Actual file preview for TBZ2 - Empty Archive

TBZ2 - Empty Archive

The empty tar under bzip2. Its payload is 1024 identical bytes, which is the run-length case bzip2's block sorter treats specially, so this doubles as the smallest sane bzip2 stream to test a decoder against.

File
TBZ2 · Empty · 0 members
Use case
Conversion testingError handling+1· Conversion set
Preview of CPIO - Empty Archive (trailer only)
cpio
124 B
Actual file preview for CPIO - Empty Archive (trailer only)

CPIO - Empty Archive (trailer only)

An empty cpio archive is a single TRAILER!!! header record - a full 110-byte newc header with every numeric field zero - plus its alignment padding. Readers that look for member data before checking the name find none and must still report a valid, empty archive.

File
CPIO · Empty · 0 members
Use case
Conversion testingError handling· Conversion set
Preview of AR - Empty Archive (magic only)
ar
8 B
Actual file preview for AR - Empty Archive (magic only)

AR - Empty Archive (magic only)

The smallest valid archive in this catalog: the 8-byte ar magic and nothing after it. ar has no trailer record, so end-of-file is the only end marker, and this is what an empty static library or an empty .deb control archive looks like on disk.

File
AR · Empty · 0 members
Use case
Conversion testingError handling· Conversion set
Preview of EPUB — Intentionally Invalid (bad OCF mimetype)
epub
6.9 KB
Actual file preview for EPUB — Intentionally Invalid (bad OCF mimetype)

EPUB — Intentionally Invalid (bad OCF mimetype)

An intentionally invalid EPUB: identical to the valid twin except its OCF mimetype entry is compressed and mislabelled as application/zip — a real EPUB spec violation. For testing how readers and validators handle a malformed container. Clearly labelled; harmless content.

File
EPUB · Epub
Use case
Conversion testingError handling· Paired fixture
Preview of EPUB 3 - Fixed Layout, Intentionally Invalid (no viewport meta)
epub
2.9 KB
Actual file preview for EPUB 3 - Fixed Layout, Intentionally Invalid (no viewport meta)

EPUB 3 - Fixed Layout, Intentionally Invalid (no viewport meta)

An intentionally invalid fixed-layout EPUB: rendition:layout says pre-paginated but no content document declares a viewport meta, so the canvas size is undefined. Intentionally invalid and clearly labelled - for testing validators and the fallback a reader picks when it has no dimensions to scale to.

File
EPUB · Fixed Layout
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Media Overlay with No media:duration
epub
2.7 KB
Actual file preview for EPUB 3 - Media Overlay with No media:duration

EPUB 3 - Media Overlay with No media:duration

A working media overlay whose package omits the required media:duration metadata entirely. Everything else is intact, so this fixture isolates one question: does the reader refuse the overlay, or fall back to measuring the audio itself?

File
EPUB · Media Overlay
Use case
Media accessibilityConversion testing+1· Conversion set
Preview of EPUB 3 - Media Overlay, Intentionally Invalid (dangling text src)
epub
2.8 KB
Actual file preview for EPUB 3 - Media Overlay, Intentionally Invalid (dangling text src)

EPUB 3 - Media Overlay, Intentionally Invalid (dangling text src)

An intentionally invalid media overlay: the second par's text src points at a fragment identifier that does not exist in the chapter. Intentionally invalid and clearly labelled - for testing whether playback skips the orphaned segment, stops dead, or throws.

File
EPUB · Media Overlay
Use case
Media accessibilityConversion testing+1· Conversion set
Preview of EPUB 3 - Embedded Font, Intentionally Invalid (obfuscation not declared)
epub
3.6 KB
Actual file preview for EPUB 3 - Embedded Font, Intentionally Invalid (obfuscation not declared)

EPUB 3 - Embedded Font, Intentionally Invalid (obfuscation not declared)

An intentionally invalid EPUB whose embedded font is IDPF-obfuscated while META-INF/encryption.xml is missing, so nothing in the container says the bytes were scrambled. Intentionally invalid and clearly labelled - this is the real-world failure where a book silently renders in a substitute face.

File
EPUB · Embedded Fonts
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Intentionally Invalid (NCX only, no navigation document)
epub
3.5 KB
Actual file preview for EPUB 3 - Intentionally Invalid (NCX only, no navigation document)

EPUB 3 - Intentionally Invalid (NCX only, no navigation document)

An intentionally invalid EPUB 3 that ships only an NCX: no manifest item carries properties="nav", which EPUB 3 requires. Intentionally invalid and clearly labelled - it separates readers that fall back to the NCX from readers that refuse to open a book with no navigation document.

File
EPUB · Navigation
Use case
Error handlingConversion testing· Paired fixture
Preview of EPUB 3 - Navigation Document and NCX Disagree
epub
3.9 KB
Actual file preview for EPUB 3 - Navigation Document and NCX Disagree

EPUB 3 - Navigation Document and NCX Disagree

A book whose two navigation surfaces tell different stories: the NCX reorders the chapters, omits one, and points at a chapter9.xhtml that does not exist, while nav.xhtml is correct. For testing which surface a reader trusts and how it handles a dead NCX target.

File
EPUB · Navigation
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - MathML, Intentionally Invalid (mathml property missing)
epub
2.2 KB
Actual file preview for EPUB 3 - MathML, Intentionally Invalid (mathml property missing)

EPUB 3 - MathML, Intentionally Invalid (mathml property missing)

An intentionally invalid EPUB: the content document contains MathML while its manifest item omits properties="mathml", so the package understates what a reader needs. Intentionally invalid and clearly labelled - identical to its declared twin in every other byte of markup.

File
EPUB · Mathml
Use case
Error handlingConversion testing· Paired fixture
Preview of EPUB 3 - Spine Where Every Item Is linear="no"
epub
3.4 KB
Actual file preview for EPUB 3 - Spine Where Every Item Is linear="no"

EPUB 3 - Spine Where Every Item Is linear="no"

The pathological spine: every itemref is marked linear="no", so the book declares no default reading order at all. For testing what a reader opens to when the sequence it was going to page through is empty.

File
EPUB · Spine
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Spine, Intentionally Invalid (repeated itemref)
epub
3.4 KB
Actual file preview for EPUB 3 - Spine, Intentionally Invalid (repeated itemref)

EPUB 3 - Spine, Intentionally Invalid (repeated itemref)

An intentionally invalid spine that references chapter one twice, in first and second position. Intentionally invalid and clearly labelled - it exposes pagination and progress code that assumes spine positions map one-to-one onto documents.

File
EPUB · Spine
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Intentionally Invalid (spine idref resolves to nothing)
epub
3.4 KB
Actual file preview for EPUB 3 - Intentionally Invalid (spine idref resolves to nothing)

EPUB 3 - Intentionally Invalid (spine idref resolves to nothing)

An intentionally invalid EPUB whose spine ends with an itemref pointing at a manifest id that does not exist. Intentionally invalid and clearly labelled - the first three chapters are intact, so a reader can recover if it chooses to.

File
EPUB · Broken Package
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Intentionally Invalid (manifest item has no file)
epub
2.8 KB
Actual file preview for EPUB 3 - Intentionally Invalid (manifest item has no file)

EPUB 3 - Intentionally Invalid (manifest item has no file)

An intentionally invalid EPUB that declares chapter3.xhtml in the manifest, the spine and the contents, while the file itself is not in the ZIP. Intentionally invalid and clearly labelled - for testing the difference between a missing resource and an unreadable book.

File
EPUB · Broken Package
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Intentionally Invalid (XHTML declared as text/html)
epub
3.4 KB
Actual file preview for EPUB 3 - Intentionally Invalid (XHTML declared as text/html)

EPUB 3 - Intentionally Invalid (XHTML declared as text/html)

An intentionally invalid EPUB whose second chapter is declared as text/html instead of application/xhtml+xml, making it a foreign resource in the reading order with no fallback. Intentionally invalid and clearly labelled; the bytes of that file are ordinary, valid XHTML.

File
EPUB · Broken Package
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Intentionally Invalid (duplicate manifest id)
epub
3.4 KB
Actual file preview for EPUB 3 - Intentionally Invalid (duplicate manifest id)

EPUB 3 - Intentionally Invalid (duplicate manifest id)

An intentionally invalid EPUB where two manifest items carry the same id, so the spine's references become ambiguous and one chapter can be reached twice while another cannot be reached at all. Intentionally invalid and clearly labelled - an XML ID uniqueness violation, not a container defect.

File
EPUB · Broken Package
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - Intentionally Invalid (container declares no rootfile)
epub
3.3 KB
Actual file preview for EPUB 3 - Intentionally Invalid (container declares no rootfile)

EPUB 3 - Intentionally Invalid (container declares no rootfile)

An intentionally invalid EPUB whose META-INF/container.xml contains an empty rootfiles element, so nothing points at the package document - even though OEBPS/content.opf is present and correct. Intentionally invalid and clearly labelled; it separates readers that guess from readers that give up cleanly.

File
EPUB · Broken Package
Use case
Error handlingConversion testing· Conversion set
Preview of EPUB 3 - UTF-16 Package Document
epub
2.3 KB
Actual file preview for EPUB 3 - UTF-16 Package Document

EPUB 3 - UTF-16 Package Document

The package document is encoded as UTF-16 little-endian with a byte order mark while the content documents stay UTF-8 - a combination EPUB permits and almost nothing tests. For finding the parser that opens the OPF as UTF-8 and sees a file full of null bytes.

File
EPUB · Metadata Encoding
Use case
Encoding detectionMetadata testing+1· Conversion set
Preview of EPUB 3 - UTF-8 BOM on Every XML Part
epub
2.2 KB
Actual file preview for EPUB 3 - UTF-8 BOM on Every XML Part

EPUB 3 - UTF-8 BOM on Every XML Part

The package document, the navigation document and the chapter each begin with a UTF-8 byte order mark before the XML declaration. Legal, and the classic reason a strict parser reports content before the prolog on a file that looks perfectly fine in an editor.

File
EPUB · Metadata Encoding
Use case
Encoding detectionMetadata testing+1· Conversion set
Preview of glTF — External .bin Buffer
gltf
1.3 KB
Actual file preview for glTF — External .bin Buffer

glTF — External .bin Buffer

A glTF whose single buffer is a relative URI to a sibling .bin — the layout every DCC tool writes by default, and the one that breaks the moment an asset is moved or served from a different directory. Download the .bin in this group alongside it.

File
GLTF · Buffers
Use case
Conversion testingError handling· Conversion set
Preview of BIN — glTF External Buffer Payload
bin
10.4 KB
Actual file preview for BIN — glTF External Buffer Payload

BIN — glTF External Buffer Payload

The binary payload the external-buffer glTF in this group points at: tightly-packed positions, normals and indices with 4-byte alignment padding. Not viewable on its own — its bufferViews live in the JSON.

File
BIN · Buffers
Use case
Conversion testingError handling· Conversion set
Preview of glTF — External Texture URI
gltf
19.2 KB
Actual file preview for glTF — External Texture URI

glTF — External Texture URI

Geometry inline, texture out of line: the image is a relative URI to a sibling PNG while the buffer is embedded, which is the mixed layout that trips asset packers expecting all-or-nothing. Download the PNG in this group with it.

File
GLTF · Buffers
Use case
Texture map testingConversion testing+1· Conversion set
Preview of PLY — NaN Vertex Coordinates
ply
557 B
Actual file preview for PLY — NaN Vertex Coordinates

PLY — NaN Vertex Coordinates

A structurally perfect ASCII PLY in which one vertex reads `nan nan nan` — the value an exporter writes after dividing by a zero-length vector. The header, counts and face list are all correct, so the file parses; every bounding box, centroid and normal computed from it is then poisoned.

File
PLY · Degenerate
Use case
Mesh repair testingError handling· Conversion set
Preview of OBJ — NaN Vertex Coordinates
obj
443 B
Actual file preview for OBJ — NaN Vertex Coordinates

OBJ — NaN Vertex Coordinates

The same NaN vertex in Wavefront OBJ, where the literal is the bare token `nan`. Normals are deliberately not written, because the three faces touching that vertex have no computable normal — which is exactly the state an importer must handle rather than serialise.

File
OBJ · Degenerate · 12 triangles
Use case
Mesh repair testingError handling· Conversion set
Preview of TTF — Variable Font Missing the STAT Table (intentionally incomplete)
ttf
10.8 KB
Actual file preview for TTF — Variable Font Missing the STAT Table (intentionally incomplete)

TTF — Variable Font Missing the STAT Table (intentionally incomplete)

A variable font that is intentionally incomplete: the STAT table OpenType requires of every variable font has been removed, while fvar, gvar and the named instances remain. It still renders, which is exactly the problem — style linking, family grouping and instance naming quietly degrade instead of failing loudly.

File
TTF · Variable Axes
Use case
Conversion testingError handling+1· Conversion set
Preview of TTF — Vertical Metrics: hhea, typo and win All Disagree
ttf
6.2 KB
Actual file preview for TTF — Vertical Metrics: hhea, typo and win All Disagree

TTF — Vertical Metrics: hhea, typo and win All Disagree

The same outlines with all three vertical-metric families deliberately set to different sums — 1000, 1250 and 1400 units. The default line height a renderer produces tells you exactly which family it read, which is the fastest way to explain why one browser or one word processor lays your text out differently from the rest. Original typeface, free to use.

File
TTF · Metrics
Use case
Conversion testingMetadata testing+1· Paired fixture
Preview of TTF — usWinAscent/Descent Smaller Than the Glyph Bounding Box
ttf
6.2 KB
Actual file preview for TTF — usWinAscent/Descent Smaller Than the Glyph Bounding Box

TTF — usWinAscent/Descent Smaller Than the Glyph Bounding Box

usWinAscent and usWinDescent are deliberately set below the real glyph bounding box, which is the classic cause of clipped accents and cut-off descenders on Windows. The head table still reports the true extents, so a validator can catch the contradiction and a renderer can be measured against it. Original typeface, free to use.

File
TTF · Metrics
Use case
Conversion testingError handling+1· Conversion set
Preview of TTF — unitsPerEm 128 (coarse em grid)
ttf
5.6 KB
Actual file preview for TTF — unitsPerEm 128 (coarse em grid)

TTF — unitsPerEm 128 (coarse em grid)

The same design squeezed onto a 128-unit em, the coarse end of what the specification allows. Coordinates quantise hard, so this is the fixture for testing scaling maths, rounding, and any code that assumes a font has enough resolution to hint. Original typeface, free to use.

File
TTF · Metrics
Use case
Conversion testingMetadata testing+1· Conversion set
Preview of TTF — Subset with Layout Features Dropped
ttf
4 KB
Actual file preview for TTF — Subset with Layout Features Dropped

TTF — Subset with Layout Features Dropped

The same probe-character subset with every OpenType feature stripped — what many web-font pipelines produce by default. GSUB and GPOS survive as empty shells, so a tool that merely checks whether the tables exist reports the font as fully featured while nothing ligates, kerns, or turns into small caps. Original typeface, free to use.

File
TTF · Subset
Use case
Conversion testingPerformance testing+1· Paired fixture
Preview of TTF — Overlapping Contours with OVERLAP_SIMPLE and OVERLAP_COMPOUND
ttf
6.5 KB
Actual file preview for TTF — Overlapping Contours with OVERLAP_SIMPLE and OVERLAP_COMPOUND

TTF — Overlapping Contours with OVERLAP_SIMPLE and OVERLAP_COMPOUND

This whole family is drawn as overlapping strokes rather than merged outlines, and this cut sets the two flags that tell a rasteriser so: OVERLAP_SIMPLE on simple glyphs and OVERLAP_COMPOUND on composites. For testing rasterisers that need the hint to avoid seams, and tools that must preserve the flags through a round trip. Original typeface, free to use.

File
TTF · Outlines
Use case
Conversion testingMetadata testing+1· Conversion set
Preview of TTF — Correct Checksums (integrity reference)
ttf
6.2 KB
Actual file preview for TTF — Correct Checksums (integrity reference)

TTF — Correct Checksums (integrity reference)

The clean control for the checksum pair: a small, valid font whose head.checkSumAdjustment and every table-directory checksum are correct. Diff it against its damaged twin to see exactly which four bytes a validator is complaining about. Original typeface, free to use.

File
TTF · Integrity
Use case
Conversion testingError handling+1· Paired fixture
Preview of TTF — Intentionally Corrupt: Wrong head.checkSumAdjustment
ttf
6.2 KB
Actual file preview for TTF — Intentionally Corrupt: Wrong head.checkSumAdjustment

TTF — Intentionally Corrupt: Wrong head.checkSumAdjustment

An intentionally corrupt font: four bytes of head.checkSumAdjustment overwritten with 0xDEADBEEF and nothing else touched. It still renders, because browsers and operating systems do not verify the field — which is precisely why this is a useful fixture for validators, signing tools, and font-integrity checks that claim they do.

File
TTF · Integrity
Use case
Conversion testingError handling+1· Paired fixture
Preview of TTF — Intentionally Corrupt: Wrong glyf Table-Directory Checksum
ttf
6.2 KB
Actual file preview for TTF — Intentionally Corrupt: Wrong glyf Table-Directory Checksum

TTF — Intentionally Corrupt: Wrong glyf Table-Directory Checksum

An intentionally corrupt font whose glyf table data is perfectly fine but whose recorded checksum in the table directory is wrong. The complement to the head fixture: this one catches tools that verify per-table checksums, and its glyphs still draw, so the damage is invisible without a real integrity check.

File
TTF · Integrity
Use case
Conversion testingError handling+1· Conversion set
Preview of Intentionally Corrupt — MP4 Truncated Mid-mdat
mp4
7 KB
Actual file preview for Intentionally Corrupt — MP4 Truncated Mid-mdat

Intentionally Corrupt — MP4 Truncated Mid-mdat

An intentionally corrupt MP4, cut off at 55% of its length in the middle of the `mdat` box — the shape of an interrupted download or a copy from a failing disk. Not a valid file by design. The interesting property is that it opens perfectly. Because the file was written with faststart the `moov` index sits before the media data, so a probe reads a complete track list and a duration within a tenth of a second of the original, and only decoding reveals that most of the samples the index points to are not there. Tools that validate by probing pass it; tools that validate by decoding do not. The seek bar will happily let you scrub past the end of the data that exists.

File
MP4 · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — MP4 With the moov Atom Removed
mp4
11.1 KB
Actual file preview for Intentionally Corrupt — MP4 With the moov Atom Removed

Intentionally Corrupt — MP4 With the moov Atom Removed

An intentionally corrupt MP4 with the entire `moov` box cut out and the surrounding bytes rejoined. The `ftyp` header and all of the compressed media in `mdat` are untouched. Not a valid file by design. This is the classic 'moov atom not found' failure, and in practice the most common way an MP4 dies: the index is written last, so any recording that stops without a clean finalise — a crashed encoder, a phone that ran out of battery mid-capture — ends up exactly like this. The media is all still there, which is why recovery tools can sometimes rebuild it, and this is the file to test one against. Contrast with the truncated file in this group, which has an index and no data.

File
MP4 · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — MP4 Header Fragment Only
mp4
869 B
Actual file preview for Intentionally Corrupt — MP4 Header Fragment Only

Intentionally Corrupt — MP4 Header Fragment Only

An intentionally corrupt MP4 cut off half way through its `moov` box: the `ftyp` header survives, the index does not, and there is no media data at all. Not a valid file by design. Just enough for content sniffing to succeed and everything after that to fail. A `file`-style magic check reports ISO Media, a MIME sniffer says video/mp4, and then the box walk runs off the end of the buffer part way through the index. Useful for testing the gap between format detection and format validation — and for the upload path, where the two are frequently the same check. Distinct from the two other truncations in this group: the mid-mdat file has a complete index and missing media, this one has a broken index and no media, and a length-based cut deep enough to matter is the only way to tell those code paths apart.

File
MP4 · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — Zero-Byte MP4
mp4
0 B
Actual file preview for Intentionally Corrupt — Zero-Byte MP4

Intentionally Corrupt — Zero-Byte MP4

An intentionally corrupt MP4 containing nothing at all — zero bytes, with a `.mp4` extension. Not a valid file by design. The degenerate case, and one that reaches production more often than any other: a failed upload, a `touch`ed placeholder, a copy that never started. It is worth having because so much code divides by duration, reads the first N bytes without checking N, or reports 'unsupported format' for a file that has no format to support. Note that content sniffing cannot help here — there are no magic bytes — so anything that must classify this file has only the extension to go on.

File
MP4 · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — MP4 With Bit Rot in the Media Payload
mp4
12.7 KB
Actual file preview for Intentionally Corrupt — MP4 With Bit Rot in the Media Payload

Intentionally Corrupt — MP4 With Bit Rot in the Media Payload

An intentionally corrupt MP4 in which 48 individual bytes inside the `mdat` payload have been inverted, leaving every box header, the index and the file length exactly as they were. Not a valid file by design. Structurally this file is perfect — it will pass any container-level validation you throw at it — and the damage is entirely in the compressed bitstream. Expect the decoder to log errors and the picture to break up and then recover at the next keyframe, which is what makes it the right fixture for testing that a transcode pipeline actually surfaces decoder errors rather than shipping a corrupted output and reporting success. The corruption sites are fixed, so the file is reproducible byte for byte.

File
MP4 · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — Matroska Truncated Mid-Cluster
mkv
7.2 KB
Actual file preview for Intentionally Corrupt — Matroska Truncated Mid-Cluster

Intentionally Corrupt — Matroska Truncated Mid-Cluster

An intentionally corrupt Matroska file cut to 60% of its length, part way through a cluster. Not a valid file by design. Matroska degrades very differently from MP4, which is the reason to have both. Its header is at the front and its clusters are independently framed, so a truncated MKV usually plays right up to the cut and then simply ends — no index to contradict, because the Cues element that would have carried it was at the end and is gone. Duration is reported as unknown or estimated, and seeking past the cut behaves differently in every player.

File
MKV · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — WebM Truncated Mid-Stream
webm
6.3 KB
Actual file preview for Intentionally Corrupt — WebM Truncated Mid-Stream

Intentionally Corrupt — WebM Truncated Mid-Stream

An intentionally corrupt WebM, VP9 in Matroska, cut to 45% of its bytes. Not a valid file by design. The browser-facing member of this group. A truncated WebM starts playing in an HTML5 <video> element and then fires an `error` event mid-stream, which is a genuinely awkward state to handle: your player has already reported success, already hidden the spinner, and already told the user the duration. Use it to check that the error path is wired to something more useful than a frozen frame.

File
WEBM · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of Intentionally Corrupt — Matroska Bytes With an .mp4 Extension
mp4
12.1 KB
Actual file preview for Intentionally Corrupt — Matroska Bytes With an .mp4 Extension

Intentionally Corrupt — Matroska Bytes With an .mp4 Extension

An intentionally corrupt fixture of a different kind: the bytes are a perfectly valid Matroska file, and the extension says `.mp4`. Nothing is damaged — the file simply lies about what it is. Not a valid MP4 by design. This is what a user's 'converted' file usually turns out to be after a rename, and it separates two kinds of code cleanly. Anything that sniffs the first four bytes finds `1A 45 DF A3`, identifies EBML and plays it. Anything that dispatches on the extension hands it to an MP4 demuxer that immediately fails to find `ftyp`. Note the catalog records this entry's MIME as video/mp4, matching the extension rather than the content — deliberately, because that is precisely the mismatch being reproduced.

File
MP4 · Containers Corrupt
Use case
Error handlingVideo QA+1· Conversion set
Preview of EML — Encoded-Word With an Unregistered Charset
eml
535 B
Actual file preview for EML — Encoded-Word With an Unregistered Charset

EML — Encoded-Word With an Unregistered Charset

An encoded-word naming a charset no registry knows. The payload happens to be UTF-8, so a decoder has a choice: fall back and show readable text, or leave the raw encoded-word visible. What it must not do is raise and drop the whole header.

File
EML · Headers · B (base64)
Use case
Email parsingError handling+1· Conversion set
Preview of EML — multipart/alternative With an Empty text/plain Part
eml
618 B
Actual file preview for EML — multipart/alternative With an Empty text/plain Part

EML — multipart/alternative With an Empty text/plain Part

A zero-length text/plain alternative next to a real HTML part — the shape produced by senders that add a plain part only to satisfy spam filters. Anything preferring plain text renders a blank message unless it falls back when the chosen part is empty.

File
EML · Mime
Use case
Email parsingError handling+1· Conversion set
Preview of EML — multipart/related With a Dangling cid: Reference
eml
638 B
Actual file preview for EML — multipart/related With a Dangling cid: Reference

EML — multipart/related With a Dangling cid: Reference

The HTML body references a Content-ID that no part in the message provides — the everyday result of a forward that dropped an attachment. A renderer should show the alt text and carry on, not emit a broken external request or fail the whole message.

File
EML · Mime
Use case
Email parsingError handling+1· Conversion set
Preview of EML — Attachment With No Filename At All
eml
665 B
Actual file preview for EML — Attachment With No Filename At All

EML — Attachment With No Filename At All

An attachment with a bare Content-Disposition: attachment and no name in either header. A client has to invent a filename, and the extension it invents decides whether the saved file opens as a spreadsheet or as unknown binary.

File
EML · Mime
Use case
Email parsingError handling+1· Conversion set
Preview of EML — 1,024-Octet Header Line With No Fold Point
eml
1.5 KB
Actual file preview for EML — 1,024-Octet Header Line With No Fold Point

EML — 1,024-Octet Header Line With No Fold Point

A single header whose value is one 1,001-character token with no whitespace, making the line 1,024 octets — past the 998-octet limit RFC 5322 sets and impossible to fold. Fixed-size line buffers truncate here, and the truncation is silent.

File
EML · Headers
Use case
Email parsingError handling+1· Conversion set
Preview of EML — Reply Whose Parent Message Does Not Exist
eml
625 B
Actual file preview for EML — Reply Whose Parent Message Does Not Exist

EML — Reply Whose Parent Message Does Not Exist

The immediate parent named by In-Reply-To was never delivered, but its grandparent is in the References chain. A threader has to fall back up the chain instead of orphaning the message — the everyday case after a deleted or filtered message.

File
EML · Threading
Use case
Email parsingError handling+1· Conversion set
Preview of EML — References Chain With Repeated Message-IDs
eml
689 B
Actual file preview for EML — References Chain With Repeated Message-IDs

EML — References Chain With Repeated Message-IDs

A References header that lists the same two Message-IDs twice, in a repeating order — what a client produces when it appends without checking. A threader that treats the chain as a literal path builds a cycle or reports a depth of four for a two-deep thread.

File
EML · Threading
Use case
Email parsingError handling+1· Conversion set
Preview of EML — DSN Missing Its message/delivery-status Part (Deliberately Incomplete)
eml
1.1 KB
Actual file preview for EML — DSN Missing Its message/delivery-status Part (Deliberately Incomplete)

EML — DSN Missing Its message/delivery-status Part (Deliberately Incomplete)

A multipart/report that advertises report-type=delivery-status but is deliberately incomplete: the required message/delivery-status part is missing, leaving only human prose and the returned headers. Real MTAs emit this, and a parser must not assume the part exists.

File
EML · Dsn
Use case
Email parsingError handling+1· Conversion set
Preview of MBOX — Thread Plus Its Bounce, With mboxrd Escaping
mbox
1.9 KB
Actual file preview for MBOX — Thread Plus Its Bounce, With mboxrd Escaping

MBOX — Thread Plus Its Bounce, With mboxrd Escaping

Three messages in one mailbox: an original whose body contains both a bare "From " line and an already-escaped ">From " line, the reply that threads to it, and the multipart/report bounce that reply triggered. mboxrd escaping is what makes the round trip lossless.

File
MBOX · Mailbox
Use case
Email parsingError handling+1· Conversion set
Preview of Source map with deliberately invalid fields and mappings
json
329 B
Actual file preview for Source map with deliberately invalid fields and mappings

Source map with deliberately invalid fields and mappings

A deliberately invalid source map: version 2 instead of 3, a sources array longer than sourcesContent, a mapping segment that names an index outside `names`, and a `$` that is not in the base64 VLQ alphabet. For testing that a decoder validates the envelope before trusting the mappings.

File
JSON · Build Output
Use case
Web assetsJSON parsing+1· Conversion set
Preview of ICU MessageFormat — Apostrophe and brace quoting
json
1.4 KB
Actual file preview for ICU MessageFormat — Apostrophe and brace quoting

ICU MessageFormat — Apostrophe and brace quoting

The quoting rules that make ICU messages surprising: a single quote starts a literal section only when the next character is one ICU cares about, a doubled '' is always one apostrophe, and '#' inside a plural branch is a literal hash. Every message is paired with the exact string it must produce.

File
JSON · Icu
Preview of gettext PO — fuzzy, obsolete and untranslated entries
po
2 KB
Actual file preview for gettext PO — fuzzy, obsolete and untranslated entries

gettext PO — fuzzy, obsolete and untranslated entries

A German catalog carrying every state a PO entry can be in but the happy one: two fuzzy entries (one of them a plural) with #| previous-msgid comments, an entry that is present but untranslated, three obsolete #~ entries including an obsolete plural and an obsolete msgctxt entry, and two complete entries as the control.

File
PO · Gettext · German
Preview of Android strings.xml — escaping, xliff:g and markup rules
xml
2.9 KB
Actual file preview for Android strings.xml — escaping, xliff:g and markup rules

Android strings.xml — escaping, xliff:g and markup rules

Every escaping rule aapt2 enforces on a strings.xml, in one file: backslash-escaped apostrophes and quotes, quoted values that preserve leading whitespace, an escaped @ and ?, CDATA-wrapped inline HTML, <xliff:g> placeholder protection with examples, formatted="false", translatable="false" and a scoped tools:ignore.

File
XML · Android
Preview of SAMPLE Leaf Certificate — Expired
pem
1.8 KB
Actual file preview for SAMPLE Leaf Certificate — Expired

SAMPLE Leaf Certificate — Expired

A correctly signed leaf whose notAfter fell in the past (2020). The only thing wrong with it is the clock, which makes it the clean way to assert that an expiry error is reported as expiry and not as a signature failure.

File
PEM · Pki
Use case
Certificate & key testingError handling· Paired fixture
Preview of SAMPLE Leaf Certificate — Not Yet Valid
pem
1.8 KB
Actual file preview for SAMPLE Leaf Certificate — Not Yet Valid

SAMPLE Leaf Certificate — Not Yet Valid

The mirror of the expired leaf: identical in every respect except that notBefore is 2035, so it is rejected from the other side of the validity window. Pairs with it to prove a verifier distinguishes the two clock errors.

File
PEM · Pki
Use case
Certificate & key testingError handling· Paired fixture
Preview of SAMPLE Leaf Certificate — SAN/CN Mismatch
pem
1.8 KB
Actual file preview for SAMPLE Leaf Certificate — SAN/CN Mismatch

SAMPLE Leaf Certificate — SAN/CN Mismatch

The certificate's CN is app.pki.sample.example but its only SAN is different.pki.sample.example. RFC 6125 clients must ignore the CN entirely, so this separates modern verifiers from ones still falling back to Common Name.

File
PEM · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE Leaf Certificate — Self-Signed
pem
1.4 KB
Actual file preview for SAMPLE Leaf Certificate — Self-Signed

SAMPLE Leaf Certificate — Self-Signed

An end-entity certificate that signs itself and chains to nothing — the shape a development server produces when nobody ran a CA. It is internally consistent, so the only defect a verifier can find is the missing trust anchor.

File
PEM · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE Leaf Certificate — Revoked
pem
1.8 KB
Actual file preview for SAMPLE Leaf Certificate — Revoked

SAMPLE Leaf Certificate — Revoked

A leaf that is valid in every structural respect and revoked in the matching CRL and OCSP response shipped alongside it. It is the fixture that proves a client actually performs revocation checking rather than stopping at path building.

File
PEM · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE Certificate Revocation List — Empty
pem
869 B
Actual file preview for SAMPLE Certificate Revocation List — Empty

SAMPLE Certificate Revocation List — Empty

A correctly signed CRL with an absent revokedCertificates field — what a CA publishes when it has revoked nothing. Parsers that assume the list is always present tend to fault here rather than report zero entries.

File
PEM · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE Certificate Revocation List — Stale
pem
971 B
Actual file preview for SAMPLE Certificate Revocation List — Stale

SAMPLE Certificate Revocation List — Stale

A validly signed CRL whose nextUpdate passed in 2020. Whether a client hard-fails, soft-fails, or silently trusts stale revocation data is a real policy decision, and this is the fixture that reveals which one it made.

File
PEM · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE OCSP Response — Revoked
der
683 B
Actual file preview for SAMPLE OCSP Response — Revoked

SAMPLE OCSP Response — Revoked

The OCSP counterpart of the CRL entry: status revoked for the revoked SAMPLE leaf, with the same 2026-03-01 revocation time and keyCompromise reason. Use both against the same certificate to check that CRL and OCSP paths agree.

File
DER · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE OCSP Response — Unauthorized
der
5 B
Actual file preview for SAMPLE OCSP Response — Unauthorized

SAMPLE OCSP Response — Unauthorized

The minimal unsuccessful OCSP response: responseStatus unauthorized and no responseBytes at all, which is what a responder returns for a certificate it does not serve. A handful of bytes that regularly breaks clients expecting a signed body.

File
DER · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE PKCS#12 Keystore — No Password
p12
2.8 KB
Actual file preview for SAMPLE PKCS#12 Keystore — No Password

SAMPLE PKCS#12 Keystore — No Password

The same leaf key and certificate in a PKCS#12 file with no password and no encryption. Several importers refuse an empty password, prompt anyway, or treat it as the literal empty string, so this is the fixture that finds out which.

File
P12 · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE CSR — Intentionally Corrupt Base64
csr
915 B
Actual file preview for SAMPLE CSR — Intentionally Corrupt Base64

SAMPLE CSR — Intentionally Corrupt Base64

An intentionally corrupt PKCS#10 request: the PEM armour is intact but four illegal characters have been substituted into the Base64 body, so decoding fails part-way. It exists to check that a CSR intake path reports a parse error instead of a stack trace or a partially populated record.

File
CSR · Pki
Use case
Certificate & key testingError handling· Conversion set
Preview of SAMPLE JWKS — Duplicate kid
json
748 B
Actual file preview for SAMPLE JWKS — Duplicate kid

SAMPLE JWKS — Duplicate kid

Two keys of different types published under the same kid — what a botched key rotation leaves behind. A resolver that returns the first match silently verifies against the wrong key type instead of reporting the ambiguity.

File
JSON · Jwks
Use case
JWT / JWKS testingError handling· Conversion set
Preview of SAMPLE JWKS — Keys Without kid
json
680 B
Actual file preview for SAMPLE JWKS — Keys Without kid

SAMPLE JWKS — Keys Without kid

A JWK Set whose keys carry no kid at all, which RFC 7517 permits. Verifiers must then fall back to trying candidates by algorithm, and the ones that index the set by kid alone find nothing.

File
JSON · Jwks
Use case
JWT / JWKS testingError handling· Conversion set
Preview of SAMPLE JWT — RS256, Expired
jwt
720 B
Actual file preview for SAMPLE JWT — RS256, Expired

SAMPLE JWT — RS256, Expired

A correctly signed RS256 token whose exp passed on 2020-01-01. The signature still verifies, so it isolates expiry handling from every other check — including the libraries that validate the signature and then forget to look at exp.

File
JWT · Jwt
Use case
JWT / JWKS testingError handling· Conversion set
Preview of SAMPLE JWT — RS256, Bad Signature
jwt
720 B
Actual file preview for SAMPLE JWT — RS256, Bad Signature

SAMPLE JWT — RS256, Bad Signature

The valid RS256 token with the last bit of its signature flipped. Header and payload are byte-identical to the valid twin, so any difference in outcome is entirely down to signature verification.

File
JWT · Jwt
Use case
JWT / JWKS testingError handling· Paired fixture
Preview of SAMPLE JWT — RS256, Signed by the Wrong Key
jwt
1 KB
Actual file preview for SAMPLE JWT — RS256, Signed by the Wrong Key

SAMPLE JWT — RS256, Signed by the Wrong Key

A perfectly well-formed RS256 signature made with the SAMPLE root key while the kid header still names the leaf key. Verifiers that trust the kid without checking the signature against that exact key accept it.

File
JWT · Jwt
Use case
JWT / JWKS testingError handling· Conversion set
Preview of SAMPLE JWT — Unknown kid
jwt
731 B
Actual file preview for SAMPLE JWT — Unknown kid

SAMPLE JWT — Unknown kid

A genuinely valid RS256 signature whose kid names a key that has been rotated out of the JWK set. The right behaviour is a clean key-not-found error, not a silent fallback to whichever key happens to be first.

File
JWT · Jwt
Use case
JWT / JWKS testingError handling· Conversion set
Preview of SAMPLE JWT — alg none, Unsigned
jwt
342 B
Actual file preview for SAMPLE JWT — alg none, Unsigned

SAMPLE JWT — alg none, Unsigned

An unsecured JWS: alg is none and the signature segment is empty, leaving only the trailing dot. Any verifier that accepts it will accept a claim set an attacker wrote, which is why this is the first negative test to run.

File
JWT · Jwt
Use case
JWT / JWKS testingError handling· Conversion set
Preview of SAMPLE JWT — EdDSA, Bad Signature
jwt
469 B
Actual file preview for SAMPLE JWT — EdDSA, Bad Signature

SAMPLE JWT — EdDSA, Bad Signature

The EdDSA token with one bit of its signature flipped. Ed25519 verification either succeeds or fails with no partial credit, which makes this the cleanest possible negative case.

File
JWT · Jwt
Use case
JWT / JWKS testingError handling· Paired fixture
Preview of JUnit XML — Maven-Surefire Dialect (surefire)
xml
3.2 KB
Actual file preview for JUnit XML — Maven-Surefire Dialect (surefire)

JUnit XML — Maven-Surefire Dialect (surefire)

The same 12-case Novus Checkout run written the way maven-surefire 3.2 writes it. Maven Surefire merges its per-class files under a <testsuites> root and adds a <properties> block plus system-out/system-err on every suite. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Pytest Dialect (pytest)
xml
2.7 KB
Actual file preview for JUnit XML — Pytest Dialect (pytest)

JUnit XML — Pytest Dialect (pytest)

The same 12-case Novus Checkout run written the way pytest 8.2 --junitxml writes it. pytest emits a single <testsuite name="pytest"> whose classname is the dotted module path, and decorates each case with file and line attributes. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — @Playwright/Test Dialect (playwright)
xml
2.8 KB
Actual file preview for JUnit XML — @Playwright/Test Dialect (playwright)

JUnit XML — @Playwright/Test Dialect (playwright)

The same 12-case Novus Checkout run written the way @playwright/test 1.47 junit reporter writes it. Playwright puts the run totals on the <testsuites> root, names each suite after its spec file, and uses the bare describe title as classname. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Jest-Junit Dialect (jest-junit)
xml
3 KB
Actual file preview for JUnit XML — Jest-Junit Dialect (jest-junit)

JUnit XML — Jest-Junit Dialect (jest-junit)

The same 12-case Novus Checkout run written the way jest-junit 16 writes it. jest-junit repeats the whole "describe > it" title in both classname and name, which breaks dashboards that assume classname is a package. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Gradle Dialect (gradle)
xml
2.8 KB
Actual file preview for JUnit XML — Gradle Dialect (gradle)

JUnit XML — Gradle Dialect (gradle)

The same 12-case Novus Checkout run written the way Gradle 8.9 Test task writes it. Gradle writes hostname and timestamp on every suite and an empty self-closing <properties/> element that some parsers mishandle. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Vitest Dialect (vitest)
xml
2.8 KB
Actual file preview for JUnit XML — Vitest Dialect (vitest)

JUnit XML — Vitest Dialect (vitest)

The same 12-case Novus Checkout run written the way vitest 2.0 junit reporter writes it. Vitest names the root suite after the elapsed time and uses the spec file path as classname for every case. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Go-Junit-Report Dialect (go-junit-report)
xml
2.8 KB
Actual file preview for JUnit XML — Go-Junit-Report Dialect (go-junit-report)

JUnit XML — Go-Junit-Report Dialect (go-junit-report)

The same 12-case Novus Checkout run written the way go-junit-report 2.1 writes it. go-junit-report names each suite after a Go package and carries the toolchain version in a go.version property. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — Phpunit Dialect (phpunit)
xml
3.2 KB
Actual file preview for JUnit XML — Phpunit Dialect (phpunit)

JUnit XML — Phpunit Dialect (phpunit)

The same 12-case Novus Checkout run written the way PHPUnit 11.2 --log-junit writes it. PHPUnit nests per-class suites inside a named parent suite and adds an assertions count that no other dialect reports. All eight dialect files in this group report 12 tests, 1 failure, 1 error and 1 skip, so a JUnit parser can be held to identical totals across every producer.

File
XML · Junit XML · UTF-8
Use case
Conversion testingError handling+1· Conversion set
Preview of JUnit XML — All Tests Passing
xml
754 B
Actual file preview for JUnit XML — All Tests Passing

JUnit XML — All Tests Passing

A clean green run: six passing cases, zero failures, errors and skips. The baseline a CI gate should treat as success, and the control case for any dashboard that colours a build from the failure count.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — One Failing Test
xml
818 B
Actual file preview for JUnit XML — One Failing Test

JUnit XML — One Failing Test

Three cases, one of them failing with an assertion message and a CDATA stack trace. The smallest report that must turn a build red, and the one to test a failure-summary renderer against.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Multiple Failures Across Classes
xml
1.6 KB
Actual file preview for JUnit XML — Multiple Failures Across Classes

JUnit XML — Multiple Failures Across Classes

Three failures spread across three different classes in one suite. Use it to check that a reporter lists every failure rather than stopping at the first, and that it groups them by classname rather than by suite.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Error and Failure Distinguished
xml
1.1 KB
Actual file preview for JUnit XML — Error and Failure Distinguished

JUnit XML — Error and Failure Distinguished

One <failure> (an assertion that did not hold) and one <error> (an exception the test never expected), side by side. Parsers that collapse the two lose the distinction between a broken assertion and a broken environment.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Every Test Skipped
xml
756 B
Actual file preview for JUnit XML — Every Test Skipped

JUnit XML — Every Test Skipped

A suite in which every case was skipped, so tests equals skipped and nothing actually ran. A gate that reads only the failure count calls this green; one that checks executed>0 catches it.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Empty Suite (Zero Tests)
xml
236 B
Actual file preview for JUnit XML — Empty Suite (Zero Tests)

JUnit XML — Empty Suite (Zero Tests)

A structurally valid report containing a suite with no <testcase> children at all — what a runner writes when a filter matched nothing. Aggregators that divide by the test count to compute a pass rate hit a zero denominator here.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Mixed Pass, Fail, Error and Skip
xml
2 KB
Actual file preview for JUnit XML — Mixed Pass, Fail, Error and Skip

JUnit XML — Mixed Pass, Fail, Error and Skip

The full canonical run flattened into a single suite: nine passes, one failure, one error and one skip. This is the same twelve cases the eight dialect files carry, so totals can be compared straight across.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Passed-on-Retry (flakyFailure)
xml
930 B
Actual file preview for JUnit XML — Passed-on-Retry (flakyFailure)

JUnit XML — Passed-on-Retry (flakyFailure)

A case that failed on its first attempt and passed on the retry, recorded with Surefire's <flakyFailure> child. The suite counters say zero failures, so a parser that ignores the extension element reports a clean run and loses the flake entirely.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Skip with Message and Body
xml
681 B
Actual file preview for JUnit XML — Skip with Message and Body

JUnit XML — Skip with Message and Body

A skipped case whose reason appears twice — in the message attribute and again as CDATA text inside the <skipped> element. Reporters that read only the attribute silently drop the longer explanation.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Multi-line Assertion Diff
xml
737 B
Actual file preview for JUnit XML — Multi-line Assertion Diff

JUnit XML — Multi-line Assertion Diff

A failure whose message contains an expected/actual diff with angle brackets and newlines, the shape assertion libraries actually produce. Good for checking that a dashboard escapes the message for HTML and keeps its line breaks.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Aggregate <testsuites> Root
xml
2.3 KB
Actual file preview for JUnit XML — Aggregate <testsuites> Root

JUnit XML — Aggregate <testsuites> Root

Three suites under a <testsuites> root whose own attributes already hold the aggregate totals. A parser that sums the children and also trusts the root double-counts every case, which is the classic cause of a dashboard reporting 24 tests for a 12-test run.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Bare <testsuite> Root (No Wrapper)
xml
897 B
Actual file preview for JUnit XML — Bare <testsuite> Root (No Wrapper)

JUnit XML — Bare <testsuite> Root (No Wrapper)

The single-suite form Gradle and Ant write: the root element is <testsuite> with no <testsuites> wrapper at all. Parsers hardcoded to descend from <testsuites> read this file as empty rather than failing, so it silently reports a run of zero tests.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Console Output in CDATA
xml
558 B
Actual file preview for JUnit XML — Console Output in CDATA

JUnit XML — Console Output in CDATA

Captured stdout and stderr wrapped in CDATA, where the stdout text itself looks like XML markup. A parser must treat the CDATA content as opaque characters; one that re-parses it finds a <report> element that does not exist.

File
XML · Junit XML · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of JUnit XML — Escaped Characters in Test Names
xml
1 KB
Actual file preview for JUnit XML — Escaped Characters in Test Names

JUnit XML — Escaped Characters in Test Names

Test names containing &, <, >, quotes and an apostrophe, escaped as XML requires. Round-tripping this report through a converter is the fastest way to find double-escaping bugs that turn &amp; into &amp;amp; one hop at a time.

File
XML · Junit XML · UTF-8
Use case
Encoding detectionConversion testing+1· Conversion set
Preview of JUnit XML — No Time Attributes
xml
421 B
Actual file preview for JUnit XML — No Time Attributes

JUnit XML — No Time Attributes

A report from a runner that never records durations: neither the suite nor any case carries a time attribute. Dashboards that parse time unconditionally throw here, and ones that default it to zero quietly report a suite that took no time at all.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Same Test Reported Twice
xml
814 B
Actual file preview for JUnit XML — Same Test Reported Twice

JUnit XML — Same Test Reported Twice

The same classname and name appear twice with different outcomes — what a parameterised runner or a merged report can produce. Any store keyed on classname+name overwrites the first result and reports the suite as green or red depending purely on document order.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of JUnit XML — Locale-Formatted and Exponent Durations
xml
465 B
Actual file preview for JUnit XML — Locale-Formatted and Exponent Durations

JUnit XML — Locale-Formatted and Exponent Durations

Durations written four different ways in one file: scientific notation, a comma decimal separator from a German-locale JVM, a bare integer, and a comma that could be either a decimal point or a thousands separator. A parser using a locale-sensitive number reader gets a different answer depending on where it runs.

File
XML · Junit XML · UTF-8
Use case
Error handlingConversion testing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #101 (passing)
xml
800 B
Actual file preview for Flaky Run — Timing Race, Build #101 (passing)

Flaky Run — Timing Race, Build #101 (passing)

Build #101 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is passing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #102 (failing)
xml
1 KB
Actual file preview for Flaky Run — Timing Race, Build #102 (failing)

Flaky Run — Timing Race, Build #102 (failing)

Build #102 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is failing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #103 (passing)
xml
800 B
Actual file preview for Flaky Run — Timing Race, Build #103 (passing)

Flaky Run — Timing Race, Build #103 (passing)

Build #103 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is passing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #104 (failing)
xml
1 KB
Actual file preview for Flaky Run — Timing Race, Build #104 (failing)

Flaky Run — Timing Race, Build #104 (failing)

Build #104 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is failing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Build #105 (passing)
xml
800 B
Actual file preview for Flaky Run — Timing Race, Build #105 (passing)

Flaky Run — Timing Race, Build #105 (passing)

Build #105 of five consecutive runs of checkout.SessionTest, in which expiresSessionAfterTimeout is passing while the other five cases pass every time. The underlying cause is a 250 ms sleep racing the session expiry sweep. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Timing Race, Flake-Rate Table (CSV)
csv
457 B
Actual file preview for Flaky Run — Timing Race, Flake-Rate Table (CSV)

Flaky Run — Timing Race, Flake-Rate Table (CSV)

The answer key for the timing race family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 2/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #201 (passing)
xml
787 B
Actual file preview for Flaky Run — Order Dependent, Build #201 (passing)

Flaky Run — Order Dependent, Build #201 (passing)

Build #201 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is passing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #202 (failing)
xml
1.1 KB
Actual file preview for Flaky Run — Order Dependent, Build #202 (failing)

Flaky Run — Order Dependent, Build #202 (failing)

Build #202 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is failing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #203 (failing)
xml
1.1 KB
Actual file preview for Flaky Run — Order Dependent, Build #203 (failing)

Flaky Run — Order Dependent, Build #203 (failing)

Build #203 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is failing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #204 (passing)
xml
787 B
Actual file preview for Flaky Run — Order Dependent, Build #204 (passing)

Flaky Run — Order Dependent, Build #204 (passing)

Build #204 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is passing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Build #205 (passing)
xml
787 B
Actual file preview for Flaky Run — Order Dependent, Build #205 (passing)

Flaky Run — Order Dependent, Build #205 (passing)

Build #205 of five consecutive runs of cart.DiscountTest, in which stacksDiscountsInDeclaredOrder is passing while the other five cases pass every time. The underlying cause is a shared coupon cache left populated by a sibling test under random ordering. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Order Dependent, Flake-Rate Table (CSV)
csv
447 B
Actual file preview for Flaky Run — Order Dependent, Flake-Rate Table (CSV)

Flaky Run — Order Dependent, Flake-Rate Table (CSV)

The answer key for the order dependent family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 2/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #301 (errored)
xml
1.1 KB
Actual file preview for Flaky Run — Network Dependency, Build #301 (errored)

Flaky Run — Network Dependency, Build #301 (errored)

Build #301 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is errored while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #302 (passing)
xml
800 B
Actual file preview for Flaky Run — Network Dependency, Build #302 (passing)

Flaky Run — Network Dependency, Build #302 (passing)

Build #302 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is passing while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #303 (passing)
xml
800 B
Actual file preview for Flaky Run — Network Dependency, Build #303 (passing)

Flaky Run — Network Dependency, Build #303 (passing)

Build #303 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is passing while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #304 (passing)
xml
800 B
Actual file preview for Flaky Run — Network Dependency, Build #304 (passing)

Flaky Run — Network Dependency, Build #304 (passing)

Build #304 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is passing while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Build #305 (errored)
xml
1.1 KB
Actual file preview for Flaky Run — Network Dependency, Build #305 (errored)

Flaky Run — Network Dependency, Build #305 (errored)

Build #305 of five consecutive runs of checkout.PaymentTest, in which capturesAuthorisedPayment is errored while the other five cases pass every time. The underlying cause is a real call to the fictional payments host instead of the stub. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Network Dependency, Flake-Rate Table (CSV)
csv
457 B
Actual file preview for Flaky Run — Network Dependency, Flake-Rate Table (CSV)

Flaky Run — Network Dependency, Flake-Rate Table (CSV)

The answer key for the network dependency family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 2/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #401 (failing)
xml
992 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #401 (failing)

Flaky Run — Quarantined After Two Failures, Build #401 (failing)

Build #401 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is failing while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #402 (failing)
xml
992 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #402 (failing)

Flaky Run — Quarantined After Two Failures, Build #402 (failing)

Build #402 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is failing while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #403 (quarantined)
xml
846 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #403 (quarantined)

Flaky Run — Quarantined After Two Failures, Build #403 (quarantined)

Build #403 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is quarantined while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #404 (quarantined)
xml
846 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #404 (quarantined)

Flaky Run — Quarantined After Two Failures, Build #404 (quarantined)

Build #404 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is quarantined while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Build #405 (quarantined)
xml
846 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Build #405 (quarantined)

Flaky Run — Quarantined After Two Failures, Build #405 (quarantined)

Build #405 of five consecutive runs of cart.PricingTest, in which appliesTaxToSubtotal is quarantined while the other five cases pass every time. The underlying cause is a rounding boundary that only trips when the tax rate table is reloaded. Read the whole family in build order to reproduce what a flake detector sees.

File
XML · Flaky Runs
Use case
Error handlingLog parsing+1· Conversion set
Preview of Flaky Run — Quarantined After Two Failures, Flake-Rate Table (CSV)
csv
424 B
Actual file preview for Flaky Run — Quarantined After Two Failures, Flake-Rate Table (CSV)

Flaky Run — Quarantined After Two Failures, Flake-Rate Table (CSV)

The answer key for the quarantined after two failures family: the flake rate a detector should derive from the five build reports next to it. Exactly one of the six tests is unstable, at a rate of 5/5; the other five are stable at 0.00.

File
CSV · Flaky Runs · 6 rows
Use case
CSV parsingConversion testing+1· Conversion set
Preview of Flaky Detection — 40-Build Test-Run History (JSONL)
jsonl
44.6 KB
Actual file preview for Flaky Detection — 40-Build Test-Run History (JSONL)

Flaky Detection — 40-Build Test-Run History (JSONL)

Forty builds of six tests, one JSON object per line, with three tests that fail intermittently and three that never do. This is the input shape a flake detector ingests; the CSV twin in this group holds the aggregate it should produce.

File
JSONL · Flaky Runs · 240 records
Use case
JSON parsingTime-series data+1· Conversion set
Preview of TAP — Plan First, All Passing
tap
251 B
Actual file preview for TAP — Plan First, All Passing

TAP — Plan First, All Passing

The canonical TAP shape: a version line, a leading plan, then six passing assertions in order. Anything a TAP consumer does with a real stream it must do with this one first.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Trailing Plan
tap
182 B
Actual file preview for TAP — Trailing Plan

TAP — Trailing Plan

The same stream with the plan at the end, which is what a harness emits when it does not know the test count up front. A consumer that requires a leading plan rejects a perfectly valid stream.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Failures with YAML Diagnostics
tap
435 B
Actual file preview for TAP — Failures with YAML Diagnostics

TAP — Failures with YAML Diagnostics

Two failing assertions, each followed by an indented YAML diagnostic block carrying the expected and actual values and a file/line location. The block is where every useful failure message in TAP lives, and it is the part naive line-based parsers throw away.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Bail Out Mid-Run
tap
214 B
Actual file preview for TAP — Bail Out Mid-Run

TAP — Bail Out Mid-Run

A run abandoned after the third assertion with a Bail out! line, leaving five of the planned eight assertions unreported. The run is a failure even though only one assertion said not ok, and a consumer must not report 2/3 passing as a 67% pass rate.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Comments and Diagnostic Lines
tap
350 B
Actual file preview for TAP — Comments and Diagnostic Lines

TAP — Comments and Diagnostic Lines

Free-form # comment lines interleaved with assertions, including a trailing summary block. Comments carry no result and must never shift assertion numbering, which is exactly what a parser counting lines instead of ok/not ok tokens gets wrong.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Plan Count Does Not Match
tap
331 B
Actual file preview for TAP — Plan Count Does Not Match

TAP — Plan Count Does Not Match

Every assertion in this stream says ok, but the plan promised ten and only eight arrived — the signature of a runner that crashed after its last reported assertion. A consumer that only counts not ok lines calls this a clean pass.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — SKIP Directives
tap
344 B
Actual file preview for TAP — SKIP Directives

TAP — SKIP Directives

Two assertions marked # SKIP with a reason, alongside a genuine failure. Skipped assertions are written as ok, so counting ok lines reports 5 passes when only 3 tests actually ran.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — TODO Directives
tap
299 B
Actual file preview for TAP — TODO Directives

TAP — TODO Directives

Two failing assertions marked # TODO, meaning they are known-unfinished work rather than regressions. A TODO failure must not fail the run, so a consumer that treats every not ok as a build breaker turns this green run red.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — TODO That Unexpectedly Passed
tap
220 B
Actual file preview for TAP — TODO That Unexpectedly Passed

TAP — TODO That Unexpectedly Passed

Assertion 2 is marked TODO but reports ok — an unexpected success, which means the feature landed and the marker is now stale. Harnesses such as prove report this as a bonus rather than a pass, and dropping the distinction lets stale TODOs accumulate forever.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Entire Plan Skipped
tap
87 B
Actual file preview for TAP — Entire Plan Skipped

TAP — Entire Plan Skipped

A whole suite declined in a single line: a zero-length plan with a SKIP directive and a reason. It is a valid, complete TAP stream containing no assertions, and a consumer must report it as skipped rather than as an empty pass or a parse error.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Nested Subtests (Indented)
tap
367 B
Actual file preview for TAP — Nested Subtests (Indented)

TAP — Nested Subtests (Indented)

Two subtests, each an indented TAP stream with its own plan, rolled up into two top-level assertions. Flatten it and you count seven assertions instead of two; ignore the indentation and the nested failure is counted twice.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of TAP — Version 14 Subtest Syntax
tap
383 B
Actual file preview for TAP — Version 14 Subtest Syntax

TAP — Version 14 Subtest Syntax

TAP 14 with an explicit version line and a pragma inside a subtest. Consumers pinned to version 13 either reject the stream outright or ignore the pragma, so this file separates the two behaviours.

File
TAP · Tap · UTF-8
Use case
Log parsingError handling+1· Conversion set
Preview of Cucumber JUnit XML — Checkout Run
xml
823 B
Actual file preview for Cucumber JUnit XML — Checkout Run

Cucumber JUnit XML — Checkout Run

The same six pickles reported as JUnit XML, which is what a BDD suite hands to a generic CI dashboard. One <testcase> per pickle means the three expanded outline rows appear as three tests with identical names — enough to break any store keyed on name alone.

File
XML · Bdd · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of Cucumber JSON — Failing Step with Stack Trace
json
15.2 KB
Actual file preview for Cucumber JSON — Failing Step with Stack Trace

Cucumber JSON — Failing Step with Stack Trace

One step of one scenario fails with an assertion message and a stack frame; every other step passes. In cucumber.json a scenario has no status of its own — it is failed if any of its steps is — so this file catches reporters that look for a scenario-level field that does not exist.

File
JSON · Bdd · UTF-8
Use case
JSON parsingError handling+1· Conversion set
Preview of Cucumber JSON — Undefined, Pending and Skipped Steps
json
14.9 KB
Actual file preview for Cucumber JSON — Undefined, Pending and Skipped Steps

Cucumber JSON — Undefined, Pending and Skipped Steps

The three non-failure statuses BDD runners produce and dashboards routinely collapse into "failed": undefined (no step definition matched), pending (explicitly unimplemented) and skipped (never attempted). Whether the run is red depends on the runner's strict setting, which is exactly the decision this file forces.

File
JSON · Bdd · UTF-8
Use case
JSON parsingError handling+1· Conversion set
Preview of Cucumber Messages — Failing Run (NDJSON)
ndjson
27.5 KB
Actual file preview for Cucumber Messages — Failing Run (NDJSON)

Cucumber Messages — Failing Run (NDJSON)

The messages twin of the failing run: one testStepFinished carries status FAILED with both a human message and a structured exception object, and testRunFinished reports success false. Comparing it with the passing stream in the other group isolates exactly which envelopes a failure changes.

File
NDJSON · Bdd · UTF-8
Use case
JSON parsingError handling+1· Conversion set
Preview of NUnit 3 — Test Result XML
xml
6.5 KB
Actual file preview for NUnit 3 — Test Result XML

NUnit 3 — Test Result XML

The NUnit 3 test-run document, with a nested Assembly/TestFixture suite tree, an environment element and per-case seeds. NUnit has no separate error outcome, so the errored case appears as Failed with label="Error" and the report reads failed=2. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of MSTest — TRX Result File
trx
14 KB
Actual file preview for MSTest — TRX Result File

MSTest — TRX Result File

The `dotnet test` TRX document in full: Times, TestSettings, Results, TestDefinitions, TestEntries, TestLists and a ResultSummary with sixteen counters. Results and definitions are joined on GUIDs, so a converter that reads only <Results> loses every class name. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
TRX · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of Playwright — JSON Report
json
13.8 KB
Actual file preview for Playwright — JSON Report

Playwright — JSON Report

Playwright's native JSON report, four levels deep: suites contain specs, specs contain tests (one per project) and tests contain results (one per attempt). Its stats use expected/unexpected rather than passed/failed, because a test annotated as expected-to-fail counts as expected when it fails. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Jest — JSON Results
json
6.4 KB
Actual file preview for Jest — JSON Results

Jest — JSON Results

Jest's --json output, where skipped tests are called pending and the totals appear as flat numTotal/numPassed/numFailed fields alongside per-file assertionResults. Timestamps are epoch milliseconds rather than ISO strings, which is the field most converters mis-handle. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Mocha — JSON Reporter Output
json
7.3 KB
Actual file preview for Mocha — JSON Reporter Output

Mocha — JSON Reporter Output

Mocha's JSON reporter, which lists every test in a tests array and then repeats each one in passes, failures or pending. Summing all four arrays counts the run twice — this file exists so that bug shows up on a 12-test suite instead of in production. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of Robot Framework — output.xml
xml
6.2 KB
Actual file preview for Robot Framework — output.xml

Robot Framework — output.xml

Robot Framework's output.xml, in which every keyword call carries its own status element and a trailing statistics section restates the totals by tag and by suite. Robot 7 reports elapsed seconds rather than the endtime attribute older versions used, so schemaversion is what a reader must branch on. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of TestNG — testng-results.xml
xml
4.5 KB
Actual file preview for TestNG — testng-results.xml

TestNG — testng-results.xml

TestNG's own result document, with suite/test/class/test-method nesting, signature attributes and full stack traces in CDATA. TestNG has no error status, so the errored case is reported as FAIL and the header attributes read failed=2. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of xUnit.net — v2 Assembly Results
xml
3.4 KB
Actual file preview for xUnit.net — v2 Assembly Results

xUnit.net — v2 Assembly Results

The xUnit.net v2 shape: an <assemblies> root holding one assembly, whose tests are grouped into collections rather than classes. Result values are Pass, Fail and Skip with capital initials, which trips converters doing a case-sensitive comparison against the lowercase values every other format uses. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
XML · Runners · UTF-8
Use case
Conversion testingLog parsing+1· Conversion set
Preview of pytest — JSON Report (pytest-json-report)
json
6.3 KB
Actual file preview for pytest — JSON Report (pytest-json-report)

pytest — JSON Report (pytest-json-report)

The pytest-json-report document, which records setup, call and teardown as three separate phases per test and keeps error distinct from failed in its summary. A test can pass its call phase and still error in teardown, which is why summing outcomes without reading the phases gives the wrong total. Reports the same canonical run as the JUnit dialect files: 12 tests, 9 passed, 1 assertion failure, 1 error and 1 skip.

File
JSON · Runners · UTF-8
Use case
JSON parsingConversion testing+1· Conversion set
Preview of JUnit XML — Truncated Mid-Element (intentionally corrupt)
xml
449 B
Actual file preview for JUnit XML — Truncated Mid-Element (intentionally corrupt)

JUnit XML — Truncated Mid-Element (intentionally corrupt)

An intentionally corrupt JUnit report: the file ends in the middle of a testcase attribute value, exactly as it would if the CI worker were killed while the reporter was still writing. Three elements are left unclosed and the document is not well-formed XML. A parser must fail loudly rather than report the two complete cases as the whole run.

File
XML · Corrupt
Use case
Error handlingConversion testing+1· Conversion set
Preview of LCOV — Lines Hit Exceeds Lines Found (intentionally corrupt)
lcov
1.5 KB
Actual file preview for LCOV — Lines Hit Exceeds Lines Found (intentionally corrupt)

LCOV — Lines Hit Exceeds Lines Found (intentionally corrupt)

An intentionally corrupt LCOV tracefile: every record declares LH eight greater than LF, so more lines were hit than exist. The syntax is perfectly valid, which is the point — the contradiction is semantic, and a coverage gate that trusts the summary counters computes over 100% coverage and passes a build it should have stopped. Recompute LH from the DA lines and the real figure is 127/140.

File
LCOV · Corrupt · 4 records
Use case
Error handlingConversion testing+1· Conversion set
Preview of Context Diff - Classic *** / --- Format
diff
303 B
Actual file preview for Context Diff - Classic *** / --- Format

Context Diff - Classic *** / --- Format

The same change as the unified twin, emitted in the pre-unified context format: `*** before` and `--- after` blocks separated by a row of asterisks, with `!`, `+` and `-` change markers. Parsers that assume every diff starts with `---`/`+++` misread this one as a unified diff with no hunks.

File
DIFF · Diffs · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Normal Diff - ed-Style Change Commands
diff
80 B
Actual file preview for Normal Diff - ed-Style Change Commands

Normal Diff - ed-Style Change Commands

The default output of bare `diff`: ed-style commands such as `3a4` with `<` and `>` bodies and no file headers at all. Tooling that identifies diffs by looking for `---`, `+++` or `@@` cannot even tell this is a diff, which is exactly what makes it a useful negative fixture.

File
DIFF · Diffs · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Unified Diff - Diff of a Checked-In Patch File
diff
414 B
Actual file preview for Unified Diff - Diff of a Checked-In Patch File

Unified Diff - Diff of a Checked-In Patch File

Quilt, Debian and vendor trees check patches into the repository, so editing one produces a diff whose body is itself full of `+++`, `---` and `@@` lines and whose section heading is a `diff --git` line. Any scanner that finds file boundaries by searching for those tokens anywhere in the stream splits this single-file diff into several phantom files.

File
DIFF · Diffs · UTF-8
Preview of Unified Diff - Pasted Into an Email Body
diff
1018 B
Actual file preview for Unified Diff - Pasted Into an Email Body

Unified Diff - Pasted Into an Email Body

A patch as it actually arrives in a mailing-list message: prose above it, a sign-off and an email signature below it, and a signature separator that looks like the start of a deletion. Extractors must find the diff without swallowing the surrounding text.

File
DIFF · Diffs · UTF-8
Preview of Git Patch - Empty Commit With No Diff
patch
308 B
Actual file preview for Git Patch - Empty Commit With No Diff

Git Patch - Empty Commit With No Diff

format-patch output for a commit created with `--allow-empty`: full mail headers, a commit message, the `---` separator, and then straight to the signature with no diffstat and no diff. Pipelines that treat 'no diff found' as a parse error reject a message that git itself considers valid.

File
PATCH · Patches · UTF-8
Preview of Git Patch - Bare --- Line Inside the Commit Message
patch
1.3 KB
Actual file preview for Git Patch - Bare --- Line Inside the Commit Message

Git Patch - Bare --- Line Inside the Commit Message

The commit message uses `---` as a horizontal rule, so the file contains two lines that look like the diffstat separator. git's own mailinfo ends the message at the FIRST one, which quietly truncates the message and drops the rounding table — the patch still applies, but the recorded history is wrong.

File
PATCH · Patches · UTF-8
Preview of Git Patch - Intentionally Invalid, Truncated Mid-Hunk
patch
569 B
Actual file preview for Git Patch - Intentionally Invalid, Truncated Mid-Hunk

Git Patch - Intentionally Invalid, Truncated Mid-Hunk

An intentionally invalid patch: the file ends three lines into a hunk that declares many more, as it would after a truncated download or a mail client cutting the message. Nothing is corrupt at the byte level, so a parser must notice the count mismatch rather than applying a partial hunk.

File
PATCH · Patches · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Git Patch - Intentionally Invalid Hunk Line Counts
patch
1.2 KB
Actual file preview for Git Patch - Intentionally Invalid Hunk Line Counts

Git Patch - Intentionally Invalid Hunk Line Counts

An intentionally invalid patch whose hunk header claims 99 lines on each side while the body supplies far fewer. Every other byte is a well-formed patch, so this isolates one question: does the applier verify the declared counts, or does it trust them and read past the end of the hunk?

File
PATCH · Patches · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Combined Diff - diff --cc With Two Parents
diff
256 B
Actual file preview for Combined Diff - diff --cc With Two Parents

Combined Diff - diff --cc With Two Parents

What `git show` prints for a merge commit: a `diff --cc` header, an index line naming three blobs, `@@@` hunk markers, and two prefix columns instead of one. The `++` line is the giveaway a reviewer is looking for — content that appears in the merge result but in neither parent.

File
DIFF · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Combined Diff - Octopus Merge With Three Parents
diff
272 B
Actual file preview for Combined Diff - Octopus Merge With Three Parents

Combined Diff - Octopus Merge With Three Parents

An octopus merge, so the hunk marker grows to `@@@@` and every line carries three prefix columns. Any parser that hard-codes `@@@` or assumes two columns reads the third column as the first character of the line's content.

File
DIFF · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Combined Diff - Per-Parent mode Line
diff
299 B
Actual file preview for Combined Diff - Per-Parent mode Line

Combined Diff - Per-Parent mode Line

When the file mode differs between the parents and the merge result, a combined diff adds a `mode a,b..result` line below the index line — a comma-separated shape that appears nowhere else in git's output. Parsers written for the single-parent `old mode`/`new mode` pair do not recognise it.

File
DIFF · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Merge Conflict - Two-Way (merge) Marker Style
txt
128 B
Actual file preview for Merge Conflict - Two-Way (merge) Marker Style

Merge Conflict - Two-Way (merge) Marker Style

A working-tree file left mid-merge in git's default `merge` conflict style: our version, a row of equals signs, their version, and branch labels on the opening and closing markers. Both sides happen to end with the same line, which the zdiff3 twin in this group hoists out and this style repeats.

File
TXT · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Merge Conflict - diff3 Marker Style With Base Section
txt
172 B
Actual file preview for Merge Conflict - diff3 Marker Style With Base Section

Merge Conflict - diff3 Marker Style With Base Section

The same conflict with `merge.conflictStyle=diff3`, which inserts the merge base between the two sides behind a row of pipes. Tools that split a conflict on `=======` alone silently fold the ancestor text into the ours side.

File
TXT · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Merge Conflict - zdiff3 Marker Style
txt
161 B
Actual file preview for Merge Conflict - zdiff3 Marker Style

Merge Conflict - zdiff3 Marker Style

The identical merge under `merge.conflictStyle=zdiff3`, which hoists lines common to both sides out of the conflict region — here 'jitter: on' moves below the closing marker. Diff this against the diff3 twin to see that the same conflict produces different file contents depending on one config value.

File
TXT · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Merge Conflict - Three Regions in One File
txt
424 B
Actual file preview for Merge Conflict - Three Regions in One File

Merge Conflict - Three Regions in One File

One file left with three independent unresolved regions and clean text between them, which is what a real deployment-values merge looks like. Editors that jump to 'the next conflict' and resolvers that report a boolean rather than a count both get exercised here.

File
TXT · Merges · UTF-8
Preview of Package Manifest - Intentionally Invalid, Conflict Markers in JSON
json
244 B
Actual file preview for Package Manifest - Intentionally Invalid, Conflict Markers in JSON

Package Manifest - Intentionally Invalid, Conflict Markers in JSON

A package manifest left mid-merge, so the file is intentionally invalid JSON: conflict markers sit inside the dependencies object. Any tool that reads manifests has to fail on this with a message about the conflict rather than a bare syntax error at line 5.

File
JSON · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Merge Conflict - Real Region Beside Marker Lookalikes
md
489 B
Actual file preview for Merge Conflict - Real Region Beside Marker Lookalikes

Merge Conflict - Real Region Beside Marker Lookalikes

Documentation about merge conflicts that quotes the markers inside a fenced code block, and then genuinely conflicts further down. A pre-commit hook that greps for `^<<<<<<<` reports two hits and blocks a clean commit; one that understands Markdown fences reports the one that matters.

File
MD · Merges · UTF-8
Preview of Merge Conflict - Nested Markers From a Conflicted Resolution
txt
217 B
Actual file preview for Merge Conflict - Nested Markers From a Conflicted Resolution

Merge Conflict - Nested Markers From a Conflicted Resolution

Someone committed a file that still contained conflict markers, and merging that commit produced markers inside markers. Region matchers that pair the first `<<<<<<<` with the first `=======` split this file in the wrong place and produce two overlapping regions that cannot both be resolved.

File
TXT · Merges · UTF-8
Preview of Reject File - Hunks git apply Could Not Place
diff
737 B
Actual file preview for Reject File - Hunks git apply Could Not Place

Reject File - Hunks git apply Could Not Place

What `git apply --reject` leaves behind when a hunk will not apply: the failed hunks alone, under a header that is neither `diff --git` nor a plain `---`/`+++` pair. Ships with its .orig twin so the pair can drive a resolve-the-reject workflow end to end.

File
DIFF · Merges · UTF-8
Use case
Error handlingVisual diff / regression+1· Paired fixture
Preview of MERGE_MSG - Merge Commit Template With a Conflicts Block
txt
462 B
Actual file preview for MERGE_MSG - Merge Commit Template With a Conflicts Block

MERGE_MSG - Merge Commit Template With a Conflicts Block

The message template git writes into .git/MERGE_MSG when a merge stops on conflicts: one real subject line followed by a commented list of the conflicted paths and the standard advice block. Everything after the first blank line is stripped by `git commit`, so a hook that lints the whole file rejects messages git would accept.

File
TXT · Merges · UTF-8
Preview of CODEOWNERS - Intentionally Invalid, Five Distinct Defects
txt
571 B
Actual file preview for CODEOWNERS - Intentionally Invalid, Five Distinct Defects

CODEOWNERS - Intentionally Invalid, Five Distinct Defects

An intentionally invalid ownership file carrying five defects that all parse as plausible lines: an owner that is neither a handle nor an email, a team with no organisation, a character class, a negation, and a path with an unescaped space. Each is a separate assertion for a linter, and none of them is a syntax error a naive line splitter would notice.

File
TXT · Repo Config · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of Commit Message - Valid Conventional Commit With Trailers
txt
466 B
Actual file preview for Commit Message - Valid Conventional Commit With Trailers

Commit Message - Valid Conventional Commit With Trailers

A commit message file exactly as `git commit` hands it to a commit-msg hook: a conventional subject, a wrapped body, two trailers, and git's own comment block that the hook must ignore. The subject is 43 characters, comfortably inside commitlint's default 72-character header limit.

File
TXT · History · UTF-8
Use case
Config parsingVisual diff / regression+1· Conversion set
Preview of Commit Message - Breaking Change With ! and a Footer
txt
372 B
Actual file preview for Commit Message - Breaking Change With ! and a Footer

Commit Message - Breaking Change With ! and a Footer

A breaking change announced twice, which the specification allows: a `!` after the scope and a `BREAKING CHANGE:` footer whose value continues onto a second line. Generators that stop a footer at the first newline lose half the sentence, and version bumpers that only look for one of the two markers under-bump the release.

File
TXT · History · UTF-8
Use case
Config parsingVisual diff / regression+1· Conversion set
Preview of Commit Message - Intentionally Invalid, Four Rule Violations
txt
281 B
Actual file preview for Commit Message - Intentionally Invalid, Four Rule Violations

Commit Message - Intentionally Invalid, Four Rule Violations

An intentionally invalid commit message that breaks four commitlint rules at once: no conventional type, a 116-character header, no blank line separating subject from body, and a body that starts mid-sentence. Every rule should fire independently, which is what makes this useful for checking that a linter reports all violations rather than stopping at the first.

File
TXT · History · UTF-8
Use case
Error handlingVisual diff / regression+1· Conversion set
Preview of OTLP Trace — ERROR Status and Exception Event (json)
json
29.8 KB
Actual file preview for OTLP Trace — ERROR Status and Exception Event (json)

OTLP Trace — ERROR Status and Exception Event (json)

A failed checkout: an upstream payment timeout sets ERROR status on four spans up the chain and attaches an exception event whose exception.stacktrace attribute holds a real multi-line Python traceback with embedded newlines. The fixture for error grouping, status propagation and multi-line attribute rendering.

File
JSON · Traces
Preview of OTLP Trace — Clock Skew, Child Starts Before Its Parent (json)
json
13.7 KB
Actual file preview for OTLP Trace — Clock Skew, Child Starts Before Its Parent (json)

OTLP Trace — Clock Skew, Child Starts Before Its Parent (json)

Two hosts whose clocks disagree by 12 ms, so a server span appears to start before the client span that called it. Nothing in the payload is malformed — this is the most common real cause of a negative-latency gap in a waterfall, and viewers must show it rather than crash or silently reorder.

File
JSON · Traces
Use case
ObservabilityError handling+1· Conversion set
Preview of OTLP Trace — Orphan Span with a Missing Parent (json)
json
26.7 KB
Actual file preview for OTLP Trace — Orphan Span with a Missing Parent (json)

OTLP Trace — Orphan Span with a Missing Parent (json)

The checkout trace with one intermediate span dropped, as happens when an exporter's queue overflows. Three spans now reference a parent that is not in the payload — a partial trace that a store must render rather than reject.

File
JSON · Traces
Use case
ObservabilityError handling+1· Conversion set
Preview of OTLP Trace — Duplicate Span IDs, Intentionally Invalid (json)
json
19 KB
Actual file preview for OTLP Trace — Duplicate Span IDs, Intentionally Invalid (json)

OTLP Trace — Duplicate Span IDs, Intentionally Invalid (json)

Two different spans share one span ID inside a single trace, which the specification forbids. Intentionally invalid: it is the fixture for the de-duplication path, where a naive store silently overwrites one span with the other and loses a subtree.

File
JSON · Traces
Use case
ObservabilityError handling+1· Conversion set
Preview of OTLP Trace — All-Zero Trace and Span IDs, Intentionally Invalid (json)
json
6.2 KB
Actual file preview for OTLP Trace — All-Zero Trace and Span IDs, Intentionally Invalid (json)

OTLP Trace — All-Zero Trace and Span IDs, Intentionally Invalid (json)

A trace whose trace ID and root span ID are all zeroes — the value an uninitialised context produces. Intentionally invalid: the specification defines all-zero IDs as invalid, so a conformant receiver must reject the spans instead of creating a permanent bucket that every broken service writes into.

File
JSON · Traces
Use case
ObservabilitySchema validation+1· Conversion set
Preview of OTLP Trace — Negative and Zero Durations, Intentionally Invalid (json)
json
12.6 KB
Actual file preview for OTLP Trace — Negative and Zero Durations, Intentionally Invalid (json)

OTLP Trace — Negative and Zero Durations, Intentionally Invalid (json)

One span ends 8.4 ms before it started and another has identical start and end timestamps. Intentionally invalid: negative durations poison latency aggregates — a single one can drag a p99 below zero — so this is the fixture for the validation that must sit in front of any duration metric.

File
JSON · Traces
Use case
ObservabilitySchema validation+1· Conversion set
Preview of OTLP Trace — Truncated Mid-Object, Intentionally Corrupt (json)
json
1.7 KB
Actual file preview for OTLP Trace — Truncated Mid-Object, Intentionally Corrupt (json)

OTLP Trace — Truncated Mid-Object, Intentionally Corrupt (json)

An OTLP/JSON export cut off in the middle of an object, the way a file sink looks when the collector is killed mid-write. This file is intentionally corrupt and small: it exists so an ingestion path can be tested for a clean parse error with a byte offset instead of a hang or a half-committed batch.

File
JSON · Traces
Preview of W3C traceparent — Valid and Invalid Header Cases (txt)
txt
1.2 KB
Actual file preview for W3C traceparent — Valid and Invalid Header Cases (txt)

W3C traceparent — Valid and Invalid Header Cases (txt)

A labelled set of traceparent header values: four that must parse — including a future version with extra fields, which parsers are required to accept — and eight that must be rejected, covering all-zero IDs, version ff, short and uppercase trace IDs, and missing or trailing fields.

File
TXT · Traces
Use case
ObservabilitySchema validation+1· Conversion set
Preview of Prometheus Exposition — Duplicate Series, Intentionally Invalid (prom)
prom
497 B
Actual file preview for Prometheus Exposition — Duplicate Series, Intentionally Invalid (prom)

Prometheus Exposition — Duplicate Series, Intentionally Invalid (prom)

One label set exposed twice, a second pair that is only a duplicate once labels are sorted, and a repeated HELP line. Intentionally invalid: a scrape must fail rather than let last-write-wins decide which of two values for the same series survives.

File
PROM · Metrics
Use case
ObservabilitySchema validation+1· Conversion set
Preview of Prometheus Exposition — Broken Histograms, Intentionally Invalid (prom)
prom
594 B
Actual file preview for Prometheus Exposition — Broken Histograms, Intentionally Invalid (prom)

Prometheus Exposition — Broken Histograms, Intentionally Invalid (prom)

Two histogram families that are syntactically fine and semantically wrong: one has non-monotonic buckets and no +Inf bucket, the other reports a _count larger than its +Inf bucket. Intentionally invalid, because histogram_quantile over either produces a confidently wrong number rather than an error.

File
PROM · Metrics
Use case
ObservabilitySchema validation+1· Conversion set
Preview of Prometheus Exposition — Samples with No HELP or TYPE (prom)
prom
264 B
Actual file preview for Prometheus Exposition — Samples with No HELP or TYPE (prom)

Prometheus Exposition — Samples with No HELP or TYPE (prom)

Samples exposed with no HELP or TYPE at all, metadata arriving after the sample it describes, blank and whitespace-only lines and a bare comment. All of it is legal — metadata is optional — and all of it breaks parsers that assume every sample is introduced by a TYPE line.

File
PROM · Metrics
Use case
ObservabilityConfig parsing+1· Conversion set
Preview of Prometheus Exposition — Empty but Valid Scrape (prom)
prom
213 B
Actual file preview for Prometheus Exposition — Empty but Valid Scrape (prom)

Prometheus Exposition — Empty but Valid Scrape (prom)

A scrape body with metadata but no samples, which is what a freshly started process returns before it has recorded anything. Valid, and routinely mistaken for a failed scrape by code that treats an empty result as an error.

File
PROM · Metrics
Use case
ObservabilityError handling+1· Conversion set
Preview of OpenMetrics — Missing # EOF Marker, Intentionally Invalid (prom)
prom
238 B
Actual file preview for OpenMetrics — Missing # EOF Marker, Intentionally Invalid (prom)

OpenMetrics — Missing # EOF Marker, Intentionally Invalid (prom)

A document that parses perfectly as Prometheus text and is invalid as OpenMetrics, because the mandatory # EOF terminator is missing. That marker is the format's only defence against a truncated response being accepted as complete — which is the exact failure this file reproduces.

File
PROM · Metrics
Use case
ObservabilitySchema validation+1· Conversion set
Preview of Prometheus HTTP API — Error Envelope with a PromQL Parse Error (json)
json
246 B
Actual file preview for Prometheus HTTP API — Error Envelope with a PromQL Parse Error (json)

Prometheus HTTP API — Error Envelope with a PromQL Parse Error (json)

The error envelope a Prometheus API returns for a malformed PromQL query — status, errorType, a message with a line and column position, and an empty but present data object. Clients that only check for a data key render this as a successful empty result.

File
JSON · Metrics
Preview of Structured Log — Multi-Line Stack Traces Inside JSON (jsonl)
jsonl
2.8 KB
Actual file preview for Structured Log — Multi-Line Stack Traces Inside JSON (jsonl)

Structured Log — Multi-Line Stack Traces Inside JSON (jsonl)

Java, Python and Go stack traces carried inside JSON string fields with their newlines escaped — the shape a structured logger produces, and the one that defeats multi-line joining rules written for plain text. Includes a Caused by chain and a goroutine dump.

File
JSONL · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Structured Log — Clock Skew Across Three Hosts (jsonl)
jsonl
8.6 KB
Actual file preview for Structured Log — Clock Skew Across Three Hosts (jsonl)

Structured Log — Clock Skew Across Three Hosts (jsonl)

Three hosts writing to one stream with disagreeing clocks: one 45 seconds behind and one six hours ahead because NTP is unreachable. Interleaved by host, so a naive tail shows events from the future and a retention window silently drops the past.

File
JSONL · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Structured Log — Truncated Final Record, Intentionally Corrupt (jsonl)
jsonl
4.1 KB
Actual file preview for Structured Log — Truncated Final Record, Intentionally Corrupt (jsonl)

Structured Log — Truncated Final Record, Intentionally Corrupt (jsonl)

Twelve complete JSON records followed by a thirteenth cut off after 96 bytes with no trailing newline, exactly as a container log looks when the process is killed mid-write. Intentionally corrupt and small: a tailer must hold the partial line for a continuation rather than emit or discard it.

File
JSONL · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Structured Log — Lone Surrogate Escapes, Intentionally Invalid (jsonl)
jsonl
479 B
Actual file preview for Structured Log — Lone Surrogate Escapes, Intentionally Invalid (jsonl)

Structured Log — Lone Surrogate Escapes, Intentionally Invalid (jsonl)

Two records containing unpaired \ud800 and \udfff escapes between three well-formed ones, plus a correct surrogate pair for comparison. Intentionally invalid: the escapes are syntactically legal JSON but cannot be encoded as UTF-8, which is where a re-serialising pipeline breaks.

File
JSONL · Logs
Use case
ObservabilityEncoding detection+1· Conversion set
Preview of Structured Log — Blank, Non-JSON and BOM-Prefixed Lines (jsonl)
jsonl
1.8 KB
Actual file preview for Structured Log — Blank, Non-JSON and BOM-Prefixed Lines (jsonl)

Structured Log — Blank, Non-JSON and BOM-Prefixed Lines (jsonl)

A JSON Lines file with the debris a real container stream carries: blank and whitespace-only lines, one bare stderr write from a C library, a mid-file byte-order mark and two lines that are valid JSON but not objects. Five real records are in there.

File
JSONL · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Plain-Text Log — Multi-Line Events Needing Line Joining (log)
log
1.9 KB
Actual file preview for Plain-Text Log — Multi-Line Events Needing Line Joining (log)

Plain-Text Log — Multi-Line Events Needing Line Joining (log)

A Spring-style text log where two stack traces span many physical lines. Eight logical events across a larger number of lines, so a shipper's multi-line rule — anything not starting with a timestamp continues the previous event — can be scored against a known answer.

File
LOG · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Go Panic with Full Goroutine Dump (log)
log
879 B
Actual file preview for Go Panic with Full Goroutine Dump (log)

Go Panic with Full Goroutine Dump (log)

A Go panic followed by the runtime's full goroutine dump — four goroutines with their wait states, two-line frames and a created by attribution, separated by blank lines. Blank-line separation defeats multi-line rules that treat an empty line as the end of an event.

File
LOG · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Rust Panic with Numbered Backtrace (log)
log
974 B
Actual file preview for Rust Panic with Numbered Backtrace (log)

Rust Panic with Numbered Backtrace (log)

A Rust panic surrounded by ordinary tracing output: the panic location with line and column, a six-frame numbered backtrace where every frame spans two lines, and the RUST_BACKTRACE note. Frame numbering and the deep indent are what a generic stack parser gets wrong here.

File
LOG · Logs · 6 frames
Use case
ObservabilityLog parsing+1· Conversion set
Preview of .NET Exception with an Inner Exception Chain (log)
log
1.1 KB
Actual file preview for .NET Exception with an Inner Exception Chain (log)

.NET Exception with an Inner Exception Chain (log)

A .NET exception whose inner exception is introduced by the ---> marker and closed by End of inner exception stack trace, wrapped in pipe-delimited log lines. Error groupers that key on the outermost message alone merge two genuinely different faults here.

File
LOG · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of Plain-Text Log — No Trailing Newline on the Last Line (log)
log
245 B
Actual file preview for Plain-Text Log — No Trailing Newline on the Last Line (log)

Plain-Text Log — No Trailing Newline on the Last Line (log)

Four log lines where the last has no terminating newline — the normal state of any file still open for append. A tailer that only emits on seeing a newline holds that fourth line forever, which is why the newest error is the one missing from the dashboard.

File
LOG · Logs
Use case
ObservabilityLog parsing+1· Conversion set
Preview of CycloneDX 1.6 Minimal SBOM (One Component)
json
2.6 KB
Actual file preview for CycloneDX 1.6 Minimal SBOM (One Component)

CycloneDX 1.6 Minimal SBOM (One Component)

The smallest CycloneDX document that is still valid: required metadata, one fictional component, and no dependencies array — for testing that a reader handles an SBOM with nothing optional present. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Sbom
Use case
JSON parsingSchema validation+1· Conversion set
Preview of CycloneDX SBOM With Unicode Metadata (Edge Case)
json
11.6 KB
Actual file preview for CycloneDX SBOM With Unicode Metadata (Edge Case)

CycloneDX SBOM With Unicode Metadata (Edge Case)

A CycloneDX SBOM whose author names and properties contain accented Latin, CJK, right-to-left Hebrew, emoji and a deliberately long property value — for testing encoding handling and field-width assumptions. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Sbom · UTF-8 (no BOM)
Use case
JSON parsingEncoding detection+1· Conversion set
Preview of CycloneDX SBOM, Truncated — Intentionally Corrupt
json
1.2 KB
Actual file preview for CycloneDX SBOM, Truncated — Intentionally Corrupt

CycloneDX SBOM, Truncated — Intentionally Corrupt

An intentionally corrupt CycloneDX SBOM: a valid 1.6 document cut off mid-object so the JSON never closes. Small on purpose — it exists to check that a reader fails cleanly instead of half-loading a component list. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Sbom
Use case
Error handlingJSON parsing· Conversion set
Preview of CycloneDX SBOM With Schema Violations — Intentionally Invalid
json
11.3 KB
Actual file preview for CycloneDX SBOM With Schema Violations — Intentionally Invalid

CycloneDX SBOM With Schema Violations — Intentionally Invalid

An intentionally invalid CycloneDX SBOM: the JSON parses, but bomFormat is missing, one component has no name, and a dependency references a bom-ref that no component declares. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Sbom
Use case
Schema validationError handling+1· Conversion set
Preview of SPDX 2.3 Minimal SBOM (Tag-Value)
spdx
1.2 KB
Actual file preview for SPDX 2.3 Minimal SBOM (Tag-Value)

SPDX 2.3 Minimal SBOM (Tag-Value)

An SPDX 2.3 tag-value document with only the mandatory document header and a single fictional package — no relationships, no files — for testing that a parser accepts a document with every optional block absent. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
SPDX · Sbom
Use case
Config parsingSchema validation+1· Conversion set
Preview of SPDX Tag-Value SBOM, Truncated — Intentionally Corrupt
spdx
1.5 KB
Actual file preview for SPDX Tag-Value SBOM, Truncated — Intentionally Corrupt

SPDX Tag-Value SBOM, Truncated — Intentionally Corrupt

An intentionally corrupt SPDX tag-value document, cut off part-way through a tag name so the final line has no colon or value. Kept small on purpose. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
SPDX · Sbom
Use case
Error handlingConfig parsing· Conversion set
Preview of npm package-lock.json (lockfileVersion 2, Dual Layout)
json
6.6 KB
Actual file preview for npm package-lock.json (lockfileVersion 2, Dual Layout)

npm package-lock.json (lockfileVersion 2, Dual Layout)

The transitional npm v2 lockfile, which carries BOTH the v3 packages map and the legacy nested dependencies tree describing the same fictional install — the case where a parser must not double-count. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Lockfiles
Use case
JSON parsingConversion testing+1· Conversion set
Preview of npm Lockfile With Integrity Mismatch — Intentionally Invalid
json
3.7 KB
Actual file preview for npm Lockfile With Integrity Mismatch — Intentionally Invalid

npm Lockfile With Integrity Mismatch — Intentionally Invalid

An intentionally invalid npm lockfile: two fictional packages carry sha512 integrity strings that cannot match their resolved tarballs — one derived from the wrong version, one a padded placeholder. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Lockfiles
Use case
Error handlingJSON parsing+1· Conversion set
Preview of npm Lockfile With a Peer Conflict and Nested Duplicate
json
4.2 KB
Actual file preview for npm Lockfile With a Peer Conflict and Nested Duplicate

npm Lockfile With a Peer Conflict and Nested Duplicate

An npm lockfile where the fictional example-cache pins a peer of example-logger@2.9.0 while the rest of the tree resolves 3.4.1, forcing a nested node_modules duplicate — the shape a deduplication report must detect. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Lockfiles
Use case
JSON parsingGraph data+1· Conversion set
Preview of yarn.lock (Berry, __metadata version 8)
lock
3.1 KB
Actual file preview for yarn.lock (Berry, __metadata version 8)

yarn.lock (Berry, __metadata version 8)

A modern Yarn Berry lockfile: YAML-shaped with an __metadata header, npm: protocol resolutions and cache-key-prefixed checksums — deliberately different from the Classic file in the same family. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
LOCK · Lockfiles
Use case
Config parsingConversion testing+1· Conversion set
Preview of Cargo.lock, Truncated — Intentionally Corrupt
lock
643 B
Actual file preview for Cargo.lock, Truncated — Intentionally Corrupt

Cargo.lock, Truncated — Intentionally Corrupt

An intentionally corrupt Cargo.lock: a valid version 4 lockfile cut off inside a [[package]] table so the final key/value pair is incomplete. Small on purpose. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
LOCK · Lockfiles
Use case
Error handlingConfig parsing· Conversion set
Preview of go.sum Checksum Lines (as .txt)
txt
1.4 KB
Actual file preview for go.sum Checksum Lines (as .txt)

go.sum Checksum Lines (as .txt)

go.sum content: two h1: lines per fictional module — one for the module zip and one for its go.mod — which is the pairing a verifier must require. Served as .txt because go.sum has no registered media type. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
TXT · Lockfiles
Use case
Config parsingConversion testing+1· Conversion set
Preview of Gemfile.lock (Bundler)
lock
735 B
Actual file preview for Gemfile.lock (Bundler)

Gemfile.lock (Bundler)

A Bundler lockfile in its indentation-significant block format — specs nested under GEM, transitive requirements nested one level deeper, and the BUNDLED WITH version on its own indented line. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
LOCK · Lockfiles
Use case
Config parsingConversion testing+1· Conversion set
Preview of mix.lock (Elixir)
lock
1.7 KB
Actual file preview for mix.lock (Elixir)

mix.lock (Elixir)

An Elixir mix.lock: a literal Elixir map whose values are tuples of atoms, strings and lists. It is neither JSON nor TOML, so a generic lockfile reader has to special-case it. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
LOCK · Lockfiles
Use case
Config parsingConversion testing+1· Conversion set
Preview of Trivy Container Image Scan Report (JSON)
json
7.4 KB
Actual file preview for Trivy Container Image Scan Report (JSON)

Trivy Container Image Scan Report (JSON)

A Trivy-shaped image report with three result blocks — OS packages, language packages and a Dockerfile misconfiguration — so a parser must handle a Results array whose members have different keys. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
JSON parsingSchema validation+1· Conversion set
Preview of Trivy Clean Scan Report (Zero Findings)
json
518 B
Actual file preview for Trivy Clean Scan Report (Zero Findings)

Trivy Clean Scan Report (Zero Findings)

A clean scan report — the case dashboards get wrong. Trivy omits the Vulnerabilities key entirely rather than emitting an empty array, so a reader that assumes the key exists throws on a passing build. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
JSON parsingError handling+1· Conversion set
Preview of Scanner Report, Truncated — Intentionally Corrupt
json
901 B
Actual file preview for Scanner Report, Truncated — Intentionally Corrupt

Scanner Report, Truncated — Intentionally Corrupt

An intentionally corrupt scanner report: a valid Trivy-shaped JSON document cut off inside the first finding, for testing that a CI gate fails the build rather than reporting zero vulnerabilities. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
Error handlingJSON parsing· Conversion set
Preview of Grype Table Console Output
txt
434 B
Actual file preview for Grype Table Console Output

Grype Table Console Output

The console table a scanner prints, in fixed-width columns — the output people actually paste into tickets, and the one a log scraper has to parse without a delimiter. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
TXT · Vulnerability · 4 rows
Use case
Log parsingConversion testing+1· Conversion set
Preview of OSV Record With Schema Violations — Intentionally Invalid
json
1.5 KB
Actual file preview for OSV Record With Schema Violations — Intentionally Invalid

OSV Record With Schema Violations — Intentionally Invalid

An intentionally invalid OSV record: the JSON parses, but the required id is missing, modified is not an RFC 3339 timestamp, the SEMVER range has a fixed event with no introduced event, and severity.score is a number where the schema demands a CVSS vector string. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
Schema validationError handling+1· Conversion set
Preview of npm audit Report (v1, Legacy Shape)
json
4.5 KB
Actual file preview for npm audit Report (v1, Legacy Shape)

npm audit Report (v1, Legacy Shape)

The legacy npm audit shape — numeric advisory ids, a separate actions array and dependency paths written with '>' — which tools built for the v2 report silently read as zero findings. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
JSON parsingConversion testing+1· Conversion set
Preview of pip-audit Report (JSON)
json
1.8 KB
Actual file preview for pip-audit Report (JSON)

pip-audit Report (JSON)

A pip-audit report for the fictional Python packages. It deliberately carries no severity field — pip-audit does not assign one — which is the case a severity gate must handle without defaulting to critical. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
JSON parsingConversion testing+1· Conversion set
Preview of OWASP Dependency-Check Report (XML)
xml
3.6 KB
Actual file preview for OWASP Dependency-Check Report (XML)

OWASP Dependency-Check Report (XML)

The XML twin of the Dependency-Check report — the form most Maven and Jenkins integrations consume — carrying the same four SAMPLE findings inside a namespaced analysis element. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
XML · Vulnerability
Use case
Conversion testingSchema validation+1· Paired fixture
Preview of Dependency Alerts Feed (JSON)
json
5.3 KB
Actual file preview for Dependency Alerts Feed (JSON)

Dependency Alerts Feed (JSON)

The shape a hosted dependency-alert API returns: alerts with lifecycle state, a nested advisory, a patched-version pointer and an explicitly null dismissed_reason on the alerts that were not dismissed. Advisory identifiers use the invented NOVUS-SAMPLE namespace with SAMPLE-CVE aliases; no identifier here refers to a published CVE, GHSA or OSV record, and no package named exists.

File
JSON · Vulnerability
Use case
JSON parsingAPI testing+1· Conversion set
Preview of DSSE Envelope With Undecodable Payload — Intentionally Corrupt
json
398 B
Actual file preview for DSSE Envelope With Undecodable Payload — Intentionally Corrupt

DSSE Envelope With Undecodable Payload — Intentionally Corrupt

An intentionally corrupt DSSE envelope: the JSON parses and the signature block looks complete, but the payload is truncated and contains characters outside the base64 alphabet. Signatures, key ids and certificates here are SAMPLE placeholders — the base64 decodes to the words 'SAMPLE SIGNATURE', so verification must fail. Nothing here is cryptographically valid and no key material is real.

File
JSON · Provenance
Use case
Error handlingJSON parsing· Conversion set
Preview of Rekor Transparency-Log Entry
json
1.6 KB
Actual file preview for Rekor Transparency-Log Entry

Rekor Transparency-Log Entry

A transparency-log entry keyed by its own UUID at the top level — a shape that breaks parsers expecting a fixed root key — with a base64 body that decodes to a dsse record. Signatures, key ids and certificates here are SAMPLE placeholders — the base64 decodes to the words 'SAMPLE SIGNATURE', so verification must fail. Nothing here is cryptographically valid and no key material is real.

File
JSON · Provenance
Use case
JSON parsingSchema validation+1· Conversion set
Preview of Release SHA256SUMS Manifest
txt
1 KB
Actual file preview for Release SHA256SUMS Manifest

Release SHA256SUMS Manifest

The oldest supply-chain artifact there is: a sha256sum manifest with the exact two-space separator the tool emits, listing a fictional release tarball and its nine dependency archives. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
TXT · Provenance
Use case
Config parsingConversion testing+1· Conversion set
Preview of Detached Signature, ASCII Armor — SAMPLE Shape
txt
564 B
Actual file preview for Detached Signature, ASCII Armor — SAMPLE Shape

Detached Signature, ASCII Armor — SAMPLE Shape

An ASCII-armored detached signature block of the shape that accompanies a SHA256SUMS file. It is a SAMPLE placeholder, not a valid OpenPGP signature — armor detectors will find it, verifiers must reject it. Signatures, key ids and certificates here are SAMPLE placeholders — the base64 decodes to the words 'SAMPLE SIGNATURE', so verification must fail. Nothing here is cryptographically valid and no key material is real.

File
TXT · Provenance
Use case
Config parsingCertificate & key testing+1· Conversion set
Preview of Dependency Graph With a Cycle (JSON)
json
1.5 KB
Actual file preview for Dependency Graph With a Cycle (JSON)

Dependency Graph With a Cycle (JSON)

A dependency graph containing a genuine three-node cycle between fictional plugins — the fixture that makes a naive recursive walker hang or blow the stack, with the cycle path stated so the expected answer is unambiguous. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
JSON · Graphs
Use case
JSON parsingGraph data+1· Paired fixture
Preview of Dependency Graph With a Cycle (Graphviz DOT)
dot
740 B
Actual file preview for Dependency Graph With a Cycle (Graphviz DOT)

Dependency Graph With a Cycle (Graphviz DOT)

The cyclic plugin graph as DOT, with the three cycle edges highlighted. Graphviz renders it happily, which is exactly why a topological sort must be the thing that rejects it. Every package, version, hash and licence is fictional — the tree describes nothing real.

File
DOT · Graphs
Use case
Graph dataError handling+1· Paired fixture
Preview of Kestrel Bay Territory — GML 3.2 Twin (latitude-first)
gml
7.1 KB
Actual file preview for Kestrel Bay Territory — GML 3.2 Twin (latitude-first)

Kestrel Bay Territory — GML 3.2 Twin (latitude-first)

The territory as GML 3.2 with an EPSG URN srsName — which means latitude comes first, the opposite of GeoJSON. This is the single most common cause of features landing in the wrong hemisphere, so the file is built to catch it.

File
GML · Territory · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of GeoJSON Geometry — GeometryCollection
geojson
1.3 KB
Actual file preview for GeoJSON Geometry — GeometryCollection

GeoJSON Geometry — GeometryCollection

A single Feature whose geometry is a GeometryCollection of a Point, a LineString and a Polygon. Many simple readers flatten or silently drop these, and many writers cannot produce them at all, so it is the usual place a conversion loses data.

File
GEOJSON · Geojson · UTF-8
Use case
GeospatialJSON parsing+1· Conversion set
Preview of GeoJSON Feature — Null Geometry
geojson
579 B
Actual file preview for GeoJSON Feature — Null Geometry

GeoJSON Feature — Null Geometry

RFC 7946 permits `"geometry": null` for a feature with attributes but no location. Readers that assume every feature has coordinates crash here, and writers that emit an empty Point instead corrupt the record's meaning.

File
GEOJSON · Geojson · UTF-8
Use case
GeospatialJSON parsing+1· Conversion set
Preview of GeoJSON — Bare Geometry Object (no Feature)
geojson
298 B
Actual file preview for GeoJSON — Bare Geometry Object (no Feature)

GeoJSON — Bare Geometry Object (no Feature)

A top-level Geometry object with no Feature or FeatureCollection around it. This is legal GeoJSON and is what PostGIS `ST_AsGeoJSON` returns, but a surprising number of importers only accept a FeatureCollection.

File
GEOJSON · Geojson · UTF-8
Use case
GeospatialJSON parsing+1· Conversion set
Preview of GeoJSON — Single Feature (no FeatureCollection)
geojson
232 B
Actual file preview for GeoJSON — Single Feature (no FeatureCollection)

GeoJSON — Single Feature (no FeatureCollection)

One Feature at the top level, with properties and an id but no enclosing collection — the shape a single-record API response takes. Pair it with the bare-geometry fixture to find readers that only handle one of the three legal root types.

File
GEOJSON · Geojson · UTF-8
Use case
GeospatialJSON parsing+1· Conversion set
Preview of GeoJSON — Empty FeatureCollection
geojson
52 B
Actual file preview for GeoJSON — Empty FeatureCollection

GeoJSON — Empty FeatureCollection

A structurally valid FeatureCollection with an empty `features` array — what a spatial query legitimately returns when nothing matches. It is the standard fixture for the empty-state path of a map component.

File
GEOJSON · Geojson · UTF-8
Use case
GeospatialJSON parsing+1· Conversion set
Preview of GeoJSON — Null and Empty Property Bags
geojson
767 B
Actual file preview for GeoJSON — Null and Empty Property Bags

GeoJSON — Null and Empty Property Bags

One feature with `"properties": {}`, one with `"properties": null` and one fully populated. Both empty forms are legal, and attribute-table writers routinely fall over on the null form when they try to enumerate its keys.

File
GEOJSON · Geojson · UTF-8
Use case
GeospatialJSON parsing+1· Conversion set
Preview of GeoJSON — LineString Crossing the Antimeridian (unsplit)
geojson
431 B
Actual file preview for GeoJSON — LineString Crossing the Antimeridian (unsplit)

GeoJSON — LineString Crossing the Antimeridian (unsplit)

A two-point line whose longitudes step from 179.6 to -179.7. Interpolating naively draws a 359.3-degree line all the way back around the world instead of the 0.7-degree hop across the 180th meridian — the classic antimeridian artefact.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Antimeridian Line Split per RFC 7946
geojson
675 B
Actual file preview for GeoJSON — Antimeridian Line Split per RFC 7946

GeoJSON — Antimeridian Line Split per RFC 7946

The same transect cut at the 180th meridian into a two-part MultiLineString, which is what RFC 7946 section 3.1.9 recommends. The split latitude is the linear interpolation of the unsplit twin, so the two files describe the same ground path.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of GeoJSON — Polygon Straddling the Antimeridian (unsplit)
geojson
676 B
Actual file preview for GeoJSON — Polygon Straddling the Antimeridian (unsplit)

GeoJSON — Polygon Straddling the Antimeridian (unsplit)

A rectangle whose east edge is at 179.7 W and west edge at 179.6 E. Read literally in planar coordinates it wraps the entire globe and inverts the inside/outside test, so point-in-polygon queries return the exact opposite of the truth.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Antimeridian Polygon Split into a MultiPolygon
geojson
1.2 KB
Actual file preview for GeoJSON — Antimeridian Polygon Split into a MultiPolygon

GeoJSON — Antimeridian Polygon Split into a MultiPolygon

The straddling block cut at 180 into two polygons that share an edge on the meridian — the interoperable form. Use it as the expected output when testing an antimeridian-splitting routine against the unsplit twin.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of GeoJSON — Longitude Written Beyond 180
geojson
459 B
Actual file preview for GeoJSON — Longitude Written Beyond 180

GeoJSON — Longitude Written Beyond 180

The same transect with its eastern end written as 180.3 rather than the normalised -179.7. Producers that accumulate longitudes across the antimeridian emit this constantly; RFC 7946 restricts longitude to -180..180, so a strict reader must reject or normalise it.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Points Exactly at the Poles
geojson
940 B
Actual file preview for GeoJSON — Points Exactly at the Poles

GeoJSON — Points Exactly at the Poles

Three points at exactly plus or minus 90 degrees latitude, two of which are the same physical place written with different longitudes. Web Mercator cannot represent either pole — latitude 90 projects to infinity — so this is the fixture that catches divide-by-zero and NaN in a reprojection path.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Polygon Enclosing the North Pole
geojson
884 B
Actual file preview for GeoJSON — Polygon Enclosing the North Pole

GeoJSON — Polygon Enclosing the North Pole

A ring that encloses the north pole by running along 85 N and closing across the top of the graticule. Planar area and centroid routines return meaningless answers here, and many renderers draw a rectangle rather than a cap.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — LineString Passing Over the North Pole
geojson
496 B
Actual file preview for GeoJSON — LineString Passing Over the North Pole

GeoJSON — LineString Passing Over the North Pole

A flight path that goes up one meridian, touches the pole, and comes down the antipodal meridian — so longitude jumps by exactly 180 degrees at the middle vertex. Renderers that interpolate in longitude draw a horizontal streak across the whole map instead.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Unclosed Polygon Ring
geojson
623 B
Actual file preview for GeoJSON — Intentionally Invalid: Unclosed Polygon Ring

GeoJSON — Intentionally Invalid: Unclosed Polygon Ring

Intentionally invalid: the parcel's exterior ring omits the repeated closing position that RFC 7946 requires. Many readers close it silently, which hides the producer's bug until a stricter consumer downstream rejects the data.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Clockwise Exterior Ring (right-hand rule violated)
geojson
1.1 KB
Actual file preview for GeoJSON — Clockwise Exterior Ring (right-hand rule violated)

GeoJSON — Clockwise Exterior Ring (right-hand rule violated)

Both rings of the Mill Court parcel are wound the wrong way round: the exterior clockwise, the interior counter-clockwise. RFC 7946 mandates the right-hand rule, and consumers that rely on winding to tell holes from shells will read this polygon inside out.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Self-Intersecting Ring
geojson
694 B
Actual file preview for GeoJSON — Intentionally Invalid: Self-Intersecting Ring

GeoJSON — Intentionally Invalid: Self-Intersecting Ring

Intentionally invalid: a bowtie ring whose two lobes wind in opposite directions, so the shoelace areas nearly cancel. Buffer, intersection and area operations on this geometry return nonsense rather than failing, which is why it belongs in a validation suite.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Ring With Only Three Positions
geojson
578 B
Actual file preview for GeoJSON — Intentionally Invalid: Ring With Only Three Positions

GeoJSON — Intentionally Invalid: Ring With Only Three Positions

Intentionally invalid: a ring of three positions that closes back on itself and therefore encloses nothing. RFC 7946 requires at least four positions for a linear ring, and this is the shape a simplification pass produces when it over-thins a small polygon.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Hole Outside Its Shell
geojson
1.1 KB
Actual file preview for GeoJSON — Intentionally Invalid: Hole Outside Its Shell

GeoJSON — Intentionally Invalid: Hole Outside Its Shell

Intentionally invalid: the second ring is a whole separate parcel filed as an interior ring of the first, which OGC Simple Features forbids. It is what happens when a MultiPolygon is flattened into a Polygon by concatenating rings.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Empty LineString Geometry
geojson
295 B
Actual file preview for GeoJSON — Empty LineString Geometry

GeoJSON — Empty LineString Geometry

A feature carrying a LineString with an empty coordinate array. Empty geometries are what spatial operations legitimately return — an intersection that misses, a clip that removes everything — and index and rendering code routinely assumes at least one coordinate exists.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Empty Polygon Geometry
geojson
289 B
Actual file preview for GeoJSON — Empty Polygon Geometry

GeoJSON — Empty Polygon Geometry

A feature carrying a Polygon with no rings at all. Empty geometries are what spatial operations legitimately return — an intersection that misses, a clip that removes everything — and index and rendering code routinely assumes at least one coordinate exists.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Empty GeometryCollection
geojson
300 B
Actual file preview for GeoJSON — Empty GeometryCollection

GeoJSON — Empty GeometryCollection

A GeometryCollection with an empty `geometries` array — structurally valid, semantically the empty geometry. Converters that map a collection onto a multi-geometry type usually emit null here, quietly changing the record's meaning.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Longitude Outside -180 to 180
geojson
368 B
Actual file preview for GeoJSON — Intentionally Invalid: Longitude Outside -180 to 180

GeoJSON — Intentionally Invalid: Longitude Outside -180 to 180

Intentionally invalid: a point at longitude 200. It is a plausible-looking number that usually comes from adding an offset without wrapping, and it survives JSON schema checks that only test for `number`.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Latitude Outside -90 to 90
geojson
366 B
Actual file preview for GeoJSON — Intentionally Invalid: Latitude Outside -90 to 90

GeoJSON — Intentionally Invalid: Latitude Outside -90 to 90

Intentionally invalid: latitude 95, five degrees past the north pole. This is the value that appears when longitude and latitude have been swapped somewhere upstream, so catching it early usually finds an axis-order bug rather than a data-entry one.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Coordinates as JSON Strings
geojson
363 B
Actual file preview for GeoJSON — Intentionally Invalid: Coordinates as JSON Strings

GeoJSON — Intentionally Invalid: Coordinates as JSON Strings

Intentionally invalid: the file is perfectly good JSON but the coordinates are quoted strings, which RFC 7946 does not allow. It is exactly what a CSV-to-GeoJSON script produces when it forgets to cast, and a permissive reader will coerce it and hide the bug.

File
GEOJSON · Geojson Edge Cases · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of TopoJSON — Coarse 100-Step Quantization (visible rounding)
topojson
6.7 KB
Actual file preview for TopoJSON — Coarse 100-Step Quantization (visible rounding)

TopoJSON — Coarse 100-Step Quantization (visible rounding)

The same territory quantized to only 100 steps, so rounding error reaches roughly 220 m and several vertices collapse onto the same grid cell. Use it to prove that a tolerance in your comparison code is actually being applied rather than accidentally passing.

File
TOPOJSON · Topojson · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of TopoJSON — Intentionally Invalid: Arc Referenced Without Reversal
topojson
1.2 KB
Actual file preview for TopoJSON — Intentionally Invalid: Arc Referenced Without Reversal

TopoJSON — Intentionally Invalid: Arc Referenced Without Reversal

Intentionally invalid: East Field references the shared arc forwards when it should use the reversed form, so its ring no longer closes. This is the single most common hand-editing mistake in TopoJSON, and it produces a plausible-looking file that renders as a torn shape.

File
TOPOJSON · Topojson · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of TopoJSON — Zero-Length Arc
topojson
1.5 KB
Actual file preview for TopoJSON — Zero-Length Arc

TopoJSON — Zero-Length Arc

A topology whose fourth arc repeats the same position twice, giving a line of zero length. Quantization produces these routinely when two vertices land in the same grid cell, and simplification code that divides by segment length fails on them.

File
TOPOJSON · Topojson · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GPX — Track Split Into Two Segments by a Pause
gpx
3.4 KB
Actual file preview for GPX — Track Split Into Two Segments by a Pause

GPX — Track Split Into Two Segments by a Pause

The same 24 points split into two `trkseg` elements with a ten-minute gap between them — what a receiver writes after a stop or a signal loss. Tools that concatenate segments without noticing the boundary report a moving average dragged down by a pause that never happened on the move.

File
GPX · Gpx · UTF-8
Use case
GeospatialTime-series data+1· Conversion set
Preview of GPX 1.1 — Current Schema
gpx
1.4 KB
Actual file preview for GPX 1.1 — Current Schema

GPX 1.1 — Current Schema

The same eight trackpoints written to the GPX 1.1 schema. The two versions differ in namespace and in where document metadata lives — 1.1 wraps it in a `metadata` element, 1.0 puts name, desc and time directly under `gpx` — which is exactly what a namespace-hardcoding reader gets wrong.

File
GPX · Gpx · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of GPX 1.0 — Legacy Schema
gpx
1.4 KB
Actual file preview for GPX 1.0 — Legacy Schema

GPX 1.0 — Legacy Schema

The same eight trackpoints written to the GPX 1.0 schema. The two versions differ in namespace and in where document metadata lives — 1.1 wraps it in a `metadata` element, 1.0 puts name, desc and time directly under `gpx` — which is exactly what a namespace-hardcoding reader gets wrong.

File
GPX · Gpx · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of GPX — Track Without Elevation
gpx
1.2 KB
Actual file preview for GPX — Track Without Elevation

GPX — Track Without Elevation

Eight trackpoints with timestamps but no `ele` element, the shape a receiver writes on a 2D fix. Elevation-profile code that assumes the element is present either crashes or charts a flat line at zero, which looks like real data.

File
GPX · Gpx · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GPX — Track Without Timestamps
gpx
1.1 KB
Actual file preview for GPX — Track Without Timestamps

GPX — Track Without Timestamps

The same eight points with elevation but no `time` element — what you get when a track is drawn in a planning tool rather than recorded. Speed and pace calculations must refuse to produce a number here instead of dividing by a zero duration.

File
GPX · Gpx · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GPX — Timestamps With a UTC Offset Instead of Z
gpx
1.4 KB
Actual file preview for GPX — Timestamps With a UTC Offset Instead of Z

GPX — Timestamps With a UTC Offset Instead of Z

The same eight points timestamped with a +01:00 offset rather than the usual Z. The digits are identical to the reference track, so a parser that strips the offset and assumes UTC produces times that are wrong by exactly one hour — a silent error that only shows up when two traces are merged.

File
GPX · Gpx · UTF-8
Use case
GeospatialTime-series data+1· Conversion set
Preview of GPX — Track With a Single Trackpoint
gpx
523 B
Actual file preview for GPX — Track With a Single Trackpoint

GPX — Track With a Single Trackpoint

A track containing exactly one point, which is what a receiver writes when a recording is stopped immediately. Distance, speed and bearing all need a pair of points, so this is the fixture that finds off-by-one loops and empty-slice crashes.

File
GPX · Gpx · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of GPX — Out-of-Order and Duplicated Timestamps
gpx
1.3 KB
Actual file preview for GPX — Out-of-Order and Duplicated Timestamps

GPX — Out-of-Order and Duplicated Timestamps

Seven trackpoints whose timestamps go forwards, backwards, and then repeat — the pattern a receiver produces after a clock correction or a buffered replay. Naive speed calculations divide by a negative or zero time delta and emit impossible values.

File
GPX · Gpx · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of NMEA 0183 — Receiver With No Fix
nmea
924 B
Actual file preview for NMEA 0183 — Receiver With No Fix

NMEA 0183 — Receiver With No Fix

Six cycles of a receiver that has power but no satellite lock: GGA fix quality 0, RMC status V, and empty coordinate fields throughout. Parsers that split on commas and index positionally read these empty fields as zeros and plot the track at Null Island.

File
NMEA · Nmea · ASCII
Use case
GeospatialError handling+1· Conversion set
Preview of NMEA 0183 — Bad Checksum and Truncated Sentence
nmea
755 B
Actual file preview for NMEA 0183 — Bad Checksum and Truncated Sentence

NMEA 0183 — Bad Checksum and Truncated Sentence

A log with one sentence whose checksum has been altered and a final sentence truncated mid-transmission with no checksum at all — the two ways a serial GPS feed actually degrades. A correct parser drops both and keeps everything else.

File
NMEA · Nmea · ASCII
Use case
GeospatialError handling+1· Conversion set
Preview of NMEA 0183 — Southern and Eastern Hemisphere Indicators
nmea
1.8 KB
Actual file preview for NMEA 0183 — Southern and Eastern Hemisphere Indicators

NMEA 0183 — Southern and Eastern Hemisphere Indicators

NMEA never writes a negative coordinate: sign lives entirely in the N/S and E/W letters, and the numeric field is always positive. This log sits in the southern and eastern hemispheres, so a parser that ignores the hemisphere letter puts every fix in the wrong quadrant of the world.

File
NMEA · Nmea · ASCII
Use case
GeospatialError handling+1· Conversion set
Preview of NMEA 0183 — LF Line Endings Instead of CRLF
nmea
930 B
Actual file preview for NMEA 0183 — LF Line Endings Instead of CRLF

NMEA 0183 — LF Line Endings Instead of CRLF

The same sentences terminated with a bare LF rather than the CR LF the standard mandates — what you get after a log passes through a text editor or a Unix pipeline. Parsers that strip only "\r\n" leave a stray character on every line and then fail the checksum.

File
NMEA · Nmea · ASCII
Use case
GeospatialError handling+1· Conversion set
Preview of KML — Polygons With innerBoundaryIs Holes
kml
1.2 KB
Actual file preview for KML — Polygons With innerBoundaryIs Holes

KML — Polygons With innerBoundaryIs Holes

Two polygons that each carry an `innerBoundaryIs` ring: a parcel with a courtyard and a lake with an island. KML names its rings explicitly instead of relying on winding order, so converting to GeoJSON means deciding the winding rather than copying it.

File
KML · Kml · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of KML — MultiGeometry Mixing Points and a LineString
kml
661 B
Actual file preview for KML — MultiGeometry Mixing Points and a LineString

KML — MultiGeometry Mixing Points and a LineString

One Placemark whose MultiGeometry mixes three Points with a LineString. GeoJSON has no equivalent single type for a heterogeneous set, so this must become a GeometryCollection — and converters that reach for MultiPoint instead lose the line.

File
KML · Kml · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of KML — GroundOverlay and ScreenOverlay
kml
838 B
Actual file preview for KML — GroundOverlay and ScreenOverlay

KML — GroundOverlay and ScreenOverlay

A georeferenced GroundOverlay pinned to the territory's bounding box and a ScreenOverlay anchored to a pixel position. Both reference images that are not present, which is the normal state for a bare .kml and the reason KMZ exists.

File
KML · Kml · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of KMZ — Nested Folders, a Second KML, and a NetworkLink
kmz
1.1 KB
Actual file preview for KMZ — Nested Folders, a Second KML, and a NetworkLink

KMZ — Nested Folders, a Second KML, and a NetworkLink

A KMZ that contains a second KML in a subdirectory, reached through a `NetworkLink` with a relative href, plus an overlay image two directories deep. Readers that only load `doc.kml` show the overlay but none of the three parcels.

File
KMZ · Kml · 3 members
Use case
GeospatialConversion testing+1· Conversion set
Preview of WKT — M (measured) Geometry
wkt
29 B
Actual file preview for WKT — M (measured) Geometry

WKT — M (measured) Geometry

A point with an M (measure) ordinate rather than a Z. Written without the tag this is indistinguishable from a Z geometry, and a parser that assumes the third ordinate is elevation silently converts a 345-second measure into a 345-metre altitude.

File
WKT · Wkt Wkb · ASCII
Use case
GeospatialSerialization testing+1· Conversion set
Preview of WKT — All Seven EMPTY Geometry Forms
wkt
126 B
Actual file preview for WKT — All Seven EMPTY Geometry Forms

WKT — All Seven EMPTY Geometry Forms

One EMPTY value for each WKT geometry type, one per line. Empty geometries are what spatial operations return when nothing is left, and round-tripping them is where a database driver usually turns a typed empty into a plain NULL.

File
WKT · Wkt Wkb · 7 records
Use case
GeospatialError handling+1· Conversion set
Preview of WKT — Intentionally Invalid: Four Malformed Values
wkt
135 B
Actual file preview for WKT — Intentionally Invalid: Four Malformed Values

WKT — Intentionally Invalid: Four Malformed Values

Intentionally invalid: four WKT strings that each break in a different way — a point with one ordinate, a line whose last vertex is ragged, a polygon missing a closing bracket, and a misspelled keyword. Good parsers report which line and which character failed.

File
WKT · Wkt Wkb · 4 records
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Latitude Before Longitude
geojson
1.6 KB
Actual file preview for GeoJSON — Intentionally Invalid: Latitude Before Longitude

GeoJSON — Intentionally Invalid: Latitude Before Longitude

Intentionally invalid: the five towns with their coordinates written latitude-first. RFC 7946 fixes the order as longitude then latitude, and this is the mistake that arrives via an EPSG-URN-ordered source such as the GML twin in the territory subcategory.

File
GEOJSON · Crs
Use case
GeospatialError handling+1· Conversion set
Preview of GeoJSON — Intentionally Invalid: Web Mercator Metres in a .geojson File
geojson
1.8 KB
Actual file preview for GeoJSON — Intentionally Invalid: Web Mercator Metres in a .geojson File

GeoJSON — Intentionally Invalid: Web Mercator Metres in a .geojson File

Intentionally invalid: Web Mercator metres inside a file that claims to be GeoJSON, with a legacy `crs` member as the only hint. RFC 7946 allows exactly one coordinate system, so this file is what a desktop GIS produces when someone exports a projected layer to GeoJSON without reprojecting it first.

File
GEOJSON · Crs
Use case
GeospatialError handling+1· Conversion set
Preview of MBTiles — Structurally Valid Tileset With No Tiles
mbtiles
16 KB
Actual file preview for MBTiles — Structurally Valid Tileset With No Tiles

MBTiles — Structurally Valid Tileset With No Tiles

Every required MBTiles table and metadata key, and not one tile row. This is what a failed or interrupted tile build actually produces, and it is the fixture that finds code which reports success because the file opened and the schema validated.

File
MBTILES · Geopackage
Use case
GeospatialError handling+1· Conversion set
Preview of GML 3.2 — CRS84 srsName (longitude first)
gml
1.8 KB
Actual file preview for GML 3.2 — CRS84 srsName (longitude first)

GML 3.2 — CRS84 srsName (longitude first)

The same five towns as the territory GML twin, but declared with the CRS84 URN instead of the EPSG one — which flips the axis order to longitude first. The two files are otherwise identical in structure, so together they isolate axis-order handling from everything else.

File
GML · Gml Osm · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of GML 2.1 — Legacy gml:coordinates With Custom Separators
gml
1.5 KB
Actual file preview for GML 2.1 — Legacy gml:coordinates With Custom Separators

GML 2.1 — Legacy gml:coordinates With Custom Separators

GML 2.1 packed coordinates into a single `gml:coordinates` string whose decimal, coordinate and tuple separators are all declared as attributes and can be anything. GML 3 replaced it with `gml:posList`, but WFS 1.0 servers still emit this, and a parser that assumes the default separators mis-reads any file that changes them.

File
GML · Gml Osm · UTF-8
Use case
GeospatialConversion testing+1· Conversion set
Preview of OSM XML — Intentionally Invalid: Way and Relation With Dangling References
osm
513 B
Actual file preview for OSM XML — Intentionally Invalid: Way and Relation With Dangling References

OSM XML — Intentionally Invalid: Way and Relation With Dangling References

Intentionally invalid: a way referencing node -9 and a relation referencing way -999, neither of which is in the file. This is the normal state of a bounding-box extract, where objects are clipped at the boundary — so a reader has to decide between rejecting the file and building partial geometry, and must say which.

File
OSM · Gml Osm · UTF-8
Use case
GeospatialError handling+1· Conversion set
Preview of NetCDF _FillValue, missing_value and NaN Together (.nc)
nc
1.4 KB
Actual file preview for NetCDF _FillValue, missing_value and NaN Together (.nc)

NetCDF _FillValue, missing_value and NaN Together (.nc)

One variable that hides absent data three different ways at once: two _FillValue cells, one legacy missing_value cell and one raw NaN, with valid_min and valid_max also declared. Averaging the raw array without honouring all three gives roughly -60 K instead of a real mean.

File
NC · Gridded
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of Intentionally Corrupt NetCDF — Truncated Mid-Header (.nc)
nc
512 B
Actual file preview for Intentionally Corrupt NetCDF — Truncated Mid-Header (.nc)

Intentionally Corrupt NetCDF — Truncated Mid-Header (.nc)

An intentionally corrupt NetCDF file, cut to its first 512 bytes so the magic number and part of the header survive but the variable table and every data value do not. It is the fixture for the failure path where format detection succeeds and reading must not.

File
NC · Gridded
Use case
Scientific dataError handling· Conversion set
Preview of FITS Image — float32 with NaN and Inf Pixels (.fits)
fits
5.6 KB
Actual file preview for FITS Image — float32 with NaN and Inf Pixels (.fits)

FITS Image — float32 with NaN and Inf Pixels (.fits)

Single-precision FITS pixels including two NaNs, which is the only way the standard marks undefined data for floating BITPIX, plus one +Inf. Statistics computed without NaN-aware reductions come back as NaN for the entire frame.

File
FITS · Fits
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of FITS BLANK — Undefined Integer Pixels (.fits)
fits
5.6 KB
Actual file preview for FITS BLANK — Undefined Integer Pixels (.fits)

FITS BLANK — Undefined Integer Pixels (.fits)

Integer FITS images mark undefined pixels with the BLANK keyword, and BLANK is compared against the stored value before BZERO and BSCALE are applied. Scale first and the four undefined pixels turn into a perfectly plausible zero, which is the ordering bug this file exists to expose.

File
FITS · Fits
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of FITS Header-Only — Valid File With No Pixels (.fits)
fits
2.8 KB
Actual file preview for FITS Header-Only — Valid File With No Pixels (.fits)

FITS Header-Only — Valid File With No Pixels (.fits)

A completely valid FITS file consisting of one 2880-byte header block and no data unit, which the standard permits whenever NAXIS is 0. It separates readers that model the data array as optional from readers that treat 'no pixels' as corruption.

File
FITS · Fits
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of Intentionally Corrupt FITS — Short Final Block (.fits)
fits
7 KB
Actual file preview for Intentionally Corrupt FITS — Short Final Block (.fits)

Intentionally Corrupt FITS — Short Final Block (.fits)

An intentionally corrupt FITS file whose header is complete and whose data unit is cut short, leaving a total length that is not a multiple of the mandatory 2880-byte block. A reader must report the short read rather than hand back a half-filled array padded with whatever it found.

File
FITS · Fits
Use case
Scientific dataError handling· Conversion set
Preview of HDF5 Numeric dtype Zoo — Every Width at Its Limits (.h5)
h5
11 KB
Actual file preview for HDF5 Numeric dtype Zoo — Every Width at Its Limits (.h5)

HDF5 Numeric dtype Zoo — Every Width at Its Limits (.h5)

Twelve datasets, one per numeric HDF5 type, each holding the extreme values of that type including the uint64 and int64 limits that do not survive a trip through a double. It is the fixture that exposes a reader which widens everything to float64 on the way in.

File
H5 · Hdf5
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of HDF5 Hard, Soft and Dangling Links (.h5)
h5
6.1 KB
Actual file preview for HDF5 Hard, Soft and Dangling Links (.h5)

HDF5 Hard, Soft and Dangling Links (.h5)

One array reachable under four names: itself, a hard link sharing its object address, a soft link resolved at access time, and a soft link pointing nowhere. A walker that counts names instead of object addresses reports four arrays and then crashes on the dangling one.

File
H5 · Hdf5
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of HDF5 Degenerate Shapes — Scalar, Zero-Length and Null (.h5)
h5
9.4 KB
Actual file preview for HDF5 Degenerate Shapes — Scalar, Zero-Length and Null (.h5)

HDF5 Degenerate Shapes — Scalar, Zero-Length and Null (.h5)

Five degenerate but entirely legal datasets — a rank-0 scalar, a zero-length vector, a (0, 5) array, a single-element vector and a NULL dataspace — plus an empty group. None of them is corrupt, and a reader that reports them as errors is the thing being tested.

File
H5 · Hdf5
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of Intentionally Corrupt HDF5 — Truncated After the Superblock (.h5)
h5
1 KB
Actual file preview for Intentionally Corrupt HDF5 — Truncated After the Superblock (.h5)

Intentionally Corrupt HDF5 — Truncated After the Superblock (.h5)

An intentionally corrupt HDF5 file cut to 1024 bytes, so the 8-byte signature and superblock survive while the object headers and B-trees they point at do not. Format sniffing will say HDF5 and opening must fail loudly, which is exactly the split this fixture measures.

File
H5 · Hdf5
Use case
Scientific dataError handling· Conversion set
Preview of NumPy .npy Format Version 2.0 — Header Beyond 64 KiB (.npy)
npy
12.7 KB
Actual file preview for NumPy .npy Format Version 2.0 — Header Beyond 64 KiB (.npy)

NumPy .npy Format Version 2.0 — Header Beyond 64 KiB (.npy)

A 300-field structured array whose descriptor is too long for a version 1.0 header, forcing format version 2.0 and its four-byte header-length field. A hand-rolled parser that assumes the two-byte 1.0 field mis-locates the data section entirely.

File
NPY · Arrays · 4 records
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of NumPy .npy — float16 at Its Limits (.npy)
npy
146 B
Actual file preview for NumPy .npy — float16 at Its Limits (.npy)

NumPy .npy — float16 at Its Limits (.npy)

Every structurally interesting float16 value in one array: one plus epsilon, the largest finite value, the smallest normal and subnormal, negative zero, infinity and a NaN. It is the compact half-precision counterpart to the float32 and float64 boundary fixtures.

File
NPY · Arrays
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of NumPy .npy — Zero-Length Array With Real Shape (.npy)
npy
128 B
Actual file preview for NumPy .npy — Zero-Length Array With Real Shape (.npy)

NumPy .npy — Zero-Length Array With Real Shape (.npy)

A valid .npy file with a full header, a declared (0, 4) shape and a data section of zero bytes. It preserves the column count across an empty result, and it separates readers that model emptiness from readers that treat it as failure.

File
NPY · Arrays
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of NumPy .npy — Zero-Dimensional Scalar (.npy)
npy
136 B
Actual file preview for NumPy .npy — Zero-Dimensional Scalar (.npy)

NumPy .npy — Zero-Dimensional Scalar (.npy)

A rank-0 .npy holding a single double, whose header shape is the empty tuple rather than (1,). Indexing it with [0] raises rather than returning the value, so it separates parsers that model rank properly from parsers that assume at least one axis.

File
NPY · Arrays
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of IEEE-754 float64 Boundary Values (.npy)
npy
256 B
Actual file preview for IEEE-754 float64 Boundary Values (.npy)

IEEE-754 float64 Boundary Values (.npy)

The sixteen structurally distinct float64 values a numeric pipeline has to survive, in binary form: both zeros, both subnormal limits, the smallest normal, epsilon, the largest finite value, both infinities, a quiet NaN and the 2^53 integer boundary. Round-tripping this array is the minimum bar for any float64 codec.

File
NPY · Numeric Edges
Use case
Scientific dataError handling· Paired fixture
Preview of IEEE-754 float64 Boundary Values — JSON With No NaN Literal (.json)
json
3.1 KB
Actual file preview for IEEE-754 float64 Boundary Values — JSON With No NaN Literal (.json)

IEEE-754 float64 Boundary Values — JSON With No NaN Literal (.json)

The same boundary values as strict RFC 8259 JSON, where non-finite numbers are null in the numeric field and text in the string field because the standard has no NaN or Infinity literal. It is the fixture for the encoder that emits bare NaN and produces JSON nothing else will parse.

File
JSON · Numeric Edges · 16 records
Use case
Scientific dataEditor testing+1· Conversion set
Preview of IEEE-754 float32 Boundary Values (.npy)
npy
176 B
Actual file preview for IEEE-754 float32 Boundary Values (.npy)

IEEE-754 float32 Boundary Values (.npy)

The single-precision counterpart of the float64 boundary array, including the 2^24 integer limit where consecutive whole numbers stop being representable. Widening float32 to float64 and back must preserve every one of these bit patterns.

File
NPY · Numeric Edges
Use case
Scientific dataError handling· Paired fixture
Preview of NaN Payloads and Signalling NaNs (.npy)
npy
176 B
Actual file preview for NaN Payloads and Signalling NaNs (.npy)

NaN Payloads and Signalling NaNs (.npy)

Six distinct NaN bit patterns — quiet, signalling, signed and payload-carrying — stored as float64. They are all NaN and none equals another, so any code that deduplicates, sorts or hashes them by value is doing something undefined and this array proves it.

File
NPY · Numeric Edges
Use case
Scientific dataError handling· Paired fixture
Preview of float64 Subnormal Ladder — Gradual Underflow (.npy)
npy
208 B
Actual file preview for float64 Subnormal Ladder — Gradual Underflow (.npy)

float64 Subnormal Ladder — Gradual Underflow (.npy)

A ten-step ladder from the smallest representable double up across the subnormal boundary into normal range, showing precision degrading to a single significant bit. Any pipeline running with flush-to-zero enabled turns the first eight entries into plain zeros without reporting anything.

File
NPY · Numeric Edges
Use case
Scientific dataError handling· Paired fixture
Preview of float64 to float32 Precision Loss — Paired Array (.npy)
npy
320 B
Actual file preview for float64 to float32 Precision Loss — Paired Array (.npy)

float64 to float32 Precision Loss — Paired Array (.npy)

The precision-loss cases as a two-column float64 array holding the original value beside its float32 round trip, both kept at double width so the difference itself is representable. Subtracting the columns gives the error directly without a second narrowing step.

File
NPY · Numeric Edges
Use case
Scientific dataError handling· Paired fixture
Preview of Integers Beyond 2^53 in JSON — Silent Identifier Corruption (.json)
json
1.3 KB
Actual file preview for Integers Beyond 2^53 in JSON — Silent Identifier Corruption (.json)

Integers Beyond 2^53 in JSON — Silent Identifier Corruption (.json)

Six large integers written both as JSON numbers and as strings, including the 2^53 boundary where consecutive integers stop being distinguishable in a double. A parser backed by doubles turns 9007199254740993 into 9007199254740992 and reports no error at all.

File
JSON · Numeric Edges · 6 records
Use case
Scientific dataEditor testing+1· Conversion set
Preview of Raw float64 Block — Little-Endian, No Header (.bin)
bin
128 B
Actual file preview for Raw float64 Block — Little-Endian, No Header (.bin)

Raw float64 Block — Little-Endian, No Header (.bin)

Sixteen doubles as a bare 128-byte block with no header, so byte order is knowledge the reader has to bring rather than something the file declares. It is one half of an endian pair that only a correct assumption tells apart.

File
BIN · Numeric Edges
Use case
Scientific dataError handling+1· Paired fixture
Preview of Raw float64 Block — Big-Endian, No Header (.bin)
bin
128 B
Actual file preview for Raw float64 Block — Big-Endian, No Header (.bin)

Raw float64 Block — Big-Endian, No Header (.bin)

The same sixteen doubles written in network byte order, so every eight-byte group is the mirror of the little-endian twin. Decoding it with the wrong assumption produces small plausible-looking numbers rather than an error, which is why this pair exists.

File
BIN · Numeric Edges
Use case
Scientific dataError handling+1· Paired fixture
Preview of Censored Values and Detection Limits — Non-Numeric Results (.csv)
csv
626 B
Actual file preview for Censored Values and Detection Limits — Non-Numeric Results (.csv)

Censored Values and Detection Limits — Non-Numeric Results (.csv)

Nine laboratory results where only four are plain numbers: two are below the detection limit, one is above range, two are missing in different spellings, and one is a legitimate small negative near the blank. Coercing the censored strings to numbers or to NaN both bias the summary, and the file distinguishes every case explicitly.

File
CSV · Measurements · 9 rows
Use case
Scientific dataCSV parsing+2· Conversion set
Preview of DICOM-Shaped Stream — No Preamble, No DICM Magic (.bin)
bin
2.8 KB
Actual file preview for DICOM-Shaped Stream — No Preamble, No DICM Magic (.bin)

DICOM-Shaped Stream — No Preamble, No DICM Magic (.bin)

The identical element stream with the 128-byte preamble and the DICM magic stripped, which is how DICOM often arrives out of a network transfer or a database blob column. It is not a conformant Part 10 file and its content is entirely recoverable, so a reader should fall back rather than reject.

File
BIN · Imaging
Use case
Scientific dataSerialization testing+1· Conversion set
Preview of Intentionally Corrupt DICOM-Shaped File — Pixel Data Truncated (.bin)
bin
1.1 KB
Actual file preview for Intentionally Corrupt DICOM-Shaped File — Pixel Data Truncated (.bin)

Intentionally Corrupt DICOM-Shaped File — Pixel Data Truncated (.bin)

An intentionally corrupt DICOM-shaped file whose header, meta group and every non-pixel element are valid, and whose PixelData element declares a length the file does not contain. A viewer must report the short read rather than render a partial image padded with whatever it found.

File
BIN · Imaging
Use case
Scientific dataError handling· Conversion set
Preview of CIF Parser Edge Cases — Quotes, Text Fields and Wrapped Loops (.cif)
cif
877 B
Actual file preview for CIF Parser Edge Cases — Quotes, Text Fields and Wrapped Loops (.cif)

CIF Parser Edge Cases — Quotes, Text Fields and Wrapped Loops (.cif)

A CIF built entirely out of the constructs that break naive parsers: quoted values containing apostrophes and hashes, a semicolon-delimited multi-line text field, the distinct '?' and '.' markers, a standard uncertainty written as 1.2345(7), and a loop whose rows wrap across lines. Every one of them is legal CIF.

File
CIF · Chemistry
Use case
Scientific dataEditor testing+1· Conversion set
Preview of Intentionally Corrupt Molfile — Counts Line Disagrees With the Atom Block (.mol)
mol
910 B
Actual file preview for Intentionally Corrupt Molfile — Counts Line Disagrees With the Atom Block (.mol)

Intentionally Corrupt Molfile — Counts Line Disagrees With the Atom Block (.mol)

An intentionally corrupt molfile whose counts line declares twelve atoms while the atom block contains nine, so a parser reading by count consumes three bond lines as atoms. Everything else about the file is well formed, which is what makes the failure quiet.

File
MOL · Chemistry
Use case
Scientific dataError handling+1· Conversion set
Preview of Protein FASTA — Ambiguity Codes X, B and Z (.fasta)
fasta
450 B
Actual file preview for Protein FASTA — Ambiguity Codes X, B and Z (.fasta)

Protein FASTA — Ambiguity Codes X, B and Z (.fasta)

Three synthetic protein sequences that begin with methionine and include the X, B and Z ambiguity codes, which are legal IUPAC residues rather than errors. A validator restricted to the twenty standard amino acids rejects all three files.

File
FASTA · Bioinformatics · 3 records
Use case
Scientific dataEditor testing+1· Conversion set
Preview of Intentionally Corrupt FASTQ — Final Record Missing Its Quality Line (.fastq)
fastq
821 B
Actual file preview for Intentionally Corrupt FASTQ — Final Record Missing Its Quality Line (.fastq)

Intentionally Corrupt FASTQ — Final Record Missing Its Quality Line (.fastq)

An intentionally corrupt FASTQ whose first five records are complete and whose sixth ends after the plus line, leaving no quality string. A four-line-block reader must report an incomplete final record rather than pairing the sequence with an empty quality string.

File
FASTQ · Bioinformatics
Use case
Scientific dataError handling+1· Conversion set
Preview of Matrix Market — Zero Stored Entries, Still Valid (.mtx)
mtx
181 B
Actual file preview for Matrix Market — Zero Stored Entries, Still Valid (.mtx)

Matrix Market — Zero Stored Entries, Still Valid (.mtx)

A valid Matrix Market file describing a 6x6 matrix with no stored entries, which is an all-zero matrix rather than an error. It separates readers that model an empty result from readers that treat a missing entry block as truncation.

File
MTX · Matrices · 6 rows
Use case
Scientific dataEditor testing+1· Conversion set
Preview of Intentionally Corrupt Matrix Market — Declared Count Exceeds the Entries (.mtx)
mtx
175 B
Actual file preview for Intentionally Corrupt Matrix Market — Declared Count Exceeds the Entries (.mtx)

Intentionally Corrupt Matrix Market — Declared Count Exceeds the Entries (.mtx)

An intentionally corrupt Matrix Market file whose banner and size line are perfectly valid and whose entry block stops seven lines short of the declared count. A reader that preallocates from the declared count and never checks ends up with seven silent zeros.

File
MTX · Matrices
Use case
Scientific dataError handling+1· Conversion set
Preview of GitHub Actions Workflow, Intentionally Invalid
yml
542 B
Actual file preview for GitHub Actions Workflow, Intentionally Invalid

GitHub Actions Workflow, Intentionally Invalid

An intentionally invalid GitHub Actions workflow: well-formed YAML that breaks the workflow schema in four documented ways — no jobs mapping, a scalar `on`, a mapping `runs-on`, and a step carrying both uses and run. For testing that a validator rejects, and reports why.

File
YML · Github Actions
Preview of GitLab CI Config, Intentionally Invalid
yml
551 B
Actual file preview for GitLab CI Config, Intentionally Invalid

GitLab CI Config, Intentionally Invalid

An intentionally invalid GitLab CI config: valid YAML with a misspelled `stagess` key, a job naming an undeclared stage, a job with no script, and an `only:` given a bare scalar. For testing that a linter rejects it and names each fault.

File
YML · Gitlab Ci
Preview of CircleCI Config, Intentionally Invalid
yml
560 B
Actual file preview for CircleCI Config, Intentionally Invalid

CircleCI Config, Intentionally Invalid

An intentionally invalid CircleCI config: an unquoted `version: 2.10` that YAML loads as the float 2.1, a workflow referencing an undefined job, and a job with no execution environment. For testing that a validator rejects it and explains each fault.

File
YML · Circleci
Preview of Azure Pipelines, Intentionally Invalid
yml
624 B
Actual file preview for Azure Pipelines, Intentionally Invalid

Azure Pipelines, Intentionally Invalid

An intentionally invalid Azure Pipelines file: valid YAML that mixes top-level steps with a stages block, depends on an undeclared stage, and gives `pool` a bare string. For testing that a validator rejects it and reports all three faults.

File
YML · Azure Pipelines
Preview of Jenkinsfile, Intentionally Invalid
jenkinsfile
616 B
Actual file preview for Jenkinsfile, Intentionally Invalid

Jenkinsfile, Intentionally Invalid

An intentionally invalid Jenkinsfile: an unclosed stage block so braces never balance, a steps block outside any stage, and a bare identifier where the agent directive needs any, none, or a block. For testing parser error recovery and reporting.

File
JENKINSFILE · Jenkins
Preview of Kubernetes Manifest, Intentionally Invalid
yaml
691 B
Actual file preview for Kubernetes Manifest, Intentionally Invalid

Kubernetes Manifest, Intentionally Invalid

An intentionally invalid Kubernetes manifest: a removed apiVersion, a quoted string where replicas needs an integer, a selector that does not match the pod template, and containers as a mapping instead of a list. Four documented faults for a validator to report.

File
YAML · Kubernetes
Preview of Pipeline DAG with a Cycle (JSON), Intentionally Invalid
json
1.4 KB
Actual file preview for Pipeline DAG with a Cycle (JSON), Intentionally Invalid

Pipeline DAG with a Cycle (JSON), Intentionally Invalid

The shared topology plus one back edge, making it intentionally invalid as a DAG. The document publishes the cycle it contains, so a scheduler or graph validator can be tested on both detecting the cycle and naming it.

File
JSON · Airflow
Preview of CWL Workflow, Intentionally Invalid
cwl
598 B
Actual file preview for CWL Workflow, Intentionally Invalid

CWL Workflow, Intentionally Invalid

An intentionally invalid CWL document: a nonexistent cwlVersion, an unknown class, a step consuming an output no step produces, and outputs given as a bare string. Four documented faults for a CWL validator to report.

File
CWL · Cwl
Preview of Terraform Configuration, Intentionally Invalid
tf
554 B
Actual file preview for Terraform Configuration, Intentionally Invalid

Terraform Configuration, Intentionally Invalid

An intentionally invalid Terraform configuration: an unclosed resource block, a colon where HCL needs an equals sign, a reference to an undeclared resource, and a resource block missing its second label. Four documented faults for a parser to report.

File
TF · Terraform
Preview of HCL2 Document, Intentionally Invalid
hcl
462 B
Actual file preview for HCL2 Document, Intentionally Invalid

HCL2 Document, Intentionally Invalid

An intentionally invalid HCL2 document: an unclosed block, a colon assignment, a half-quoted block label, and a heredoc whose terminator is misspelled so it swallows the remainder of the file. Four documented faults, each a distinct recovery test.

File
HCL · Hcl
Preview of Docker Compose File, Intentionally Invalid
yaml
608 B
Actual file preview for Docker Compose File, Intentionally Invalid

Docker Compose File, Intentionally Invalid

An intentionally invalid Compose file: services as a list, a service with both image and an empty build, an unquoted 8080:8080 port that YAML 1.1 reads as a base-60 integer, and a depends_on naming an undefined service.

File
YAML · Docker
Preview of Makefile with Space Indentation, Intentionally Invalid
mk
491 B
Actual file preview for Makefile with Space Indentation, Intentionally Invalid

Makefile with Space Indentation, Intentionally Invalid

An intentionally invalid Makefile whose recipe lines are indented with four spaces instead of the required TAB. This is the most common Makefile defect there is, and it is invisible in most editors — which is exactly why it belongs in a fixture set.

File
MK · Build
Preview of YAML with TAB Indentation, Intentionally Invalid
yaml
447 B
Actual file preview for YAML with TAB Indentation, Intentionally Invalid

YAML with TAB Indentation, Intentionally Invalid

An intentionally invalid YAML file indented with real TAB characters, which the spec forbids for indentation. The final key shows the legal case — a tab inside a quoted scalar — so a parser can be checked for rejecting one without rejecting the other.

File
YAML · YAML Edge Cases
Preview of YAML Unclosed Flow Collection, Intentionally Invalid
yaml
543 B
Actual file preview for YAML Unclosed Flow Collection, Intentionally Invalid

YAML Unclosed Flow Collection, Intentionally Invalid

An intentionally invalid YAML file whose flow sequence is opened and never closed, so the parser consumes the rest of the document and fails at end of stream. A good error message names the opening bracket, not the last line, which is what this fixture measures.

File
YAML · YAML Edge Cases
Preview of Audio Editing Edge WAV 01
wav
6.9 KB
Actual file preview for Audio Editing Edge WAV 01

Audio Editing Edge WAV 01

PCM edge waveform 01 carrying controlled hard clipping for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-01.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 02
wav
7.2 KB
Actual file preview for Audio Editing Edge WAV 02

Audio Editing Edge WAV 02

PCM edge waveform 02 carrying a controlled silence window for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-02.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 03
wav
7.5 KB
Actual file preview for Audio Editing Edge WAV 03

Audio Editing Edge WAV 03

PCM edge waveform 03 carrying controlled hard clipping for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-03.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 04
wav
7.9 KB
Actual file preview for Audio Editing Edge WAV 04

Audio Editing Edge WAV 04

PCM edge waveform 04 carrying a controlled silence window for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-04.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 05
wav
8.2 KB
Actual file preview for Audio Editing Edge WAV 05

Audio Editing Edge WAV 05

PCM edge waveform 05 carrying controlled hard clipping for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-05.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 06
wav
8.5 KB
Actual file preview for Audio Editing Edge WAV 06

Audio Editing Edge WAV 06

PCM edge waveform 06 carrying a controlled silence window for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-06.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 07
wav
8.8 KB
Actual file preview for Audio Editing Edge WAV 07

Audio Editing Edge WAV 07

PCM edge waveform 07 carrying controlled hard clipping for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-07.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 08
wav
9.1 KB
Actual file preview for Audio Editing Edge WAV 08

Audio Editing Edge WAV 08

PCM edge waveform 08 carrying a controlled silence window for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-08.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 09
wav
9.4 KB
Actual file preview for Audio Editing Edge WAV 09

Audio Editing Edge WAV 09

PCM edge waveform 09 carrying controlled hard clipping for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-09.

File
WAV · Editing Metadata Edge · 8000
Preview of Audio Editing Edge WAV 10
wav
9.7 KB
Actual file preview for Audio Editing Edge WAV 10

Audio Editing Edge WAV 10

PCM edge waveform 10 carrying a controlled silence window for edit-pipeline recovery checks. Stable P8 artifact p8-audio-edge-wav-10.

File
WAV · Editing Metadata Edge · 8000
Preview of Video Workflow 01 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 01 — Edge-Case Control

Video Workflow 01 — Edge-Case Control

Download-only JSON control for video workflow 01; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-01-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 02 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 02 — Edge-Case Control

Video Workflow 02 — Edge-Case Control

Download-only JSON control for video workflow 02; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-02-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 03 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 03 — Edge-Case Control

Video Workflow 03 — Edge-Case Control

Download-only JSON control for video workflow 03; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-03-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 04 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 04 — Edge-Case Control

Video Workflow 04 — Edge-Case Control

Download-only JSON control for video workflow 04; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-04-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 05 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 05 — Edge-Case Control

Video Workflow 05 — Edge-Case Control

Download-only JSON control for video workflow 05; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-05-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 06 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 06 — Edge-Case Control

Video Workflow 06 — Edge-Case Control

Download-only JSON control for video workflow 06; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-06-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 07 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 07 — Edge-Case Control

Video Workflow 07 — Edge-Case Control

Download-only JSON control for video workflow 07; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-07-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 08 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 08 — Edge-Case Control

Video Workflow 08 — Edge-Case Control

Download-only JSON control for video workflow 08; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-08-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 09 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 09 — Edge-Case Control

Video Workflow 09 — Edge-Case Control

Download-only JSON control for video workflow 09; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-09-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 10 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 10 — Edge-Case Control

Video Workflow 10 — Edge-Case Control

Download-only JSON control for video workflow 10; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-10-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 11 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 11 — Edge-Case Control

Video Workflow 11 — Edge-Case Control

Download-only JSON control for video workflow 11; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-11-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 12 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 12 — Edge-Case Control

Video Workflow 12 — Edge-Case Control

Download-only JSON control for video workflow 12; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-12-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 13 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 13 — Edge-Case Control

Video Workflow 13 — Edge-Case Control

Download-only JSON control for video workflow 13; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-13-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 14 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 14 — Edge-Case Control

Video Workflow 14 — Edge-Case Control

Download-only JSON control for video workflow 14; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-14-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 15 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 15 — Edge-Case Control

Video Workflow 15 — Edge-Case Control

Download-only JSON control for video workflow 15; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-15-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 16 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 16 — Edge-Case Control

Video Workflow 16 — Edge-Case Control

Download-only JSON control for video workflow 16; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-16-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 17 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 17 — Edge-Case Control

Video Workflow 17 — Edge-Case Control

Download-only JSON control for video workflow 17; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-17-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 18 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 18 — Edge-Case Control

Video Workflow 18 — Edge-Case Control

Download-only JSON control for video workflow 18; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-18-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 19 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 19 — Edge-Case Control

Video Workflow 19 — Edge-Case Control

Download-only JSON control for video workflow 19; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-19-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 20 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 20 — Edge-Case Control

Video Workflow 20 — Edge-Case Control

Download-only JSON control for video workflow 20; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-20-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 21 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 21 — Edge-Case Control

Video Workflow 21 — Edge-Case Control

Download-only JSON control for video workflow 21; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-21-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 22 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 22 — Edge-Case Control

Video Workflow 22 — Edge-Case Control

Download-only JSON control for video workflow 22; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-22-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 23 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 23 — Edge-Case Control

Video Workflow 23 — Edge-Case Control

Download-only JSON control for video workflow 23; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-23-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 24 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 24 — Edge-Case Control

Video Workflow 24 — Edge-Case Control

Download-only JSON control for video workflow 24; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-24-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Workflow 25 — Edge-Case Control
json
217 B
Actual file preview for Video Workflow 25 — Edge-Case Control

Video Workflow 25 — Edge-Case Control

Download-only JSON control for video workflow 25; it removes the source timebase and publishes the only acceptable 12 fps fallback. Stable P8 artifact p8-video-kit-25-edge-case.

File
JSON · Workflow Kits
Use case
Timeline testingError handling+1· Workflow kit
Preview of Video Timestamp Failure Contract 01
json
161 B
Actual file preview for Video Timestamp Failure Contract 01

Video Timestamp Failure Contract 01

Download-only JSON failure contract 01 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-01.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 02
json
161 B
Actual file preview for Video Timestamp Failure Contract 02

Video Timestamp Failure Contract 02

Download-only JSON failure contract 02 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-02.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 03
json
161 B
Actual file preview for Video Timestamp Failure Contract 03

Video Timestamp Failure Contract 03

Download-only JSON failure contract 03 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-03.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 04
json
161 B
Actual file preview for Video Timestamp Failure Contract 04

Video Timestamp Failure Contract 04

Download-only JSON failure contract 04 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-04.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 05
json
161 B
Actual file preview for Video Timestamp Failure Contract 05

Video Timestamp Failure Contract 05

Download-only JSON failure contract 05 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-05.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 06
json
161 B
Actual file preview for Video Timestamp Failure Contract 06

Video Timestamp Failure Contract 06

Download-only JSON failure contract 06 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-06.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 07
json
161 B
Actual file preview for Video Timestamp Failure Contract 07

Video Timestamp Failure Contract 07

Download-only JSON failure contract 07 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-07.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 08
json
161 B
Actual file preview for Video Timestamp Failure Contract 08

Video Timestamp Failure Contract 08

Download-only JSON failure contract 08 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-08.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 09
json
161 B
Actual file preview for Video Timestamp Failure Contract 09

Video Timestamp Failure Contract 09

Download-only JSON failure contract 09 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-09.

File
JSON · Colour Audio Sync Failures
Preview of Video Timestamp Failure Contract 10
json
161 B
Actual file preview for Video Timestamp Failure Contract 10

Video Timestamp Failure Contract 10

Download-only JSON failure contract 10 declaring one timestamp gap and a report-and-preserve recovery policy. Stable P8 artifact p8-video-failure-json-10.

File
JSON · Colour Audio Sync Failures