{
  "merge-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "987d8b0ae38dc2ed6b0e2322c990bac700f367f685b2ae2e7f89ad458550afef",
    "caption": "Real editor export: 4 pages; 4562 input bytes, 6017 output bytes. The same two-page input was uploaded twice; preview shows the first three output pages."
  },
  "compress-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "19a8deaaad7bdff7d5cfc59fbc65718fba85ec4b2918917d7c03a9bb28b98a4d",
    "caption": "Real editor export: 2 pages; 4562 input bytes, 3404 output bytes. Results vary by document: some PDFs shrink and others grow. Compare the actual result."
  },
  "split-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "a23299db13421dfb283b6b9c37ec95886ae4c7190b04e1d7208eacc43412c213",
    "caption": "Two-page source split into a ZIP with two PDFs. After shows the first extracted part."
  },
  "edit-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "0bc841fc06c78829e4d594eb71ce31e051b608bda365121f6c70a7098f9c79b0",
    "caption": "Real editor export: 2 pages; 4562 input bytes, 120225 output bytes."
  },
  "sign-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "a0df1ca3e2e257a9905699b9d7150c570bd5db20ca4ac854d58538b53a71373b",
    "caption": "Real editor export: 2 pages; 4562 input bytes, 124939 output bytes."
  },
  "encrypt-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "dbd721f4c791d55a659eb3ecf724cb89acc6feeef8cf421d2d096c4c3a70dd19",
    "caption": "AES-256 output: the after preview was opened with the synthetic password sample-open. Pages look unchanged; encryption was also checked in the PDF structure."
  },
  "remove-pdf-password": {
    "status": "generated",
    "input_sha256": "dbd721f4c791d55a659eb3ecf724cb89acc6feeef8cf421d2d096c4c3a70dd19",
    "output_sha256": "0864f309224da19f9ddd72b861e17ce07c00d03eeaf5c4835f485d08deb40a10",
    "caption": "Input password: sample-open. The output opens without a password; page text was checked."
  },
  "pdf-to-markdown": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "f17c9527962f75cac90c09055e60b73865251ffd09d71ca815e94813e18ea2f7",
    "caption": "Text view of the actual Markdown output from the two-page report. Check headings, the budget table and the bullet list against the source."
  },
  "pdf-to-html": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "c59d70a608cd8ed1a36a886900f2afe4fbd0c3feb19b9414a8e6e439170ae7e7",
    "caption": "Actual HTML output rendered by Chromium to a PDF layout capture. Compare the headings and tables with the source report."
  },
  "pdf-to-images": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "6249b09e06e1710714a68d2169b845e403075cc7c0b66bd56362c70aa134e463",
    "caption": "Page 1 rendered as JPG. Image output no longer contains selectable PDF text."
  },
  "email-to-pdf": {
    "status": "generated",
    "input_sha256": "1d67d8432ae4366fa0d54d49126ab1e257de30ffecf5701e3705a98e2aae0e45",
    "output_sha256": "11c590759f51ca97d2dc95201e32e2b19333d48975196f98c4fc5e5b50106c48",
    "caption": "Real conversion of a synthetic EML message, message only: the attachment is listed but not added. The before image shows the message as a mail client would."
  },
  "pdf-to-word": {
    "status": "generated",
    "input_sha256": "ea68bbebff2cf259d406174fba2ddd0253222eb33aca4b679db0287b352f27c0",
    "output_sha256": "a46b3660f5b270127a2c9c91cd04fbe49949465a68fc8d17090d2d49affff89a",
    "caption": "LibreOffice layout capture of the actual Word output. Quality hold remains.",
    "notes": []
  },
  "pdf-to-excel": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "866fcf04715610f36d8c50aec66d92dab1e311f75d37fb91ed4657985d827f89",
    "caption": "Actual Office output opened by LibreOffice and rendered to PDF for this layout capture; inspect in your target Office application too. ",
    "notes": []
  },
  "pdf-to-powerpoint": {
    "status": "generated",
    "input_sha256": "569ffcf566ffdb71e2846543d592b3a0181028aa9d20e83cbf933e4a8a5eec1b",
    "output_sha256": "cb6c9a606f2823a6b56d2616f7aa78b20443e20297ea5e40357c9fcc269a98e6",
    "caption": "LibreOffice layout capture of the actual slides; this does not establish fidelity for other documents.",
    "notes": []
  },
  "office-to-pdf": {
    "status": "generated",
    "input_sha256": "823b48072db15d308fcf91f5931f68b4805209221340c3bc425721e2b6795e6d",
    "output_sha256": "30089b0091e2b14d540f74e75ef93cc46b75dca7b354c95f42a657a8ddd69eda",
    "caption": "Real PDF output from the synthetic fixture. Inspect the downloaded result and notes. ",
    "notes": []
  },
  "html-to-pdf": {
    "status": "generated",
    "input_sha256": "886006821b20fdc4d8df83d9d3d730c219da2912055c88567ce641b32d7ac33d",
    "output_sha256": "495388994dfc66c0027380c4540d2f957c059a651d6ecd4146212efa57bb9528",
    "caption": "Real PDF output from the synthetic fixture. Inspect the downloaded result and notes. ",
    "notes": []
  },
  "webpage-to-pdf": {
    "status": "generated",
    "input_sha256": "ed6b52f6b7918031859bdffa478f1e23a6c8264704032caba3de4bf5daa3b652",
    "output_sha256": "e2b48ea34912ecdd10cf898a7dad1ada57c0c84c094dfb7a6747b2671285ed31",
    "caption": "A synthetic landing page, served locally and captured by the real converter. Before shows it in a browser window; after shows the PDF. ",
    "notes": [
      "The bottom margin was widened to make room for the source line, which would otherwise have printed off the edge of the page.",
      "Laid out at the site's 1280 pixel desktop width and printed at 56% so that width fits the page.",
      "Captured as the page looks in a browser, with its own background colours and images.",
      "The page was scrolled to the bottom and back, then given time to finish loading its pictures and fonts and to stop changing. Anything still animating was moved to where it was going, so nothing is printed halfway through appearing."
    ]
  },
  "extract-tables": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "cb93dd2cc25d9c31fe9e966a80c7b491d67fd8c6c708784aec0101330d82e3fd",
    "caption": "Literal data/text view extracted from the real output, not an Office/browser layout screenshot. ",
    "notes": []
  },
  "ocr-searchable-pdf": {
    "status": "generated",
    "input_sha256": "72336d781ca50dd3e9b022551f785d7c065521f9b46c1092169fd8ac1ef593f3",
    "output_sha256": "1ef7e85f9a9514daf807a8093c0c74ec447372ed66a730c55195d7104dfc40c1",
    "caption": "Actual searchable PDF from a synthetic raster scan. The image remains and a hidden text layer is added; review copied or searched text for recognition errors before use.",
    "notes": []
  },
  "sanitize-pdf": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "3096d587b0c1e42a19282bc0a1c417aa3649a6d8a35951c4d3b1be8f8558033c",
    "caption": "Real PDF output from the synthetic fixture. Inspect the downloaded result and notes. Source metadata was removed; page appearance is unchanged. This does not demonstrate removal of visible sensitive content.",
    "notes": [
      "Removed: the title, author, subject and producer recorded in the file.",
      "Written as a single revision, so earlier versions kept inside an edited file, and objects nothing points at any more, were not carried over.",
      "The pages themselves were left alone, so text stays selectable and a form stays fillable. Content hidden by being drawn underneath something else is still there; redrawing the pages as images is what removes that."
    ]
  },
  "flatten-pdf": {
    "status": "generated",
    "input_sha256": "60f5f08c52a2e8625e505fb1df56e21a540af86dfab9a309aac118da2926d991",
    "output_sha256": "b9341615893abf5f967c048c557c8735627b0395571d15f854d33059a95f3773",
    "caption": "Real PDF output from the synthetic fixture. Inspect the downloaded result and notes. Fillable fields are outlined in amber; the output has no interactive fields.",
    "notes": []
  },
  "certificate-sign": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "8dfc58c4291ecce852d25fdd78d02cb9f6d023c6034921ff8949e05d7f8ced47",
    "caption": "Real PDF output from the synthetic fixture. Inspect the downloaded result and notes. The signature is invisible, so pages look unchanged. Only the public certificate is in this output; private test key material is not saved.",
    "notes": []
  },
  "verify-pdf-signature": {
    "status": "generated",
    "input_sha256": "8dfc58c4291ecce852d25fdd78d02cb9f6d023c6034921ff8949e05d7f8ced47",
    "output_sha256": "ecd87774bf93c077e1461903edfcc7edc60534237968d8ca29e725dadf7bb568",
    "caption": "Literal data/text view extracted from the real output, not an Office/browser layout screenshot. One intact, cryptographically valid signature is reported, with trusted=false and no timestamp. This synthetic certificate is self-signed.",
    "notes": []
  },
  "word-to-pdf": {
    "status": "generated",
    "input_sha256": "0e85606bb3160db95f344e8178cdebe7e9a68384f1d8228215def62f55055baa",
    "output_sha256": "9b116f5b7c8eefd840cf74c0c0a6249cb49901946f89dd22780c57792262749e",
    "caption": "Real Word to PDF output from a synthetic input. PDF output shown as rendered pages.",
    "notes": []
  },
  "excel-to-pdf": {
    "status": "generated",
    "input_sha256": "070570a1631c6feb7fba5fa25a678c72cad413c6290c10c9ee4a669946d8bd5a",
    "output_sha256": "95fedd4ba4b18f5400bbaeea8c180995f7cc7d9e325760131996cc6f4586671a",
    "caption": "Real Excel to PDF output from a synthetic input. PDF output shown as rendered pages.",
    "notes": [
      "Every column was shrunk to fit the page width, so no columns are split. Rows continue onto further pages as usual.",
      "Each sheet was given a 0.5 inch margin so the content does not print against the paper edge.",
      "The row and column lines were printed. Borders drawn on header, total or body cells convert on their own either way.",
      "Converted 2 sheets: Supply orders, By site."
    ]
  },
  "powerpoint-to-pdf": {
    "status": "generated",
    "input_sha256": "375411b27b17c9c941251178101fbcbfa38a9b3ed4df7f317c832acc55e9aba8",
    "output_sha256": "fd54322ce08aee964405086badc201ac175e3201cbc25ef8bda374b042b26f7b",
    "caption": "Real PowerPoint to PDF output from a synthetic input. PDF output shown as rendered pages.",
    "notes": []
  },
  "pdf-to-png": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "3dde755a11202b4c73780a4b7f3f50d18b5e0af50396f81d4a436b654da51831",
    "caption": "Real PDF to PNG output from a synthetic input. Page 1 of the actual image output.",
    "notes": []
  },
  "pdf-to-tiff": {
    "status": "generated",
    "input_sha256": "20df7c1ba1728f0b9a32672fc52d9ef46c5796c1f7175743ea3bfc94fe166f53",
    "output_sha256": "f24ff9a7377f8c8fef309604ce324f43b17b2f5d0c3a7b90b8ed1818a1807c55",
    "caption": "Real PDF to TIFF output from a synthetic input. Page 1 of the actual image output.",
    "notes": []
  },
  "pdf-to-svg": {
    "status": "generated",
    "input_sha256": "229988673f8c4b3da2db2656b932267448a6530617e0160374ddfabe9ff3c78a",
    "output_sha256": "68137dec2c9dbb746397d112ccca2b8ec7e56621bb0f7693c26df29ad3af81a4",
    "caption": "Real PDF to SVG output from a synthetic input. The actual SVG output, drawn by a browser.",
    "notes": []
  },
  "eml-to-pdf": {
    "status": "generated",
    "input_sha256": "1d67d8432ae4366fa0d54d49126ab1e257de30ffecf5701e3705a98e2aae0e45",
    "output_sha256": "11c590759f51ca97d2dc95201e32e2b19333d48975196f98c4fc5e5b50106c48",
    "caption": "Real conversion of a synthetic EML message, message only: the attachment is listed but not added. The before image shows the message as a mail client would."
  },
  "msg-to-pdf": {
    "status": "illustration",
    "message": "Drawn illustration. Replace by running generate_variant_samples.py where the converter is available."
  },
  "pdf-to-csv": {
    "status": "generated",
    "input_sha256": "769676e605b741b98f1058451a8492d56adfe52e31f8c9b44d0bc2179c7e0d3a",
    "output_sha256": "29c8343b19543d74257f45bc84ee62c2e0e86f6384eeca33e3ac1f93006863de",
    "caption": "Real PDF tables to CSV output from a synthetic input. Text view of the actual output file, not a layout capture.",
    "notes": []
  },
  "pdf-to-json": {
    "status": "generated",
    "input_sha256": "769676e605b741b98f1058451a8492d56adfe52e31f8c9b44d0bc2179c7e0d3a",
    "output_sha256": "737c8e2a62bcfba0fbaadfdf5f6e387be641ece9ca246cd98225d2d9aaf389e5",
    "caption": "Real PDF tables to JSON output from a synthetic input. Text view of the actual output file, not a layout capture.",
    "notes": []
  },
  "png-to-searchable-pdf": {
    "status": "generated",
    "input_sha256": "72336d781ca50dd3e9b022551f785d7c065521f9b46c1092169fd8ac1ef593f3",
    "output_sha256": "24bb694f5fcdb5ec2e2fd9f893b32ea2a379a9becca7ca4715980ec5271e587d",
    "caption": "Real PNG to searchable PDF output from a synthetic input. PDF output shown as rendered pages. The input is a low-resolution synthetic scan, so recognition errors are left in on purpose. Proofread real OCR output the same way.",
    "notes": []
  },
  "jpg-to-searchable-pdf": {
    "status": "generated",
    "input_sha256": "8c2a635706e4c0ad32f11eafe9ea9bfeed6da3632d160b1e38232395853138bc",
    "output_sha256": "53944c753256908d2b1d54a4bca9a3091630238a482c3b348ef63e3d0b058581",
    "caption": "Real JPG to searchable PDF output from a synthetic input. PDF output shown as rendered pages. The input is a low-resolution synthetic scan, so recognition errors are left in on purpose. Proofread real OCR output the same way.",
    "notes": []
  },
  "tiff-to-searchable-pdf": {
    "status": "generated",
    "input_sha256": "a2f964308f2f00e5c18afd6240d0feb3eda47200e964f2dad5e8d570b36bec20",
    "output_sha256": "d3ef1f575343f8ab88ed731e65599155f82379a971e4153b52fc6e08c179fc24",
    "caption": "Real TIFF to searchable PDF output from a synthetic input. PDF output shown as rendered pages. The input is a low-resolution synthetic scan, so recognition errors are left in on purpose. Proofread real OCR output the same way.",
    "notes": []
  }
}
