PANDOC / FORMAT FIDELITY
What survives a pandoc conversion?
One feature apart, through every writer: measure what gets expressed, what comes back, and what stays exact.
Recorded measurements. No conversions run in your browser.
Loading recorded results…
01 / LEADERBOARD
How much comes home?
Semantic fidelity counts exact and canonical recovery, weighted by what a reader loses.
carve and carve-ast are the two lanes of the pandoc-carve bridge, scored on the same probes. They are not pandoc writers, so the medians leave them out.
Show as table
02 / WHAT GETS LOST
Words, shape, or styling?
Content weighs 3, structure 2, and presentation 1; each bar shows the share recovered exactly or canonically.
03 / EXPLORER
Inspect every feature
Select a cell to compare its lane verdicts and the two input ASTs.
Rich AST
Degraded AST
04 / CARVE ROUND TRIP
Does the source come back?
Respelled means the AST changed but rendered HTML stayed identical. A dropped comment can also qualify; read its warning.
Bridge uses default options. Bridge-preserve enables roundtrip: true metadata on the direct AST round trip. Export rows use defaults.
05 / TREND
The recorded runs
History medians, by UTC run date. Probe-count medians are shown as percentages alongside semantic fidelity.
History values
06 / METHOD
Five questions about preservation
- 1
Writer
Compare write(rich) and write(degraded) bytes. Diff means expressed; same means cannot express.
- 2
Round trip
Compare both written inputs after reading. Diff means survives; same means lost.
- 3
Exact
Compare read(write(rich)) to rich: exact, canonical, or lossy.
- 4
Metadata
Recover ten metadata shapes from standalone output: exact, partial, or lost.
- 5
Carve source
Compare source, AST, then rendered HTML: exact, equivalent, respelled, or lossy. Conversion failures are err.
Preserve wrapping
--wrap=preserve keeps SoftBreak from becoming a space during writing.
Resolve resources
--resource-path=fixtures and the same server image prevent a missing resource from looking like exact recovery.
Canonical folds
Default and left alignment, measured and default column widths, raw tex and latex aliases, and invented header IDs are folded. Exact recovery keeps these distinctions.
The first two lanes compare the converted pair, never the input. A distinction surviving does not imply exact recovery.
07 / BOUNDARIES
What the grid can tell you
Expression is not quality
A writer diff only means it distinguishes the inputs. Escaping to raw HTML counts.
Errors and the host machine
Muse and typst can emit headings their own readers reject. OPML serializes outlines rather than documents, so most probes error. PDF needs an external TeX engine; its errors measure the machine.
Single features
Probes isolate one feature. Interactions between features are not measured. Bibliography databases and the json/xml AST serializations are excluded from comparable round-trip formats; native remains the reference.
Carve comparison boundaries
Carve round trips compare blocks and only metadata keys present in the source. Invented EPUB date, UUID, and language are excluded. EPUB, fb2, and ipynb container chrome is stripped, as in the exact lane. Carve features absent from pandoc's AST need separate source fixtures.
Severity choices
Strikeout and scripts count as structure because flattening changes what the text asserts. Captions, table footers, and figures count as content because their degraded input omits those words.
Measurement date
The date comes from the recorded measurement, not the website build. Reports under docs are snapshots regenerated with results.
PROVENANCE / DOWNLOADS
Follow the evidence
Built from committed lane verdicts using the shared Python scoreboard. The raw files retain the original measurement evidence.