{
  "schema_version": 1,
  "reviewed_date": "2026-10-27",
  "quest3": {
    "test_date": "2026-10-26",
    "evidence": "user_executed_device_test",
    "source_report_sha256": "3f538577399ddb5fdcdf88447869fb71507c53a3d9188f777289200a12ca032e",
    "tested_source_commit": "6ceb388728408a2cfa879234eea5b1e1f673fefe",
    "tested_package_release": 15,
    "quest_browser_model_ids": [
      "JOINERY_022",
      "JOINERY_003",
      "JOINERY_044",
      "JOINERY_068"
    ],
    "quest_browser_states": 46,
    "checks": [
      {
        "id": "Q_START",
        "title": "Website und Katalog auf der Quest öffnen",
        "status": "bestanden",
        "observed": "Läuft einwandfrei, exakt wie am PC",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_INPUT",
        "title": "Bedienung mit Controllern, optional Händen",
        "status": "bestanden",
        "observed": "geforderte Anwendungen funktionieren, bis auf Zoomen (könnte aber am Funktionsumfang der Quest liegen, nicht an der Website)",
        "reviewed_status": "bestanden_mit_einschraenkung"
      },
      {
        "id": "Q_JOINERY_022",
        "title": "JOINERY_022 · Browsermodell und vollständige Bauanleitung",
        "status": "bestanden",
        "observed": "Funktioniert, auch vermutete Problempunkte",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_JOINERY_003",
        "title": "JOINERY_003 · Browsermodell und vollständige Bauanleitung",
        "status": "bestanden",
        "observed": "funktioniert",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_JOINERY_044",
        "title": "JOINERY_044 · Browsermodell und vollständige Bauanleitung",
        "status": "bestanden",
        "observed": "Verschiebt richtig, passt",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_JOINERY_068",
        "title": "JOINERY_068 · Browsermodell und vollständige Bauanleitung",
        "status": "bestanden",
        "observed": "passt",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_DOWNLOAD",
        "title": "Echte Dateien auf dem Headset herunterladen",
        "status": "bestanden",
        "observed": "Downloads funktionieren. Schritte werden richtig im Raum dargestellt",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_IMPORT",
        "title": "Räumlicher GLB-Import ohne Zusatzinstallation",
        "status": "bestanden",
        "observed": "modell passt. Kann von allen Seiten betrachtet und beliebig gezoomt werden",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_SCALE",
        "title": "1:1-Maßstab kontrollieren",
        "status": "bestanden",
        "observed": "Größen stimmen nach dem umstellen auf 100%.\nNach Import werden die dateien immer unterschiedlich skaliert, stimmen aber nach dem anpassen auf 100%",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_SPATIAL",
        "title": "Weitere räumliche Dateien öffnen",
        "status": "bestanden",
        "observed": "teile können einzeln verschoben werden",
        "reviewed_status": "bestanden"
      },
      {
        "id": "Q_STABILITY",
        "title": "Lesbarkeit und Laufverhalten",
        "status": "bestanden",
        "observed": "Modelle laden optimal",
        "reviewed_status": "bestanden"
      }
    ],
    "assessment": {
      "passed": 10,
      "passed_with_limitation": 1,
      "failed": 0
    },
    "spatial_scope": "JOINERY_022-Import; weitere Baugruppe, Explosion, Einzelteil und Fertigungszustände laut Bericht. Nicht jede zusätzlich räumlich geprüfte Datei ist einzeln benannt.",
    "scale": "Originalmaß bei 100 % bestätigt. Automatische Einpassung im externen Betrachter verändert die Anzeigegröße.",
    "zoom_follow_up": {
      "reported_problem": "Gestenzoom im Website-Viewer funktionierte auf der Quest nicht; räumlicher Zoom im externen Betrachter funktionierte.",
      "change": "Explizite Schaltflächen zum Vergrößern und Verkleinern im Website-Viewer.",
      "headset_retest": "passed",
      "test_date_reported": "2026-10-27",
      "evidence": "user_confirmation_in_chat",
      "confirmation": "Ich habe die offenen Punkte auf der Meta Quest 3 geprüft, funktioniert alles",
      "checks": [
        {
          "id": "zoom_in_button",
          "title": "+ vergrößert das Modell",
          "status": "bestanden"
        },
        {
          "id": "zoom_out_button",
          "title": "− verkleinert das Modell",
          "status": "bestanden"
        },
        {
          "id": "reset_view_button",
          "title": "↺ Ansicht setzt die Ansicht zurück",
          "status": "bestanden"
        }
      ],
      "source_report_file": "quest-controls-retest.json",
      "source_report_sha256": "7de1cc56d46046ec3bd09cb7935bed8e73b2a7074b1948d37d8f334e45107b8f",
      "reported_model_id": null,
      "reported_input_method": null,
      "limits": "Modell-ID und Eingabemethode wurden beim Nachtest nicht erneut genannt. Keine automatische Headset-Messung; keine Behauptung, alle 69 Modelle oder Gesten erneut getestet zu haben."
    },
    "limits": "Erstbericht: vier Browser-Modellproben und 46 Zustände, kein Einzel-Gerätetest aller 69 Modelle oder 801 Zustände. Nachtest vom 27. Oktober bestätigt die drei nachträglich ergänzten Bedienelemente als funktionsfähig; Modell-ID und Eingabemethode dabei nicht erneut angegeben. Kein eigener immersiver WebXR-Modus im Katalog. Keine Werkstattprüfung."
  },
  "rhino_desktop": {
    "status": "passed_sample",
    "test_date": "2026-10-27",
    "evidence": "user_executed_device_test",
    "environment": {
      "software_version": "Rhino 8",
      "system": "Windows 11",
      "input": "Maus und Tastatur"
    },
    "source_report_sha256": "0fa6d707f3dddaea109b8753577bf02901b933407d7ea059956487df8c3f72a5",
    "source_report_file": "rhino-test-report.json",
    "tested_source_commit": "6ceb388728408a2cfa879234eea5b1e1f673fefe",
    "tested_package_release": 15,
    "rhino_native_model_ids": [
      "JOINERY_022",
      "JOINERY_003",
      "JOINERY_044",
      "JOINERY_068"
    ],
    "checks": [
      {
        "id": "JOINERY_022_3DM",
        "title": "JOINERY_022 · 3DM öffnen und prüfen",
        "expected": "2 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 300 × 60 × 60 mm; Gesamtvolumen etwa 1 080 000 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "passt"
      },
      {
        "id": "JOINERY_022_STEP",
        "title": "JOINERY_022 · STEP öffnen und prüfen",
        "expected": "2 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 300 × 60 × 60 mm; Gesamtvolumen etwa 1 080 000 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "In STEP-Datei ein Block, der aber mit dem Befehl Block zerlegen in die richtigen Teile zerlegt wird"
      },
      {
        "id": "JOINERY_003_3DM",
        "title": "JOINERY_003 · 3DM öffnen und prüfen",
        "expected": "4 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 480 × 60 × 60 mm; Gesamtvolumen etwa 1 728 000 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "passt"
      },
      {
        "id": "JOINERY_003_STEP",
        "title": "JOINERY_003 · STEP öffnen und prüfen",
        "expected": "4 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 480 × 60 × 60 mm; Gesamtvolumen etwa 1 728 000 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "In STEP-Datei ein Block, der aber mit dem Befehl Block zerlegen in die richtigen Teile zerlegt wird"
      },
      {
        "id": "JOINERY_044_3DM",
        "title": "JOINERY_044 · 3DM öffnen und prüfen",
        "expected": "2 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 300 × 210 × 60 mm; Gesamtvolumen etwa 1 603 756.8 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "passt"
      },
      {
        "id": "JOINERY_044_STEP",
        "title": "JOINERY_044 · STEP öffnen und prüfen",
        "expected": "2 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 300 × 210 × 60 mm; Gesamtvolumen etwa 1 603 756.8 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "In STEP-Datei ein Block, der aber mit dem Befehl Block zerlegen in die richtigen Teile zerlegt wird"
      },
      {
        "id": "JOINERY_068_3DM",
        "title": "JOINERY_068 · 3DM öffnen und prüfen",
        "expected": "2 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 300 × 300 × 108 mm; Gesamtvolumen etwa 2 116 799.52 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "passt"
      },
      {
        "id": "JOINERY_068_STEP",
        "title": "JOINERY_068 · STEP öffnen und prüfen",
        "expected": "2 getrennte CAD-Körper; mm; Außenmaße X/Y/Z 300 × 300 × 108 mm; Gesamtvolumen etwa 2 116 799.52 mm³. Check gültig, keine offenen oder nichtmannigfaltigen Kanten. Bei STEP Körper innerhalb möglicher Blöcke zählen.",
        "status": "bestanden",
        "observed": "In STEP-Datei ein Block, der aber mit dem Befehl Block zerlegen in die richtigen Teile zerlegt wird"
      },
      {
        "id": "R_EDIT",
        "title": "Einzelteile und Bearbeitbarkeit",
        "expected": "JOINERY_022 Part_A und Part_B separat öffnen; Objekttyp als Brep/geschlossene Polysurface prüfen. Ein Teil verschieben, rückgängig machen; in einer Kopie eine Fläche auswählen/extrahieren. Kein reines Render-Mesh.",
        "status": "bestanden",
        "observed": "Modell wie gewünscht"
      },
      {
        "id": "R_STEPS",
        "title": "Drei echte Fertigungszustände vergleichen",
        "expected": "JOINERY_022 Step_01, Step_04, Step_07: 1 216 800 → 1 148 400 → 1 080 000 mm³. Rohlinge, ausgestemmte Nut und fertige Einzelteile müssen sichtbar verschieden sein.",
        "status": "bestanden",
        "observed": "Einzelteile passen, Volumen ebenfalls"
      },
      {
        "id": "R_EXPLODE",
        "title": "Explosion mit Keilen",
        "expected": "JOINERY_003 Exploded: vier getrennte geschlossene Körper; Gesamtvolumen 1 728 000 mm³, Teile in auseinandergezogenen Positionen.",
        "status": "bestanden",
        "observed": "passt"
      },
      {
        "id": "R_SAVE",
        "title": "Speichern und erneut öffnen",
        "expected": "JOINERY_022 Assembly als neue Datei in Rueckgabe speichern, schließen, erneut öffnen und Check wiederholen. Originale unverändert lassen; gespeicherte Kopie und Screenshot zurückgeben.",
        "status": "bestanden",
        "observed": "funktioniert"
      },
      {
        "id": "R_BATCH",
        "title": "Optionaler nativer Gesamtprüflauf",
        "expected": "Rhino_Nativpruefung.py liest 150 CAD-Dateien aus allen 69 Verbindungen. Nur wenn ausgeführt: entstandenen Nativbericht aus Rueckgabe beilegen. Skript hier nicht in Rhino ausgeführt; bei einem Skriptfehler Fehlermeldung mitgeben.",
        "status": "nicht_geprueft",
        "observed": ""
      }
    ],
    "assessment": {
      "passed": 12,
      "required_passed": 12,
      "required_total": 12,
      "not_checked": 1,
      "failed": 0
    },
    "current_cad_match": {
      "package_files_identical": 150,
      "method": "SHA-256 of every packaged 3DM/STEP compared with current public CAD files.",
      "evidence": "rhino-file-match.json"
    },
    "step_import_note": "Rhino 8 imports the tested STEP assemblies as blocks; the reported block-explode operation exposes the correct separate CAD bodies.",
    "limits": "Four-model user-reported sample in Rhino 8 on Windows 11. Optional native batch R_BATCH not executed. No screenshots or resaved Rhino file attached. No independent native import of all 69 models or 1110 3DM files is claimed."
  },
  "site_url": "https://joinery-atlas.grittydace4.chatgpt.site"
}
