{
  "passed": true,
  "version": "0.18.0",
  "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
  "capturedFrom": "New rail split image is captured from the anonymously downloaded, SHA256 verified Windows v0.18.0 installer. Earlier images retain their own captured version and source. Generated models and isolated profiles only.",
  "release": {
    "status": "passed",
    "version": "0.18.0",
    "commit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
    "tag": "v0.18.0",
    "publishedAt": "2026-10-15T14:15:01Z",
    "anonymous": true,
    "assets": [
      {
        "name": "latest.yml",
        "size": 362,
        "sha256": "a90c77643e930752c6d217b73603b809d948e16718da26aa73fd014d8250f869",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/latest.yml"
      },
      {
        "name": "LICENSE",
        "size": 2398,
        "sha256": "f321b0d9d76912b99cf6692e6ba520be3fe41372215ab7c13c7223a6ffa8daa9",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/LICENSE"
      },
      {
        "name": "LumaStudioCAD-0.18.0-mac-arm64.dmg",
        "size": 166535594,
        "sha256": "221c237a55ec8c4260dec152d81e9657449e49af62367f6a3df18934ffea2771",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/LumaStudioCAD-0.18.0-mac-arm64.dmg"
      },
      {
        "name": "LumaStudioCAD-0.18.0-mac-arm64.zip",
        "size": 166619669,
        "sha256": "94c2b9128721af1a954093eb950eb04b76dcd14c7c48d1796e05500b4852f21f",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/LumaStudioCAD-0.18.0-mac-arm64.zip"
      },
      {
        "name": "LumaStudioCAD-0.18.0-win-x64.exe",
        "size": 136800137,
        "sha256": "0b7f0129a4042d0201044d0e3a055548330b87f4466403c24789cc1e2d41911b",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/LumaStudioCAD-0.18.0-win-x64.exe"
      },
      {
        "name": "LumaStudioCAD-0.18.0-win-x64.exe.blockmap",
        "size": 144760,
        "sha256": "9d311c21ae15a5e4747a0d927e02f89342be84feed56a973bcef1246cc4514d6",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/LumaStudioCAD-0.18.0-win-x64.exe.blockmap"
      },
      {
        "name": "SHA256SUMS.txt",
        "size": 740,
        "sha256": "8a3834237c9f200733716e4bda6a892a43cd1e7fa7d4b935bcd0d5ef51d686dd",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/SHA256SUMS.txt"
      },
      {
        "name": "THIRD_PARTY_LICENSES.txt",
        "size": 408960,
        "sha256": "7138fd83516f66cada62dc4a3184357b6e0e6010b11780c06893c41ac900d7ff",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/THIRD_PARTY_LICENSES.txt"
      },
      {
        "name": "THIRD_PARTY_NOTICES.md",
        "size": 12886,
        "sha256": "0165ff637c5876f38d71462acb8e3c81700bbb13a0e88dc4a289166dba61637c",
        "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.18.0/THIRD_PARTY_NOTICES.md"
      }
    ],
    "checks": [
      "Main and tag CI succeeded at the release commit",
      "Published assets match successful tagged CI binaries",
      "All nine assets downloaded anonymously and SHA256 verified"
    ]
  },
  "workflowChecks": [
    "extrude: native clipboard, Undo/Redo and text-input precedence",
    "revolve: native clipboard, Undo/Redo and text-input precedence",
    "sweep: native clipboard, Undo/Redo and text-input precedence",
    "3D route point native clipboard and history",
    "Invalid split drafts recover by slider, midpoint and native Undo/Redo with synchronized validity",
    "180/256 bed fit, preview, STL ZIP, source archive, native Undo/Redo and recut after reopening",
    "Support collisions block both first cuts and recuts; changing position preserves supports and native history",
    "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
    "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
    "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
    "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
    "Sweep calculation failure keeps controls, input and last valid reference; retry preserves native Undo/Redo",
    "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
    "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
    "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
    "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
    "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
    "Native Undo/Redo after committed repeat and plane-cut settings",
    "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
    "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
    "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
    "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
    "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
    "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
    "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
  ],
  "models": [
    {
      "name": "hole-block",
      "bounds": {
        "min": [
          -20,
          -15,
          0
        ],
        "max": [
          20,
          15,
          12
        ],
        "size": [
          40,
          30,
          12
        ]
      },
      "warnings": [],
      "volume": 11988.979072708105
    }
  ],
  "images": [
    {
      "path": "/assets/screenshots/01-dashboard.png",
      "sha256": "48ac05ec0a21d47ce6fd01f51dc44e953662afd2aaa4c9e23809deff1f86ae6e",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/02-box-dimensions.png",
      "sha256": "491c5c886b4d4b062875aa2e810a15bd90b68db37f33d622b9c0b9edb93217e6",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/03-hole.png",
      "sha256": "17d13ef1288514cdd28255ffa6655503b86d185a3825b3fd6504a0aa247b6bd9",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/04-group.png",
      "sha256": "5c55701ee2f283adc59f3378a5f76159fcde8858f2d0a43159f380efe8f92650",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/05-saved-design.png",
      "sha256": "7e37ad6d9773835f869f3ee064870e0d8ad91d078e1accbc39bfa68a4c4c44b2",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/06-context-menu.png",
      "sha256": "eb3b0e9441b7f89ca874d03639f33d98717fd2bcb205e7bf1993f46c6f6ad2e4",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/07-paste-preview.png",
      "sha256": "58028719f2bfc6e9af21b7996b899114072181d10efebee050e493d6cef8d3a7",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/08-plane-cut.png",
      "sha256": "dcf5bba2d7905dcde19946b99c03e153f4a11cfdf9105b0e2ec42bc8d24d2831",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/09-typescript.png",
      "sha256": "299faa9b84a8ccf6b31e66874ed17d377bb6aa15cac5e09e3839df184db83504",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/10-blocks.png",
      "sha256": "93e709ffb51bbf8330a972fe4daa8fe0a2f2d76fdbf8f13c24d922015c9e2959",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/11-library-save.png",
      "sha256": "9ab255577068021f8fe77525e86e34ada8bcba65fcdbfaa52d086b454255c18e",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/12-japanese-text.png",
      "sha256": "87bd9f5f35d7cc181fc54e8189ce90cf1966b697ba1578cd2004d922b637f8f3",
      "width": 2400,
      "height": 1500,
      "capturedVersion": "0.10.0"
    },
    {
      "path": "/assets/screenshots/13-sketch.png",
      "sha256": "eecf20bb9c67bb4e3a5fa665a6d5021c18b16a565152c5245fbbd78f0180502c",
      "width": 2400,
      "height": 1500,
      "capturedVersion": "0.10.0"
    },
    {
      "path": "/assets/screenshots/14-print-settings.png",
      "sha256": "72e559c80c6bc6114bfde002928839f9fcc5d0998dad7aa1700b691ebf776447",
      "width": 2400,
      "height": 1500,
      "capturedVersion": "0.10.0"
    },
    {
      "path": "/assets/screenshots/15-ai-settings.png",
      "sha256": "5d8382dd1a502ad590000d108f6681dbddea8bd7a5919fd320c7d9c2d58895f0",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.9.0"
    },
    {
      "path": "/assets/screenshots/16-revolve-ring.png",
      "sha256": "c8e5630fbf23cb5457d3874f7691248f22b07fbddac292ff424ec569cee3d738",
      "width": 2400,
      "height": 1500,
      "capturedVersion": "0.10.0"
    },
    {
      "path": "/assets/screenshots/17-print-requirements.png",
      "sha256": "729998adeb8a394b485bf08c75b5412a3d196d3c753e957fa5c3cb9ef00473c1",
      "width": 2400,
      "height": 1500,
      "capturedVersion": "0.10.0"
    },
    {
      "path": "/assets/screenshots/18-twist-angle.png",
      "sha256": "1b65e35112be99cde9a4b876efe98cefd53901217d3dae0a9b921e4ebd217f4e",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/19-stl-fallback.png",
      "sha256": "9bba7499d96d979756edfabbf3cd1589db9e37820ef6ea327e6c08260a7265ef",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/20-editing-controls.png",
      "sha256": "595d870e29a7a83ff8890a18ae269f3cd4514df17e94558e2bbfe3e6c13d18ed",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/21-hole-fit.png",
      "sha256": "989eaa9898f6003c34e8d3b623925e0d6f448eebb00e5ba085bd64955bff25b7",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/22-matching-hole.png",
      "sha256": "1d76685700c739b106c493bd47865357e34cf59f0bc52e770e8f1fce9cf0db40",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/23-recovery-points.png",
      "sha256": "8e3b3b9c98ab0114c884cd1c8fdaa71c044c2945cba69b7f03e5629e59387b84",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/24-oblique-cut.png",
      "sha256": "29c630b8222b5231a7648b4caa7ac1a0f282351fbfd18d4e5b7511526b79c4da",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/25-fullscreen-keyboard.png",
      "sha256": "f1c698c91671a819848b514951268e4a3199e8c7799ad343349d0b8ee32f7986",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/26-palette-zoom.png",
      "sha256": "6faaa003f83aa43182a2a7bfed6c5051de604c281d4d0b391d880b6e54453be0",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.18.0",
      "platform": "Windows x64",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only"
    },
    {
      "path": "/assets/screenshots/27-help-gigach.png",
      "sha256": "4d49b703b54cda955af446aefbe86316938ba4aa7b635d926e8836982a8ad095",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.14.0"
    },
    {
      "path": "/assets/screenshots/28-web-dashboard.png",
      "sha256": "f3d94f34e61827e66441e4269f440cadf16aad24e89cc4cfcfdaa370588f18a4",
      "width": 1440,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "web",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Local static Web build of the release commit served at /app/ and verified in Playwright; production deployment is verified separately"
    },
    {
      "path": "/assets/screenshots/29-web-announcements.png",
      "sha256": "f1c93854010abbf5d6a522f69591db0c1ea29561b04feab5f95c001edd68b2d7",
      "width": 1440,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "web",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Local static Web build of the release commit served at /app/ and verified in Playwright; production deployment is verified separately"
    },
    {
      "path": "/assets/screenshots/30-web-help-gigach.png",
      "sha256": "acd9ac9fe734a81c412b0cc42e41f7d290bea020b7858b3a9abc4046f328e057",
      "width": 1440,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "web",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Local static Web build of the release commit served at /app/ and verified in Playwright; production deployment is verified separately"
    },
    {
      "path": "/assets/screenshots/31-web-japanese-code.png",
      "sha256": "7b0247678d25b2e1ae747e226eb436c7b52f631b1393f399811a156c1ff2e96d",
      "width": 1440,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "web",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Local static Web build of the release commit served at /app/ and verified in Playwright; production deployment is verified separately"
    },
    {
      "path": "/assets/screenshots/32-initial-workplane.png",
      "sha256": "b71f53b5714269da9b02322b0f5dd39227af344a246d226dc13c0a3ef9bd1175",
      "width": 1920,
      "height": 1080,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/33-quad-views.png",
      "sha256": "d40e5c6a372632753dbbcef806c9b86ca21050cb881657242b00a383494e8f45",
      "width": 1920,
      "height": 1080,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/34-sweep-preview.png",
      "sha256": "fe67f0ca1403045e5a0bfa87a8c4b272fcff234e8440a6a3d2a9daddb801a82f",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/35-svg-import.png",
      "sha256": "7188db64e34ffc63480c3e27df8f386cedaee2e47998d94cd863d1c5e84df61e",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/36-cursor-four-views.png",
      "sha256": "293d123a3a2821daa889f601a5ed1a34285aab71c67e3821bcc6123a675630da",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/37-spatial-path.png",
      "sha256": "d408814b7d43aac833dcc6ef3aaced73b70975e0db0403a429ee53a746d60378",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/38-rail-parts.png",
      "sha256": "64b3dce17694fb46bc6424c204289e1b8805c7517bd12181cecadceb46a4c49d",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/39-workplane-trim.png",
      "sha256": "78a8008024c7625597509f241c7b43b8ae1ffb816e369ba3f7e6351936ab0c29",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/40-fillet.png",
      "sha256": "b2bdb24076b27c339f90eee4f0f02f1333fe23dad0a31c308c07ec9c11cb6752",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/41-shape-actions.png",
      "sha256": "1335c84b49f0701206f1fc4d5ba65d88a003de0ad2d3b224ddb0bcfa1e09347f",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/42-reference-rail.png",
      "sha256": "c7b61eee608ca5e84718dc7b1f41b6656cbf2508c48182c1e8547cb31cc7f9be",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/45-sweep-beginner.png",
      "sha256": "5d0f69b59bb825b628b61fd1eb8e2b836067b7324742a2981453e0936b441155",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/46-sweep-expanded.png",
      "sha256": "32b51d946e719427048dbc22485b031ae3ef57354318a86d76330854a5cdca7b",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/47-sketch-cursor-grid.png",
      "sha256": "7d80428e541598b75c35579da026a68db9400e23401a392b4a457aa5180a3734",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/43-rail-catalog.png",
      "sha256": "20155ad1c195927553ef4e59ba6027cb9af956f5262ff9334855a4bc89ac93b3",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/44-rail-catalog-curve.png",
      "sha256": "87a735b8bfbe1490390d79fc04956c0b2e04daa7330b55bbe47b758af0d71c88",
      "width": 1600,
      "height": 1000,
      "capturedVersion": "0.17.1",
      "platform": "Windows x64",
      "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only"
    },
    {
      "path": "/assets/screenshots/48-rail-joint-split.png",
      "sha256": "f7ceb2caa0b70cf1048ae4856ded9bc83f78c6a5e3ab45845ae57b3cdacae02c",
      "width": 1600,
      "height": 1100,
      "capturedVersion": "0.18.0",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "platform": "Windows x64",
      "capturedFrom": "Published installer downloaded anonymously and SHA256 verified; actual rail operations with an isolated profile"
    }
  ],
  "examples": [
    {
      "path": "/examples/hole-block.lumacad.json",
      "sha256": "fc4600379ed18d51214fba19f4539c9086139c7c766333f0851aaf08931f8f45",
      "verifiedVersion": "0.18.0",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows installer reopens the tutorial model and exports a closed 40 x 30 x 12 mm STL"
    },
    {
      "path": "/examples/hole-block.stl",
      "sha256": "453ed8cf50641644033bba7964bffc7193a451229ea6e7b25d0d8c02bc3405cc",
      "verifiedVersion": "0.18.0",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Published Windows installer reopens the tutorial model and exports a closed 40 x 30 x 12 mm STL"
    }
  ],
  "portrait": {
    "path": "/assets/ando2026.png",
    "sha256": "2e7c133af53f3a549a5ee42f38e63d8cd91794e9361c6c41026ae0c4af0d5354",
    "width": 1080,
    "height": 1080
  },
  "previousVerification": {
    "version": "0.17.1",
    "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
    "release": {
      "status": "passed",
      "version": "0.17.1",
      "commit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
      "tag": "v0.17.1",
      "publishedAt": "2026-10-15T08:03:24Z",
      "anonymous": true,
      "assets": [
        {
          "name": "LICENSE",
          "size": 2398,
          "sha256": "f321b0d9d76912b99cf6692e6ba520be3fe41372215ab7c13c7223a6ffa8daa9",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/LICENSE"
        },
        {
          "name": "LumaStudioCAD-0.17.1-mac-arm64.dmg",
          "size": 166541942,
          "sha256": "d414525b8027617188ec7306c9455c290f82dc85ea8c7ae7a425793952f76a3d",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/LumaStudioCAD-0.17.1-mac-arm64.dmg"
        },
        {
          "name": "LumaStudioCAD-0.17.1-mac-arm64.zip",
          "size": 166605911,
          "sha256": "b467cf1f8fc0ae1868a8f32d1fa0ea0f5c3b2c0d2ccc6dee83c30f6f08b3e4f3",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/LumaStudioCAD-0.17.1-mac-arm64.zip"
        },
        {
          "name": "LumaStudioCAD-0.17.1-win-x64.exe",
          "size": 136794171,
          "sha256": "d59b5170d29590cee3997ea507409ec75cbe55159906d80764478ad836323c50",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/LumaStudioCAD-0.17.1-win-x64.exe"
        },
        {
          "name": "LumaStudioCAD-0.17.1-win-x64.exe.blockmap",
          "size": 144551,
          "sha256": "8790ab3d9fc8737903823bcb1676ed32e27fd87ba1a6ce6202eadfaa260fe530",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/LumaStudioCAD-0.17.1-win-x64.exe.blockmap"
        },
        {
          "name": "SHA256SUMS.txt",
          "size": 740,
          "sha256": "097e3e4a40cae796332559ce05fdb472fa876deb6e8cc93e005640977cadb2b5",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/SHA256SUMS.txt"
        },
        {
          "name": "THIRD_PARTY_LICENSES.txt",
          "size": 408960,
          "sha256": "7138fd83516f66cada62dc4a3184357b6e0e6010b11780c06893c41ac900d7ff",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/THIRD_PARTY_LICENSES.txt"
        },
        {
          "name": "THIRD_PARTY_NOTICES.md",
          "size": 12886,
          "sha256": "0165ff637c5876f38d71462acb8e3c81700bbb13a0e88dc4a289166dba61637c",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/THIRD_PARTY_NOTICES.md"
        },
        {
          "name": "latest.yml",
          "size": 362,
          "sha256": "44c4276d8cfd8ce9e6595cee9f3d30f258bc4b0beff6a2d6833e1a89e75b5d81",
          "url": "https://github.com/altimix/lumastudio-cad-releases/releases/download/v0.17.1/latest.yml"
        }
      ],
      "checks": [
        "Main and tag release CI succeeded for the release commit",
        "Published installers match the successful CI artifacts",
        "Every published asset downloaded anonymously and SHA256 verified",
        "Application license and required third-party notices included"
      ]
    },
    "workflowChecks": [
      "Native drag placement, selected guide, arrows 0.1 mm / Shift 1 mm / Control 0.01 mm without snapping, and one-step Undo",
      "Native shape settings and saved editable bevel survive reopening into an empty design",
      "Native target fitting, 10.2 mm matching hole, source preservation, Undo/Redo, cancellation, and closed STL volume",
      "Native checkpoint preview and recovery into a separate design keep the original grouped design",
      "Native revolve starts in V selection and Alt changes the zoom tool to zoom out",
      "Escape and native window fullscreen exit discard drafts and preserve docking; numeric keyboard movement undoes once; property groups fold",
      "Native XYZ angle plane cut seals two parts, conserves volume and restores the source in one Undo; one main STL action",
      "Native shape palette remains reachable at 100/125/150/200/300 percent zoom without changing the saved model",
      "Initial horizontal X and enlarged workplane",
      "Z ruler visible in perspective and hidden in top view",
      "Four panes and one canvas",
      "First shape placement in front view at ground level",
      "Numeric draft survives pane hover",
      "Save model and full thumbnail in quad view",
      "Return to a single view",
      "Native save and reopening preserve quad-edited geometry",
      "Existing tutorial model reopens with both editable children and exports closed 40 x 30 x 12 mm STL",
      "No page errors",
      "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
      "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
      "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
      "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
      "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
      "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
      "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
      "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
      "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
      "Native Undo/Redo after committed repeat and plane-cut settings",
      "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
      "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
      "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
      "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
      "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
      "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
      "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
    ]
  },
  "notVerified": [
    "physical printer transfer and printing",
    "macOS user Gatekeeper first launch",
    "Windows UAC interaction",
    "paid AI inference with actual API credentials",
    "physical OS IME interaction (composition flags tested programmatically)",
    "physical rail dimensions, fit and vehicle running"
  ],
  "releaseCI": {
    "url": "https://github.com/altimix/lumastudio-cad/actions/runs/38740184877",
    "headSha": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
    "conclusion": "success",
    "attempt": 2,
    "artifacts": [
      {
        "name": "LumaStudioCAD-Windows",
        "id": 11979605400,
        "sha256": "e3872e59d6f1c75706a941dd546f801142e419c849e1c30da373a09c041ee4d0",
        "size": 136957106,
        "verification": "Authenticated CI artifact digest plus per-file comparison with the published Windows EXE, blockmap and latest.yml",
        "comparedAssets": [
          "LumaStudioCAD-0.18.0-win-x64.exe",
          "LumaStudioCAD-0.18.0-win-x64.exe.blockmap",
          "latest.yml"
        ]
      },
      {
        "name": "LumaStudioCAD-Mac",
        "id": 11976341780,
        "sha256": "c588f336e0fe7e0e7b7c9a1834e77269d3ab19230b3a458b6e7de678812aae49",
        "size": 332348982,
        "verification": "Authenticated CI artifact digest plus per-file comparison with the published Mac arm64 DMG and ZIP",
        "comparedAssets": [
          "LumaStudioCAD-0.18.0-mac-arm64.dmg",
          "LumaStudioCAD-0.18.0-mac-arm64.zip"
        ]
      }
    ],
    "initialWindowsFailure": {
      "reason": "Initial sweep preview remained calculating past the unchanged 30 second test limit",
      "evidence": "https://github.com/altimix/lumastudio-cad/actions/runs/38740184877/artifacts/11975118921",
      "localRapidReopenChecks": 12,
      "resolution": "One rerun of the failed Windows package job and dependent publication, same source and time limits"
    }
  },
  "desktopCapturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only",
  "web": {
    "passed": true,
    "version": "0.18.0",
    "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
    "capturedFrom": "Local static Web build of the release commit, served at /app/; production is verified separately",
    "checks": [
      "full dependency licenses and worker license manifest are deployed",
      "announcement focus stays in the dialog and returns to its dashboard trigger after refresh",
      "static administrator announcements display without posting APIs and modal shortcuts do not edit the model",
      "shape actions collapse, preserve the saved model, persist after reload and reopen",
      "browser fullscreen, numeric keyboard movement and Undo preserve the model; narrow Web palette stays inside the window",
      "standalone startup without local API, browser save and reload, closed 30 x 20 x 20 STL, unchanged private document title, desktop handoff and GIGAch Help",
      "independent browser has separate storage and imports the editable project without changing geometry",
      "Static Web spatial path, committed numeric Undo, split rail STL ZIP worker, bed bounds/topology, model Undo and saved XYZ reopen without local API",
      "Static Web fillet preview/numeric Undo, closed result and bounds, scene Undo/Redo and saved editable radius/source without local API",
      "Japanese TypeScript text uses /app/ font assets and exports closed STL; unavailable PC font preserves the previous geometry and its block font ID",
      "scheduled announcements switch at start/end boundaries without another network request",
      "Native browser curve clipboard, repeated paste history, joint split with both bed sizes, ZIP, save/reopen, support collision rejection and sweep error recovery"
    ],
    "backend": [],
    "errors": [],
    "build": {
      "format": "lumastudio-cad-web",
      "version": "0.18.0",
      "base": "/app/",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "sourceDirty": false,
      "analytics": {
        "provider": "Cloudflare Web Analytics",
        "enabled": true
      },
      "capabilities": [
        "modeling",
        "blocks",
        "typescript",
        "browser-save",
        "project-files",
        "stl",
        "noto-japanese-text"
      ],
      "licenses": "THIRD_PARTY_LICENSES.txt"
    },
    "verificationStage": "Local static build before deployment",
    "productionVerificationRecord": "https://github.com/altimix/lumastudio-cad/issues/124"
  },
  "quadViewport": {
    "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
    "version": "0.17.1",
    "platform": "win32",
    "capturedFrom": "Published Windows x64 v0.17.1 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only",
    "checkedAt": "2026-10-15T08:05:34.934Z",
    "example": {
      "bounds": {
        "min": [
          -20,
          -15,
          0
        ],
        "max": [
          20,
          15,
          12
        ],
        "size": [
          40,
          30,
          12
        ]
      },
      "warnings": [],
      "volume": 11988.979072708105
    },
    "checks": [
      "Initial horizontal X and enlarged workplane",
      "Z ruler visible in perspective and hidden in top view",
      "Four panes and one canvas",
      "First shape placement in front view at ground level",
      "Numeric draft survives pane hover",
      "Save model and full thumbnail in quad view",
      "Return to a single view",
      "Native save and reopening preserve quad-edited geometry",
      "Existing tutorial model reopens with both editable children and exports closed 40 x 30 x 12 mm STL",
      "No page errors"
    ]
  },
  "sweepAndVectorImport": {
    "passed": true,
    "version": "0.17.1",
    "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
    "platform": "Windows x64",
    "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only",
    "checks": [
      "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
      "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
      "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
      "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
      "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
      "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
      "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
      "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
      "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
      "Native Undo/Redo after committed repeat and plane-cut settings",
      "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
      "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
      "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
      "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
      "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
      "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
      "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
    ],
    "errors": []
  },
  "packagedFeatureChecks": [
    {
      "platform": "win32",
      "arch": "x64",
      "version": "0.18.0",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Completed application built and operated in tagged Release CI, matched to the published installer bytes",
      "workflow": "https://github.com/altimix/lumastudio-cad/actions/runs/38740184877",
      "checks": [
        "extrude: native clipboard, Undo/Redo and text-input precedence",
        "revolve: native clipboard, Undo/Redo and text-input precedence",
        "sweep: native clipboard, Undo/Redo and text-input precedence",
        "3D route point native clipboard and history",
        "Invalid split drafts recover by slider, midpoint and native Undo/Redo with synchronized validity",
        "180/256 bed fit, preview, STL ZIP, source archive, native Undo/Redo and recut after reopening",
        "Support collisions block both first cuts and recuts; changing position preserves supports and native history",
        "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
        "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
        "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
        "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
        "Sweep calculation failure keeps controls, input and last valid reference; retry preserves native Undo/Redo",
        "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
        "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
        "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
        "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
        "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
        "Native Undo/Redo after committed repeat and plane-cut settings",
        "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
        "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
        "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
        "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
        "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
        "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
        "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
      ],
      "errors": []
    },
    {
      "platform": "darwin",
      "arch": "arm64",
      "version": "0.18.0",
      "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
      "capturedFrom": "Completed application built and operated in tagged Release CI, matched to the published installer bytes",
      "workflow": "https://github.com/altimix/lumastudio-cad/actions/runs/38740184877",
      "checks": [
        "extrude: native clipboard, Undo/Redo and text-input precedence",
        "revolve: native clipboard, Undo/Redo and text-input precedence",
        "sweep: native clipboard, Undo/Redo and text-input precedence",
        "3D route point native clipboard and history",
        "Invalid split drafts recover by slider, midpoint and native Undo/Redo with synchronized validity",
        "180/256 bed fit, preview, STL ZIP, source archive, native Undo/Redo and recut after reopening",
        "Support collisions block both first cuts and recuts; changing position preserves supports and native history",
        "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
        "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
        "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
        "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
        "Sweep calculation failure keeps controls, input and last valid reference; retry preserves native Undo/Redo",
        "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
        "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
        "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
        "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
        "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
        "Native Undo/Redo after committed repeat and plane-cut settings",
        "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
        "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
        "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
        "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
        "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
        "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
        "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
      ],
      "errors": []
    }
  ],
  "spatialSweepDevelopment": {
    "sourceCommit": "8afdfe9eb0a56a035be0bba9140af9a5df387df9",
    "version": "0.17.0",
    "localBrowserTests": 14,
    "passed": true,
    "physicalFit": "unverified",
    "checks": [
      "Four orthographic/oblique path views, numeric and gesture Undo, hidden-axis preservation",
      "Saved XYZ and Bezier handles, reopening and independent cancellation",
      "Rail dimensions, test coupons, split part ZIP, closed meshes and bed bounds",
      "Blockly/TypeScript source execution and workplane trim Undo",
      "Header close alignment and narrow viewport"
    ]
  },
  "spatialSweep": {
    "passed": true,
    "version": "0.17.1",
    "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
    "platform": "Windows x64",
    "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only",
    "checks": [
      "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
      "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
      "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
      "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
      "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
      "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
      "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
      "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
      "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
      "Native Undo/Redo after committed repeat and plane-cut settings",
      "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
      "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
      "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
      "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
      "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
      "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
      "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
    ],
    "errors": []
  },
  "fillet": {
    "passed": true,
    "version": "0.17.1",
    "sourceCommit": "0b839b0b78bdccdc27162e8866f13eb2f650d73d",
    "platform": "Windows x64",
    "capturedFrom": "Published Windows x64 v0.17.1 installer extracted without changing application code; isolated profiles and generated shapes only",
    "checks": [
      "Beginner sweep: three-step guide, native Undo restores a starter in one step, detail preference preserves geometry history",
      "Invalid numeric draft Undo/Redo restores the input text, validation and generated preview together",
      "Shape actions collapse and reopen without changing the saved model or native Undo/Redo history",
      "Sweep hollow curve, preview, numeric/native-menu Undo/Redo, scene Undo/Redo, closed STL and volume",
      "Native file reopen, invalid geometry cancellation, retained source and editable 60 x 12 x 12 mm sweep",
      "Extrusion height and drawing grid join native-menu Undo while focused; live sketch XY cursor readout",
      "Native menu changes only the foremost nested import settings and preserves the parent sketch history",
      "Native Undo cancels a vector scale drag without closing the dialog or losing settings/Undo/Redo",
      "SVG hole profile, dimensions/volume, native Undo/Redo; DXF unit preview and cancellation; persistent cursor coordinates in four views",
      "Native Undo/Redo after committed repeat and plane-cut settings",
      "Spatial XYZ/endpoint axis arrows/native Undo, maximized four views/Escape restore, rail dimensions/native Undo, split STL ZIP dimensions/topology, semantic save/reopen and scene Undo/Redo",
      "Initial planar-to-spatial conversion rests on Z=0; four millimetre workplanes, independent zoom and unchanged coordinate/history",
      "STL reference thin rail and slotted tapered connectors: native dimension Undo, closed 169 x 38 x 8 mm grounded mesh, saved source and re-edit",
      "Rail catalog26: expanded card area, half straight, native Undo/Redo, save/reopen/re-edit, right curve profile switching, edited 60/120 degree arcs, R250 rising curve and 0.05mm-gap curve/slope split STL ZIP",
      "Workplane trim blocks native project navigation, file open, reload, close and background Undo; capped apply and Undo preserve untouched shapes",
      "Fillet radius native Undo/Redo, protected dialog navigation, closed geometry and unchanged bounds, untouched parts, scene Undo/Redo, saved source re-edit",
      "Native menu prioritizes focused Blockly edits after renaming; title-only history remains available outside the editor"
    ],
    "errors": [],
    "supported": [
      "box edges",
      "cylinder rims",
      "closed convex polyhedra"
    ],
    "unsupported": [
      "concave solids",
      "holes",
      "individual arbitrary edges"
    ]
  },
  "manualRailSplit": {
    "passed": true,
    "version": "0.18.0",
    "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
    "platform": "Windows x64",
    "capturedFrom": "Published installer downloaded anonymously and SHA256 verified; actual rail operations with an isolated profile",
    "checks": [
      "Invalid split drafts recover by slider, midpoint and native Undo/Redo with synchronized validity",
      "180/256 bed fit, preview, STL ZIP, source archive, native Undo/Redo and recut after reopening",
      "Support collisions block both first cuts and recuts; changing position preserves supports and native history"
    ],
    "errors": [],
    "clipboardVerification": "Native OS clipboard is verified in independent Windows and Mac tagged CI, not in this local run"
  },
  "publishedWindowsChecks": {
    "version": "0.18.0",
    "sourceCommit": "3c059216708a7bda1ff4b4801f2a05ba81206f36",
    "capturedFrom": "Published Windows x64 v0.18.0 installer, downloaded anonymously and SHA256 verified; isolated profile and generated models only",
    "checks": [
      "Native drag placement, selected guide, arrows 0.1 mm / Shift 1 mm / Control 0.01 mm without snapping, and one-step Undo",
      "Native shape settings and saved editable bevel survive reopening into an empty design",
      "Native target fitting, 10.2 mm matching hole, source preservation, Undo/Redo, cancellation, and closed STL volume",
      "Native checkpoint preview and recovery into a separate design keep the original grouped design",
      "Native revolve starts in V selection and Alt changes the zoom tool to zoom out",
      "Escape and native window fullscreen exit discard drafts and preserve docking; numeric keyboard movement undoes once; property groups fold",
      "Native XYZ angle plane cut seals two parts, conserves volume and restores the source in one Undo; one main STL action",
      "Native shape palette remains reachable at 100/125/150/200/300 percent zoom without changing the saved model",
      "Initial horizontal X and enlarged workplane",
      "Z ruler visible in perspective and hidden in top view",
      "Four panes and one canvas",
      "First shape placement in front view at ground level",
      "Numeric draft survives pane hover",
      "Save model and full thumbnail in quad view",
      "Return to a single view",
      "Native save and reopening preserve quad-edited geometry",
      "Existing tutorial model reopens with both editable children and exports closed 40 x 30 x 12 mm STL",
      "No page errors",
      "Invalid split drafts recover by slider, midpoint and native Undo/Redo with synchronized validity",
      "180/256 bed fit, preview, STL ZIP, source archive, native Undo/Redo and recut after reopening",
      "Support collisions block both first cuts and recuts; changing position preserves supports and native history"
    ]
  }
}
