{
  "schema_version": 1,
  "kind": "homepage-tape-library-verification-not-full-release-baseline",
  "library_url": "https://evilappliances.net/orao/#tapes",
  "page_integration_version": "1.5.0",
  "authorized_changes": [
    "Grouped single-row tape carousel",
    "Dropdown selection of versions and demo parts",
    "Hover, touch and keyboard panels outside emulator canvases"
  ],
  "original_emulator_manifest": "../versions/original-v1.0/archive-manifest.json",
  "original_emulator_files_sha256": {
    "index.html": "1e705728b07c82824aa03c40d5c2f4d736e0bcd2c13ff8243aab5e826651e64a",
    "style.css": "ee7573dc09d4b2d842040b4756d607f458f72024e9ee09e7421fab60ca9672ed",
    "rom.js": "5e5803870cbde5b6002f536dcf9e1f28550ddc7108573b4e614bdccd21e17e76",
    "core.js": "01266dc7d663c2b07cdf0cd6d59b53301112d36e702ae64c3714586bf3617f18",
    "programs.js": "12a64999f3da439d4fb20b2f62f8b6180b1b8cea2946b59a3eca8431bccc431e",
    "desktop.js": "f9973e916b2a5deca20a3cbcf56e7d06472ed4c23c36d985fabdf6bab782a6d6",
    "orbita.bin": "a3cb4340425deb531e25eeecec59eb342ca123433f673eae827e39a670db7f37",
    "build-programs.cjs": "2c3dd85e2cbcbd6791e4b1ede2b7bd4b4fd76b7859beaee92c6ec297c2b3cf8b",
    "README.md": "2c5a823c34e0275457765b544f2181c1cdc1a363397ef87d21c2b4c668d9df0b",
    "COPYING": "3972dc9744f6499f0f9b2dbf76696f2ae7ad8af9b23dde66d6af86c9dfb36986"
  },
  "original_development_transcript_preserved_exactly": true,
  "pre_integration_homepage_sha256": "92cd0285429c00ea1d01a3b581ac3cbb1bc8a2995eeb79e73ef910b4156a6010",
  "browser_verification": {
    "schema_version": 1,
    "date": "2026-10-13",
    "original_site_files_unchanged": 24,
    "authorized_homepage_changes": [
      "orao/index.html",
      "reference/orao/index.md"
    ],
    "archive_manifest_files_verified": 10,
    "original_runtime_function_references_unchanged": true,
    "file_picker_openings": 0,
    "browser": "Microsoft Edge / Playwright",
    "checks": [
      {
        "test": "Real mouse drag from list across iframe boundary; original ROM LMEM then LNK",
        "version": "0.2.0",
        "result": "passed"
      },
      {
        "test": "New Orao button loads original game revision without replacing first machine",
        "version": "0.1.0",
        "result": "passed"
      },
      {
        "test": "Drop over utility rejected",
        "result": "passed"
      },
      {
        "test": "Actual File drop matched to repository by SHA-256, then automatically loaded and started",
        "result": "passed"
      },
      {
        "test": "Damaged cassette rejected before changing a machine",
        "result": "passed"
      },
      {
        "test": "Icon, name and version only; details available on hover; popup never covers canvas",
        "result": "passed"
      },
      {
        "test": "Keyboard details and Escape dismissal",
        "result": "passed"
      },
      {
        "test": "Scrolled popup stays in shelf flow and preserves iframe dimensions",
        "result": "passed"
      },
      {
        "test": "390px viewport, no horizontal overflow",
        "result": "passed"
      },
      {
        "test": "Old library address redirects to homepage tape shelf",
        "result": "passed"
      }
    ],
    "errors": []
  },
  "interaction_verification": {
    "hover_keeps_emulation_running": true,
    "canvas_pixel_dimensions_unchanged": true,
    "native_canvas_pointer_handler_works": true,
    "popup_closes_on_canvas_click": true,
    "file_preview_details_work": true,
    "errors": []
  },
  "carousel_verification": {
    "status": "passed",
    "groupedTapes": 3,
    "recordings": 8,
    "riftfarerChoices": 5,
    "demoChoices": 2,
    "keyboardSelection": true,
    "selectedDetailsAndDownload": true,
    "riftfarerRealMouseDragAndRomLoad": true,
    "riftfarerProgramBytesCompared": 16896,
    "demo2RealMouseDragAndRomLoad": true,
    "nativeDemoPaddingAndAutostart": true,
    "panelsOutsideCanvas": true,
    "mobileNavigation": true,
    "noHorizontalPageOverflow": true,
    "futureGroupsInOneRow": 33,
    "originalRuntimeFunctionsUnchanged": true,
    "filePickerOpenings": 0,
    "errors": []
  },
  "tape_group_sizes": {
    "riftfarer-orao": 5,
    "manic-miner-nenad-mihailovic": 1,
    "pel-varazdin-demo": 2
  },
  "loader_script_unchanged": true,
  "all_tape_and_source_downloads_unchanged": true
}
